すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:画像編集 — Wan 2.7/2.6/2.5

最終更新日:Apr 02, 2026

Wan 画像編集モデルシリーズは、マルチイメージ入力および出力をサポートしています。テキストによる指示を用いて、画像編集、マルチイメージ融合、被写体の特徴保持、オブジェクト検出およびセグメンテーションなどのタスクを実行できます。

クイックスタート

この例では、wan2.7-image-pro を使用して、2 枚の入力画像とテキストプロンプトから編集済み画像を生成する方法を説明します。

プロンプト:画像 2 のグラフィティを画像 1 の車にスプレーする

入力画像 1

入力画像 2

出力画像(wan2.7-image-pro)

umbrella

input2

1774509357_902b1408-2026-03-30-16-12-31

API 呼び出しを行う前に、API キーを取得し、API キーを環境変数としてエクスポートしてください。SDK を使用して呼び出す場合は、DashScope SDK をインストールしてください。

同期呼び出し

重要

DashScope Python SDK のバージョンが 1.25.15 以降であり、DashScope Java SDK のバージョンが 2.22.13 以降であることを確認してください。

Python

リクエスト例

import os
import dashscope
from dashscope.aigc.image_generation import ImageGeneration
from dashscope.api_entities.dashscope_response import Message

# 以下はシンガポールリージョンの base_url です。リージョンごとに base_url が異なります。
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

# 環境変数を設定していない場合は、次の行を Model Studio API キーで置き換えてください:api_key="sk-xxx"
# API キーはリージョンごとに異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
api_key = os.getenv("DASHSCOPE_API_KEY")

message = Message(
    role="user",
    # ローカルファイルもサポート(例: "image": "file://car.png")
    content=[
        {
            "text": "画像 2 のグラフィティを画像 1 の車にスプレーする"
        },
        {
            "image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"
        },
        {
            "image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp"
        }
    ]
)
print("----同期呼び出し中、しばらくお待ちください----")
rsp = ImageGeneration.call(
        model='wan2.7-image-pro',
        api_key=api_key,
        messages=[message],
        watermark=False,
        n=1,
        size="2K"
    )

print(rsp)

応答例

URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "status_code": 200,
    "request_id": "81d868c6-6ce1-92d8-a90d-d2ee71xxxxxx",
    "code": "",
    "message": "",
    "output": {
        "text": null,
        "finish_reason": null,
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxxxxx.png?Expires=xxxxxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "audio": null,
        "finished": true
    },
    "usage": {
        "input_tokens": 18790,
        "output_tokens": 2,
        "characters": 0,
        "image_count": 1,
        "size": "2985*1405",
        "total_tokens": 18792
    }
}

Java

リクエスト例

import com.alibaba.dashscope.aigc.imagegeneration.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

import java.util.Arrays;
import java.util.Collections;

/**
 * wan2.7-image-pro 画像編集 — 同期呼び出しの例
 */
public class Main {

    static {
        // これはシンガポールリージョンの URL です。base_url はリージョンごとに異なります。
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
    }

    // 環境変数を設定していない場合は、次の行を Model Studio API キーで置き換えてください:apiKey="sk-xxx"
    // API キーはリージョンごとに異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    public static void basicCall() throws ApiException, NoApiKeyException, UploadFileException {
        // マルチイメージ入力メッセージを構築
        ImageGenerationMessage message = ImageGenerationMessage.builder()
                .role("user")
                .content(Arrays.asList(
                        // マルチイメージ入力をサポート。複数の参照画像を指定可能。
                        Collections.singletonMap("text", "画像 2 のグラフィティを画像 1 の車にスプレーする"),
                        Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"),
                        Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp")
                )).build();

        ImageGenerationParam param = ImageGenerationParam.builder()
                .apiKey(apiKey)
                .model("wan2.7-image-pro")
                .messages(Collections.singletonList(message))
                .n(1)
                .size("2K")
                .build();

        ImageGeneration imageGeneration = new ImageGeneration();
        ImageGenerationResult result = null;
        try {
            System.out.println("---画像編集の同期呼び出し中、しばらくお待ちください----");
            result = imageGeneration.call(param);
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            throw new RuntimeException(e.getMessage());
        }
        System.out.println(JsonUtils.toJson(result));
    }

    public static void main(String[] args) {
        try {
            basicCall();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
    }
}

応答例

URL は 24 時間有効です。速やかに保存してください。
{
    "requestId": "1bf6173a-e8de-9f75-94d3-5e618f875xxx",
    "usage": {
        "input_tokens": 18790,
        "output_tokens": 2,
        "total_tokens": 18792,
        "image_count": 1,
        "size": "2985*1405"
    },
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxxxxx.png?Expires=xxxxxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "finished": true
    },
    "status_code": 200,
    "code": "",
    "message": ""
}

curl

リクエスト例
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "model": "wan2.7-image-pro",
    "input": {
        "messages": [
            {
                "role": "user",
                "content": [
                    {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"},
                    {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp"},
                    {"text": "画像 2 のグラフィティを画像 1 の車にスプレーする"}
                ]
            }
        ]
    },
    "parameters": {
        "size": "2K",
        "n": 1,
        "watermark": false,
        "thinking_mode": true
    }
}'
応答例
{
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "content": [
                        {
                            "image": "https://dashscope-xxx.oss-xxx.aliyuncs.com/xxx.png?Expires=xxx",
                            "type": "image"
                        }
                    ],
                    "role": "assistant"
                }
            }
        ],
        "finished": true
    },
    "usage": {
        "image_count": 1,
        "input_tokens": 10867,
        "output_tokens": 2,
        "size": "1488*704",
        "total_tokens": 10869
    },
    "request_id": "71dfc3c6-f796-9972-97e4-bc4efc4faxxx"
}

非同期呼び出し

重要

DashScope Python SDK のバージョンが 1.25.15 以降であり、DashScope Java SDK のバージョンが 2.22.13 以降であることを確認してください。

Python

リクエスト例

import os
import dashscope
from dashscope.aigc.image_generation import ImageGeneration
from dashscope.api_entities.dashscope_response import Message
from http import HTTPStatus

# 以下はシンガポールリージョンの base_url です。リージョンごとに base_url が異なります。
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

# 環境変数を設定していない場合は、次の行を Model Studio API キーで置き換えてください:api_key="sk-xxx"
# API キーはリージョンごとに異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
api_key = os.getenv("DASHSCOPE_API_KEY")

# 非同期タスクを作成
def create_async_task():
    print("非同期タスクを作成中...")
    message = Message(
        role="user",
        content=[
            {'text': '画像 2 のグラフィティを画像 1 の車にスプレーする'},
            {'image': 'https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp'},
            {'image': 'https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp'}
        ]
    )
    response = ImageGeneration.async_call(
        model="wan2.7-image-pro",
        api_key=api_key,
        messages=[message],
        watermark=False,
        n=1,
        size="2K"
    )
    
    if response.status_code == 200:
        print("タスクが正常に作成されました:", response)
        return response  # タスク ID を返す
    else:
        raise Exception(f"タスクの作成に失敗しました:{response.code} - {response.message}")

# タスクの完了を待機
def wait_for_completion(task_response):
    print("タスクの完了を待機中...")
    status = ImageGeneration.wait(task=task_response, api_key=api_key)
    
    if status.output.task_status == "SUCCEEDED":
        print("タスクが成功しました!")
        print("応答:", status)
    else:
        raise Exception(f"タスクが失敗しました(ステータス:{status.output.task_status})")

# 非同期タスクのステータスを取得
def fetch_task_status(task):
    print("タスクステータスを取得中...")
    status = ImageGeneration.fetch(task=task, api_key=api_key)
    
    if status.status_code == HTTPStatus.OK:
        print("タスクステータス:", status.output.task_status)
        print("応答の詳細:", status)
    else:
        print(f"ステータスの取得に失敗しました:{status.code} - {status.message}")

# 非同期タスクをキャンセル
def cancel_task(task):
    print("タスクをキャンセル中...")
    response = ImageGeneration.cancel(task=task, api_key=api_key)
    
    if response.status_code == HTTPStatus.OK:
        print("タスクが正常にキャンセルされました:", response.output.task_status)
    else:
        print(f"タスクのキャンセルに失敗しました:{response.code} - {response.message}")

# メイン実行フロー
if __name__ == "__main__":
    task = create_async_task()
    wait_for_completion(task)

応答例

1. タスク作成時の応答例

{
    "status_code": 200,
    "request_id": "4fb3050f-de57-4a24-84ff-e37ee5xxxxxx",
    "code": "",
    "message": "",
    "output": {
        "text": null,
        "finish_reason": null,
        "choices": null,
        "audio": null,
        "task_id": "127ec645-118f-4884-955d-0eba8dxxxxxx",
        "task_status": "PENDING"
    },
    "usage": {
        "input_tokens": 0,
        "output_tokens": 0,
        "characters": 0
    }
}

2. タスク結果照会時の応答例

URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "status_code": 200,
    "request_id": "3b99aae5-d26f-9059-8dd0-ee9ca4804xxx",
    "code": null,
    "message": "",
    "output": {
        "text": null,
        "finish_reason": null,
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxxxxx.png?Expires=xxxxxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "audio": null,
        "task_id": "127ec645-118f-4884-955d-0eba8dxxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2026-03-31 22:58:47.646",
        "scheduled_time": "2026-03-31 22:58:47.683",
        "end_time": "2026-03-31 22:58:59.642",
        "finished": true
    },
    "usage": {
        "input_tokens": 18711,
        "output_tokens": 2,
        "characters": 0,
        "size": "2985*1405",
        "total_tokens": 18713,
        "image_count": 1
    }
}

Java

リクエスト例

import com.alibaba.dashscope.aigc.imagegeneration.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

import java.util.Arrays;
import java.util.Collections;

/**
 * wan2.7-image-pro 画像編集 — 非同期呼び出しの例
 */
public class Main {

    static {
        // これはシンガポールリージョンの URL です。base_url はリージョンごとに異なります。
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
    }

    // 環境変数を設定していない場合は、次の行を Model Studio API キーで置き換えてください:apiKey="sk-xxx"
    // API キーはリージョンごとに異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    public static void asyncCall() throws ApiException, NoApiKeyException, UploadFileException {
        // マルチイメージ入力メッセージを構築
        ImageGenerationMessage message = ImageGenerationMessage.builder()
                .role("user")
                .content(Arrays.asList(
                        // マルチイメージ入力をサポート。複数の参照画像を指定可能。
                        Collections.singletonMap("text", "画像 2 のグラフィティを画像 1 の車にスプレーする"),
                        Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"),
                        Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp")
                )).build();

        ImageGenerationParam param = ImageGenerationParam.builder()
                .apiKey(apiKey)
                .model("wan2.7-image-pro")
                .n(1)
                .size("2K")
                .messages(Arrays.asList(message))
                .build();

        ImageGeneration imageGeneration = new ImageGeneration();
        ImageGenerationResult result = null;
        try {
            System.out.println("---画像編集の非同期呼び出し中、タスクを作成中----");
            result = imageGeneration.asyncCall(param);
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            throw new RuntimeException(e.getMessage());
        }
        System.out.println("タスク作成結果:");
        System.out.println(JsonUtils.toJson(result));

        String taskId = result.getOutput().getTaskId();
        // タスクの完了を待機
        waitTask(taskId);
    }

    public static void waitTask(String taskId) throws ApiException, NoApiKeyException {
        ImageGeneration imageGeneration = new ImageGeneration();
        System.out.println("\n---タスクの完了を待機中----");
        ImageGenerationResult result = imageGeneration.wait(taskId, apiKey);
        System.out.println("タスク完了結果:");
        System.out.println(JsonUtils.toJson(result));
    }

    public static void main(String[] args) {
        try {
            asyncCall();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
    }
}

応答例

1. タスク作成時の応答例

{
    "requestId": "ccf4b2f4-bf30-9e13-9461-3a28c6a7bxxx",
    "output": {
        "task_id": "8811b4a4-00ac-4aa2-a2fd-017d3b90cxxx",
        "task_status": "PENDING"
    },
    "status_code": 200,
    "code": "",
    "message": ""
}

2. タスク結果照会時の応答例

URL は 24 時間有効です。速やかに保存してください。
{
    "requestId": "60a08540-f1c1-9e76-8cd3-d5949db8cxxx",
    "usage": {
        "input_tokens": 18711,
        "output_tokens": 2,
        "total_tokens": 18713,
        "image_count": 1,
        "size": "2985*1405"
    },
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxxxxx.png?Expires=xxxxxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "task_id": "8811b4a4-00ac-4aa2-a2fd-017d3b90cxxx",
        "task_status": "SUCCEEDED",
        "finished": true,
        "submit_time": "2026-03-31 19:57:58.840",
        "scheduled_time": "2026-03-31 19:57:58.877",
        "end_time": "2026-03-31 19:58:11.563"
    },
    "status_code": 200,
    "code": "",
    "message": ""
}

curl

ステップ 1:タスク ID を取得するためのタスク作成

curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/image-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "X-DashScope-Async: enable" \
--data '{
    "model": "wan2.7-image-pro",
    "input": {
        "messages": [
            {
                "role": "user",
                "content": [
                    {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"},
                    {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp"},
                    {"text": "画像 2 のグラフィティを画像 1 の車にスプレーする"}
                ]
            }
        ]
    },
    "parameters": {
        "size": "2K",
        "n": 1,
        "watermark": false,
        "thinking_mode": true
    }
}'

応答例

{
    "output": {
        "task_status": "PENDING",
        "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
    },
    "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

ステップ 2:タスク ID による結果照会

前のステップで取得した task_id を使用して、API を通じてタスクステータスをポーリングし、task_status が SUCCEEDED または FAILED になるまで待機します。

{task_id} を、前の API 呼び出しで返された task_id の値に置き換えてください。task_id は、24 時間以内の照会に有効です。

curl -X GET https://dashscope-intl.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

応答例

画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "request_id": "810fa5f5-334c-91f3-aaa4-ed89cf0caxxx",
    "output": {
        "task_id": "a81ee7cb-014c-473d-b842-76e98311cxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2026-03-26 17:16:01.663",
        "scheduled_time": "2026-03-26 17:16:01.716",
        "end_time": "2026-03-26 17:16:22.961",
        "finished": true,
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-xxx.oss-xxx.aliyuncs.com/xxx.png?Expires=xxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ]
    },
    "usage": {
        "size": "2976*1408",
        "total_tokens": 11017,
        "image_count": 1,
        "output_tokens": 2,
        "input_tokens": 11015
    }
}

wan2.5-i2i-preview モデルは、異なる API エンドポイントおよびパラメーター入力方式を使用します。以下の例は、このモデルを呼び出す方法を示しています。

wan2.5-i2i-preview の呼び出し例を表示するには、クリックしてください

同期呼び出し

重要

DashScope Python SDK のバージョンが少なくとも 1.25.2 であり、DashScope Java SDK のバージョンが少なくとも 2.22.2 であることを確認してください。

SDK のバージョンが古すぎる場合、「url error, please check url!」などのエラーが発生することがあります。詳細については、「SDK のインストールまたはアップグレード」をご参照ください。

Python

この例では、パブリック URL、Base64 エンコーディング、ローカルファイルパス の 3 種類の画像入力方法をサポートしています。

リクエスト例
import base64
import mimetypes
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath

import dashscope
import requests
from dashscope import ImageSynthesis
import os

# これはシンガポールリージョンの URL です。北京リージョンの場合は「https://dashscope.aliyuncs.com/api/v1」を使用してください。
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

# 環境変数を設定していない場合は、次の行を「api_key="sk-xxx"」で置き換えてください。
# API キーはシンガポールと北京で異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
api_key = os.getenv("DASHSCOPE_API_KEY")

# --- 入力画像:Base64 エンコーディング ---
# Base64 形式:data:{MIME_type};base64,{base64_data}
def encode_file(file_path):
    mime_type, _ = mimetypes.guess_type(file_path)
    if not mime_type or not mime_type.startswith("image/"):
        raise ValueError("サポートされていない、または認識できない画像形式です")
    with open(file_path, "rb") as image_file:
        encoded_string = base64.b64encode(image_file.read()).decode('utf-8')
    return f"data:{mime_type};base64,{encoded_string}"

"""
画像入力方法:
以下のいずれかを選択してください。

1. パブリック URL — パブリックにアクセス可能な画像に最適
2. ローカルファイル — ローカル開発およびテストに最適
3. Base64 エンコーディング — 非公開画像または安全な転送に最適
"""

# [方法 1] パブリック画像 URL
image_url_1 = "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp"
image_url_2 = "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp"

# [方法 2] ローカルファイル(絶対パスおよび相対パスをサポート)
# 書式:file:// + ファイルパス
# 例(絶対パス):
# image_url_1 = "file://" + "/path/to/your/image_1.png"     # Linux/macOS
# image_url_2 = "file://" + "C:/path/to/your/image_2.png"  # Windows
# 例(相対パス):
# image_url_1 = "file://" + "./image_1.png"                 # パスを調整してください
# image_url_2 = "file://" + "./image_2.png"                # パスを調整してください

# [方法 3] Base64 エンコード済み画像
# image_url_1 = encode_file("./image_1.png")               # パスを調整してください
# image_url_2 = encode_file("./image_2.png")              # パスを調整してください

print('----同期呼び出し中、しばらくお待ちください----')
rsp = ImageSynthesis.call(api_key=api_key,
                          model="wan2.5-i2i-preview",
                          prompt="画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                          images=[image_url_1, image_url_2],
                          negative_prompt="",
                          n=1,
                          # size="1280*1280",
                          prompt_extend=True,
                          watermark=False,
                          seed=12345)
print('応答: %s' % rsp)
if rsp.status_code == HTTPStatus.OK:
    # 画像を現在のディレクトリに保存
    for result in rsp.output.results:
        file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
        with open('./%s' % file_name, 'wb+') as f:
            f.write(requests.get(result.url).content)
else:
    print('sync_call に失敗しました。status_code: %s、code: %s、message: %s' %
          (rsp.status_code, rsp.code, rsp.message))
応答例
画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "status_code": 200,
    "request_id": "8ad45834-4321-44ed-adf5-xxxxxx",
    "code": null,
    "message": "",
    "output": {
        "task_id": "3aff9ebd-35fc-4339-98a3-xxxxxx",
        "task_status": "SUCCEEDED",
        "results": [
            {
                "url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx",
                "orig_prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                "actual_prompt": "画像 1 の青い目覚まし時計を、画像 2 のダイニングテーブルの花瓶の右側に配置します。テーブルクロスの端近くに配置し、時計はカメラに向かっており、テーブルトップと平行になっています。自然な影の投影を保ちます。"
            }
        ],
        "submit_time": "2025-10-23 16:18:16.009",
        "scheduled_time": "2025-10-23 16:18:16.040",
        "end_time": "2025-10-23 16:19:09.591",
        "task_metrics": {
            "TOTAL": 1,
            "FAILED": 0,
            "SUCCEEDED": 1
        }
    },
    "usage": {
        "image_count": 1
    }
}

Java

この例では、パブリック URL、Base64 エンコーディング、ローカルファイルパスの 3 種類の画像入力方法をサポートしています。

リクエスト例
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesis;
import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesisParam;
import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesisResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.*;

public class Image2Image {

    static {
        // これはシンガポールリージョンの URL です。北京リージョンの場合は「https://dashscope.aliyuncs.com/api/v1」を使用してください。
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
    }

    // 環境変数を設定していない場合は、次の行を「apiKey="sk-xxx"」で置き換えてください。
    // API キーはシンガポールと北京で異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    /**
     * 画像入力方法:以下のいずれかを選択してください
     *
     * 1. パブリック URL — パブリックにアクセス可能な画像に最適
     * 2. ローカルファイル — ローカル開発およびテストに最適
     * 3. Base64 エンコーディング — 非公開画像または安全な転送に最適
     */

    // [方法 1] パブリック URL
    static String imageUrl_1 = "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp";
    static String imageUrl_2 = "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp";

    // [方法 2] ローカルファイルパス(file://+絶対パスまたは file:///+絶対パス)
    // static String imageUrl_1 = "file://" + "/your/path/to/image_1.png";    // Linux/macOS
    // static String imageUrl_2 = "file:///" + "C:/your/path/to/image_2.png";  // Windows

    // [方法 3] Base64 エンコーディング
    // static String imageUrl_1 = encodeFile("/your/path/to/image_1.png");
    // static String imageUrl_2 = encodeFile("/your/path/to/image_2.png");

    // 編集対象の画像リスト
    static List<String> imageUrls = new ArrayList<>();
    static {
        imageUrls.add(imageUrl_1);
        imageUrls.add(imageUrl_2);
    }

    public static void syncCall() {
        // パラメーターを設定
        Map<String, Object> parameters = new HashMap<>();
        parameters.put("prompt_extend", true);
        parameters.put("watermark", false);
        parameters.put("seed", 12345);

        ImageSynthesisParam param =
                ImageSynthesisParam.builder()
                        .apiKey(apiKey)
                        .model("wan2.5-i2i-preview")
                        .prompt("画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。")
                        .images(imageUrls)
                        .n(1)
                         //.size("1280*1280")
                        .negativePrompt("")
                        .parameters(parameters)
                        .build();

        ImageSynthesis imageSynthesis = new ImageSynthesis();
        ImageSynthesisResult result = null;
        try {
            System.out.println("---同期呼び出し中、しばらくお待ちください----");
            result = imageSynthesis.call(param);
        } catch (ApiException | NoApiKeyException e){
            throw new RuntimeException(e.getMessage());
        }
        System.out.println(JsonUtils.toJson(result));
    }

    /**
     * ファイルを Base64 文字列としてエンコード
     * @param filePath ファイルパス
     * @return MIME タイプと Base64 データを含む文字列(data:{MIME_type};base64,{base64_data})
     */
    public static String encodeFile(String filePath) {
        Path path = Paths.get(filePath);
        if (!Files.exists(path)) {
            throw new IllegalArgumentException("ファイルが見つかりません:" + filePath);
        }
        // MIME タイプを検出
        String mimeType = null;
        try {
            mimeType = Files.probeContentType(path);
        } catch (IOException e) {
            throw new IllegalArgumentException("ファイルタイプを検出できません:" + filePath);
        }
        if (mimeType == null || !mimeType.startsWith("image/")) {
            throw new IllegalArgumentException("サポートされていない、または認識できない画像形式です");
        }
        // ファイルを読み込み、エンコード
        byte[] fileBytes = null;
        try{
            fileBytes = Files.readAllBytes(path);
        } catch (IOException e) {
            throw new IllegalArgumentException("ファイルを読み込めません:" + filePath);
        }

        String encodedString = Base64.getEncoder().encodeToString(fileBytes);
        return "data:" + mimeType + ";base64," + encodedString;
    }

    public static void main(String[] args) {
        syncCall();
    }
}
応答例
画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "request_id": "d362685b-757f-4eac-bab5-xxxxxx",
    "output": {
        "task_id": "bfa7fc39-3d87-4fa7-b1e6-xxxxxx",
        "task_status": "SUCCEEDED",
        "results": [
            {
                "orig_prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                "actual_prompt": "画像 1 の青い目覚まし時計を、画像 2 のダイニングテーブルの花瓶の右側に配置します。時計はカメラに向かっており、花瓶と平行になっています。",
                "url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx"
            }
        ],
        "task_metrics": {
            "TOTAL": 1,
            "SUCCEEDED": 1,
            "FAILED": 0
        }
    },
    "usage": {
        "image_count": 1
    }
}

非同期呼び出し

重要

DashScope Python SDK のバージョンが少なくとも 1.25.2 であり、DashScope Java SDK のバージョンが少なくとも 2.22.2 であることを確認してください。

SDK のバージョンが古すぎる場合、「url error, please check url!」などのエラーが発生することがあります。詳細については、「SDK のインストールまたはアップグレード」をご参照ください。

Python

この例では、パブリック URL を使用して画像を渡します。

リクエスト例

import os
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import dashscope
import requests
from dashscope import ImageSynthesis

# これはシンガポールリージョンの URL です。北京リージョンの場合は「https://dashscope.aliyuncs.com/api/v1」を使用してください。
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'

# 環境変数を設定していない場合は、次の行を「api_key="sk-xxx"」で置き換えてください。
# API キーはシンガポールと北京で異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
api_key = os.getenv("DASHSCOPE_API_KEY")

# パブリック画像 URL
image_url_1 = "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp"
image_url_2 = "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp"


def async_call():
    print('----タスクを作成----')
    task_info = create_async_task()
    print('----タスクを待機----')
    wait_async_task(task_info)


# 非同期タスクを作成
def create_async_task():
    rsp = ImageSynthesis.async_call(api_key=api_key,
                                    model="wan2.5-i2i-preview",
                                    prompt="画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                                    images=[image_url_1, image_url_2],
                                    negative_prompt="",
                                    n=1,
                                    # size="1280*1280",
                                    prompt_extend=True,
                                    watermark=False,
                                    seed=12345)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print(rsp.output)
    else:
        print('失敗しました。status_code: %s、code: %s、message: %s' %
              (rsp.status_code, rsp.code, rsp.message))
    return rsp


# 非同期タスクの完了を待機
def wait_async_task(task):
    rsp = ImageSynthesis.wait(task=task, api_key=api_key)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print(rsp.output)
        # 現在のディレクトリにファイルを保存
        for result in rsp.output.results:
            file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
            with open('./%s' % file_name, 'wb+') as f:
                f.write(requests.get(result.url).content)
    else:
        print('失敗しました。status_code: %s、code: %s、message: %s' %
              (rsp.status_code, rsp.code, rsp.message))


# 非同期タスクのステータスを照会
def fetch_task_status(task):
    status = ImageSynthesis.fetch(task=task, api_key=api_key)
    print(status)
    if status.status_code == HTTPStatus.OK:
        print(status.output.task_status)
    else:
        print('失敗しました。status_code: %s、code: %s、message: %s' %
              (status.status_code, status.code, status.message))


# 非同期タスクをキャンセル(PENDING ステータスのタスクのみキャンセル可能)
def cancel_task(task):
    rsp = ImageSynthesis.cancel(task=task, api_key=api_key)
    print(rsp)
    if rsp.status_code == HTTPStatus.OK:
        print(rsp.output.task_status)
    else:
        print('失敗しました。status_code: %s、code: %s、message: %s' %
              (rsp.status_code, rsp.code, rsp.message))


if __name__ == '__main__':
    async_call()

応答例

1. タスク作成時の応答

{
	"status_code": 200,
	"request_id": "31b04171-011c-96bd-ac00-f0383b669cc7",
	"code": "",
	"message": "",
	"output": {
		"task_id": "4f90cf14-a34e-4eae-xxxxxxxx",
		"task_status": "PENDING",
		"results": []
	},
	"usage": null
}

2. タスク結果照会時の応答

画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "status_code": 200,
    "request_id": "8ad45834-4321-44ed-adf5-xxxxxx",
    "code": null,
    "message": "",
    "output": {
        "task_id": "3aff9ebd-35fc-4339-98a3-xxxxxx",
        "task_status": "SUCCEEDED",
        "results": [
            {
                "url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx",
                "orig_prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                "actual_prompt": "画像 1 の青い目覚まし時計を、画像 2 のダイニングテーブルの花瓶の右側に配置します。テーブルクロスの端近くに配置し、時計はカメラに向かっており、テーブルトップと平行になっています。自然な影の投影を保ちます。"
            }
        ],
        "submit_time": "2025-10-23 16:18:16.009",
        "scheduled_time": "2025-10-23 16:18:16.040",
        "end_time": "2025-10-23 16:19:09.591",
        "task_metrics": {
            "TOTAL": 1,
            "FAILED": 0,
            "SUCCEEDED": 1
        }
    },
    "usage": {
        "image_count": 1
    }
}

Java

この例では、デフォルトでパブリック URL を使用して画像を渡します。

リクエスト例

// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesis;
import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesisListResult;
import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesisParam;
import com.alibaba.dashscope.aigc.imagesynthesis.ImageSynthesisResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.task.AsyncTaskListParam;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Image2Image {

    static {
        // これはシンガポールリージョンの URL です。北京リージョンの場合は「https://dashscope.aliyuncs.com/api/v1」を使用してください。
        Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
    }

    // 環境変数を設定していない場合は、次の行を「apiKey="sk-xxx"」で置き換えてください。
    // API キーはシンガポールと北京で異なります。API キーの取得方法については、「https://www.alibabacloud.com/help/zh/model-studio/get-api-key」をご参照ください。
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    // パブリック URL
    static String imageUrl_1 = "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp";
    static String imageUrl_2 = "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp";

    // 編集対象の画像リスト
    static List<String> imageUrls = new ArrayList<>();
    static {
        imageUrls.add(imageUrl_1);
        imageUrls.add(imageUrl_2);
    }

    public static void asyncCall() {
        // パラメーターを設定
        Map<String, Object> parameters = new HashMap<>();
        parameters.put("prompt_extend", true);
        parameters.put("watermark", false);
        parameters.put("seed", 12345);

        ImageSynthesisParam param =
                ImageSynthesisParam.builder()
                        .apiKey(apiKey)
                        .model("wan2.5-i2i-preview")
                        .prompt("画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。")
                        .images(imageUrls)
                        .n(1)
                        //.size("1280*1280")
                        .negativePrompt("")
                        .parameters(parameters)
                        .build();
        ImageSynthesis imageSynthesis = new ImageSynthesis();
        ImageSynthesisResult result = null;
        try {
            System.out.println("---非同期呼び出し中、しばらくお待ちください----");
            result = imageSynthesis.asyncCall(param);
        } catch (ApiException | NoApiKeyException e){
            throw new RuntimeException(e.getMessage());
        }

        System.out.println(JsonUtils.toJson(result));

        String taskId = result.getOutput().getTaskId();

        System.out.println("taskId=" + taskId);


        try {
            result = imageSynthesis.wait(taskId, apiKey);
        } catch (ApiException | NoApiKeyException e){
            throw new RuntimeException(e.getMessage());
        }
        System.out.println(JsonUtils.toJson(result));
        System.out.println(JsonUtils.toJson(result.getOutput()));
    }

    public static void listTask() throws ApiException, NoApiKeyException {
        ImageSynthesis is = new ImageSynthesis();
        AsyncTaskListParam param = AsyncTaskListParam.builder().build();
        param.setApiKey(apiKey);
        ImageSynthesisListResult result = is.list(param);
        System.out.println(result);
    }

    public void fetchTask(String taskId) throws ApiException, NoApiKeyException {
        ImageSynthesis is = new ImageSynthesis();
        // DASHSCOPE_API_KEY が環境変数として設定されている場合、apiKey は空でも構いません。
        ImageSynthesisResult result = is.fetch(taskId, apiKey);
        System.out.println(result.getOutput());
        System.out.println(result.getUsage());
    }


    public static void main(String[] args) {
        asyncCall();
    }
}

応答例

1. タスク作成時の応答

{
	"request_id": "5dbf9dc5-4f4c-9605-85ea-542f97709ba8",
	"output": {
		"task_id": "7277e20e-aa01-4709-xxxxxxxx",
		"task_status": "PENDING"
	}
}

2. タスク結果照会時の応答

画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "request_id": "d362685b-757f-4eac-bab5-xxxxxx",
    "output": {
        "task_id": "bfa7fc39-3d87-4fa7-b1e6-xxxxxx",
        "task_status": "SUCCEEDED",
        "results": [
            {
                "orig_prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
                "actual_prompt": "画像 1 の青い目覚まし時計を、画像 2 のダイニングテーブルの花瓶の右側に配置します。時計はカメラに向かっており、花瓶と平行になっています。",
                "url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx"
            }
        ],
        "task_metrics": {
            "TOTAL": 1,
            "SUCCEEDED": 1,
            "FAILED": 0
        }
    },
    "usage": {
        "image_count": 1
    }
}

curl

これは 2 ステップのプロセスです:タスクを作成し、その後結果を取得します。

説明
  • 非同期呼び出しでは、ヘッダーのパラメーター X-DashScope-Asyncenable に設定してください。

  • 非同期タスクの task_id は 24 時間有効です。有効期限が切れた後、タスクステータスは UNKNOWN になります。

ステップ 1:タスクを作成するリクエストを送信

このリクエストはタスク ID (task_id) を返します。

リクエスト例
 curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "wan2.5-i2i-preview",
    "input": {
        "prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の横に配置します。",
        "images": [
            "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp",
            "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp"
        ]
    },
    "parameters": {
        "n": 1
    }
}'

応答例

{
    "output": {
        "task_status": "PENDING",
        "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
    },
    "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

ステップ 2:タスク ID による結果照会

前のステップで取得した task_id を使用して、API を通じてタスクステータスをポーリングし、task_status が SUCCEEDED または FAILED になるまで待機します。

リクエスト例

86ecf553-d340-4e21-xxxxxxxxx を実際のタスク ID に置き換えてください。

API キーはリージョン固有です。詳細については、「API キーのドキュメント」をご参照ください。
北京リージョンのモデルの場合、base_url を https://dashscope.aliyuncs.com/api/v1/tasks/86ecf553-d340-4e21-xxxxxxxxx
curl -X GET https://dashscope-intl.aliyuncs.com/api/v1/tasks/86ecf553-d340-4e21-xxxxxxxxx \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

応答例

画像 URL は 24 時間有効です。画像を速やかにダウンロードしてください。
{
    "request_id": "d1f2a1be-9c58-48af-b43f-xxxxxx",
    "output": {
        "task_id": "7f4836cd-1c47-41b3-b3a4-xxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2025-09-23 22:14:10.800",
        "scheduled_time": "2025-09-23 22:14:10.825",
        "end_time": "2025-09-23 22:15:23.456",
        "results": [
            {
                "orig_prompt": "画像 1 の目覚まし時計を、画像 2 のダイニングテーブルの花瓶の隣に配置します。",
                "url": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx"
            }
        ],
        "task_metrics": {
            "TOTAL": 1,
            "FAILED": 0,
            "SUCCEEDED": 1
        }
    },
    "usage": {
        "image_count": 1
    }
}

モデル選択

  • wan2.7-image-pro および wan2.7-image(推奨):高精度の編集や一貫性のある複数画像の生成が必要なシナリオに適しています。

    • 精密なローカル編集:画像内の特定領域を選択して、移動、置き換え、または新規要素の追加を行います。この機能は、EC サイト向け画像レタッチやデザイン案の調整に最適です。

    • マルチパネル画像生成:単一の呼び出しで、一貫したスタイルを持つ複数の画像を生成します。この機能は、コミックのストーリーボード、製品シリーズ画像、映画のストーリーボードなどに最適です。

  • wan2.6-image:テキストと画像が混在するスタイル編集や、複数の参照画像を用いるシナリオに適しています。このモデルは、画像生成時に対応するテキストコンテンツを生成することをサポートし、最大 4 枚の参照画像を受け入れます。

  • wan2.5-i2i-preview:シンプルな画像編集およびマルチイメージ融合に適しています。

各モデルの入力および出力仕様については、「入力画像仕様」および「出力画像解像度」をご参照ください。

デモギャラリー

画像から画像セットへ

入力画像

出力画像

Wan_图片生成_一位 20 岁的东亚男性,头发是卷卷的半长发,文艺气质,五官立体,眉眼清秀,穿着简约白色 T 恤或浅蓝色衬衫,少年感,自然气质。-2026-03-31-19-26-24

output

wan_image_reqid_57d7a71c-1932-4de8-8c32-be0f3fd5696f_n1-2026-03-31-19-32-44

output

プロンプトを表示するには、クリックしてください

ケース 1:撮影

ベースキャラクター設定:黒髪の巻き毛で、中程度の長さの髪、芸術的な気質、はっきりとした顔立ち、繊細な目を持つ 20 歳の東アジア系男性。白い T シャツまたは薄青色のシャツを着用しており、若々しく自然な雰囲気を醸し出しています。
1. 中華民国時代の学者スタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、暗青色の長衣と丸型の金縁眼鏡を身に着け、扇子を持っています。背景は古い上海の書斎で、木製の本棚、暖かい黄色のトーン、レトロなフィルムテクスチャ、柔らかいサイドライト、光の筋に舞うほこりがあり、文化的で静謐な雰囲気を演出しています。ハッセルブラッドの中判、85mm レンズ、高解像度、シネマティックなカラーグレーディング、王家衛スタイル。
小道具:扇子/綴じ本/丸フレーム眼鏡
配色:暖かい黄色/暗青色/セピア
2. 英国紳士スタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、暗灰色のツイード製三つ揃いのスーツとヴィンテージの機械式時計を身に着け、赤ワインのグラスを手に持ち、それを眺めています。背景はクラシックな図書館またはプライベートクラブで、ダークレザーソファ、レンブラントライティング、ダークでエレガントかつ高貴な雰囲気です。クールな視線で、豊かなディテールとクリアなテクスチャを備え、英国の貴族的な気質を表現しています。8K 解像度、ファッション雑誌風のショット。
小道具:ワイングラス/パイプ/機械式時計
配色:ダークグレー/バーガンディ/ダークゴールド
3. 90 年代香港レトロスタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、洗いざらしのデニムジャケットまたはフラワープリントのシャツを着用し、やや乱れた髪で腕を組んでいます。背景は夜のネオンサインが輝く街で、ぼんやりとした光の斑点、高いグレイン、豊かなカラーが特徴で、赤と青のカラーコントラストがあります。王家衛スタイル、感情的で、夢見るような視線、ダイレクトフラッシュ効果、ノスタルジックな雰囲気。[全身ショット]。
配色:ネオンレッド/ダークブルー/フィルムグリーン
4. 新中国禅スタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、歯を見せる微笑みで、改良された白い中国式立襟シャツを着用し、梅の枝を手に持っています。背景はミニマリストの白壁または竹林で、日差しが壁にモザイク状の影を落としています。配色はクールで静謐で、東洋的な美学を体現しています。肌は半透明で、高いグレインとマット仕上げです。構図はシンプルで、光と影の豊かなレイヤーがあります。ハイエンドな写真、禅の雰囲気。
小道具:梅の枝
配色:白/ダークグリーン/ライトグレー
5. ヴィンテージアーティストスタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、塗料で汚れた白いシャツと茶色の革製エプロンを着用し、筆またはパレットを手に持っています。背景は明るい光とカラフルな光と影がある清潔なスタジオです。集中した表情で、手元の塗料を見つめており、カメラを見ていません。髪はやや乱れており、芸術的な気質を備え、印象派のカラートーンと強いテクスチャがあります。
小道具:筆/パレット/スケッチブック
配色:暖かい光/カラフルな塗料/ブラウン
6. クラシック・ノワール白黒スタイル
プロンプト:
[ベース顔の説明] キャラクターの外見は参照画像 1 を基にしており、黒いタートルネックセーターを着用し、タバコを手に持ち、黒いフェドラ帽をかぶっています。背景は階段または廊下で、交差する影があります。高コントラストの白黒写真、ハードライティング、強い影、ミステリアスな雰囲気、ハードボイルド探偵スタイル。顔の輪郭はシャープで、肌のテクスチャは極めてクリアです。クラシックな映画のワンシーン、タイムレスな感覚、サイドプロフィールのクローズアップ、アーティスティックな写真。
小道具:ステッキ/フェドラ/サングラス
配色:白黒/高コントラスト

ケース 2:ビジュアルデザイン

画像 1:商業用プロダクト写真のメインビジュアルカバーアイコン。レトロフューチャリスティックなワイヤレスオーバーイヤーヘッドホンが幾何学的な石膏フォルムの上に浮かび上がり、完璧な対称的な美しさを表現しています。素材はシャンパンゴールドの金属とクリームホワイトのシェルです。背景は深くぼかされた暖かい室内の光と影で、柔らかい光が製品のシルエットを際立たせています。画像内の余白は、静かな聴覚体験を連想させる強烈な呼吸感を創出しています。8K 超高解像度、ミニマリストでプレミアムな印象。
画像 2:製品の素材ディテールを 100mm マクロで撮影した画像。ヘッドホンの伸縮アームの接合部に焦点を当て、シャンパンゴールドのブラッシュアルミニウム合金のテクスチャと CNC 精密加工された面取りを明確に表現しています。シャープなバックライトにより、金属のエッジに星形のハイライトが生まれています。背景は暗く、金属の工業的精密さを強調しています。画像品質は極めてシャープでノイズはありません。
画像 3:素材の極限のマクロショット。モカカラーのプロテインレザー製イヤーカップの表面に焦点を当て、レザーの微細な孔のテクスチャ、押圧による柔らかなシワ、通気孔のディテールを表現しています。サイドライティングにより、レザーの肌触りの良さと弾力性を伝える豊かな光と影のレイヤーが生まれています。色調は温かく湿潤です。超高精細マクロ写真。
画像 4:製品の分解図をアート的に描いたもの。レトロフューチャリスティックなヘッドホンの内部音響ユニット、ノイズキャンセリングチップ、バッテリーモジュール、外部のウォールナット材装飾パネル、金属フレームを、浮遊・分解された状態で表示しています。背景は深みのあるテックブルーで、内部コンポーネントには半透明のホログラフィック技術テクスチャを施し、内部の精密な職人技と現代技術の融合を強調しています。ハイテク商業ポスター風。
画像 5:着用シーンの人間的描写(35mm)。モデルの顎ラインと首にクローズアップ。シャンパンゴールドのヘッドホンが完璧にフィットしている様子を表現しています。斜め後方からの自然な夕日がリムライトを生み出し、髪の毛先が金色に輝きます。モデルの肌のトーンは健康で自然なテクスチャで、リラックスした没入型の音楽鑑賞ライフスタイルを演出しています。背景はぼかされた家庭環境です。
画像 6:建築の光と影を敬意を表して撮影した静物写真。ヘッドホンをミニマリストのグレーコンクリートテーブルの上に配置。午後の日差しがブラインドを通して入り、マットなクリームホワイトのボディとシャンパンゴールドのフレームを切り取るストライプ状のハードシャドウを投げかけ、強烈な幾何学的構図を生み出しています。これにより、ボディの三次元形状と素材のコントラストが強調されます。クールとウォームの色調の衝突、ミニマリスト構図。
画像 7:カラーオプションを上から見たフラットレイ構図。シリーズのヘッドホンを 3 種類のカラースキーム(シルバー・ホワイト、ブラック・ゴールド、ブルー・コッパー)で並べています。背景は高テクスチャのグレーウールフェルト布です。柔らかいトップライトにより、CMF デザインの多様性と素材の繊細な質感が強調されています。画像はクリーンで秩序立っており、デザイン雑誌風です。
画像 8:ブランドライフスタイルのファミリーポートレート静物写真。レトロフューチャリスティックなヘッドホンを、それに対応するエレガントなレザーケースの隣に配置しています。テーブルにはレコードプレーヤー、回転中のレコード、蒸気を立てるコーヒーカップがあります。背景は暖かいアンビエントライティングで、深いウォールナットウッドトーンが支配的で、ゆっくりとしたライフスタイルと高忠実度のサウンド品質を組み合わせたブランド哲学を伝えています。シネマティックなナラティブライティング。

インタラクティブ編集

入力画像

出力画像

image (20)-2026-03-31-19-17-37

image (21)-2026-03-31-19-17-37

画像 1 を基に編集します。ボックス 1 で選択されたラズベリーをレモンに、ボックス 2 で選択されたラズベリーをストロベリーに、ボックス 3 で選択されたラズベリーをブルーベリーに置き換えます。結果は元の画像と調和して統合され、参照用のボックスおよび数字は表示されず、その他の内容は変更されません。

5eecdaf48460cde5f7fd58249809b192a118accde85283f275b8339e1c4c24831b75b38faadcd24bec177c308ebd5304463ca8e345548eb5f551b6ba01cd2c8d2d9b5606fa569ff7ba4077816ac9b801464f65aedbcf494f4fb4c8ed7016461c-combine

5eecdaf48460cde5f7fd58249809b192a118accde85283f275b8339e1c4c24831b75b38faadcd24bec177c308ebd530460436714d0283cee289325430893028097a53a8e5d630fb1c2d4c85d8cbb68a4387575c4b03700344fb4c8ed7016461c-2026-03-31-19-13-38

画像 1 で選択されたパターンを、画像 2 の選択された領域に配置します。

マルチイメージ融合

入力画像

出力画像

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304e9d05d028a65a9ac270ee730e44b8c75c6634a9b9a7a70240d438b02b2f2153dc68966b442378d1d4fb4c8ed7016461c-combine

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd53044b9a1d72dee2f8507ee704b9cef3832907ff1182f52507c9bc4737520762d46a722e658f57cda6524fb4c8ed7016461c-2025-12-29-19-11-31

画像 1 の少年と画像 2 の犬のポートレートを取ります。少年は犬を抱きしめており、どちらもとても幸せです。スタジオのソフトライティング、青いテクスチャ背景。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304f060ec7a363e318af9bfaaa5e07be972cfc1ea4e21b47637fcdb2dfc53130c40a8efed5defc408a04fb4c8ed7016461c-combine

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304922cbdef3e3c42f83239de6d0f35a8b76f0e38934cc5170f7a908ec12140fb0af6590c72bcf1ba6f4fb4c8ed7016461c-2025-12-29-19-15-53

画像 1 のドレスの色を、画像 2 の鳥の色で再カラーリングします。アーティスティックに仕上げますが、ドレスとモデルのスタイルは変更しません。

主体特徴の保持

入力画像

出力画像

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd53043e6c778a593da070988fa11b14a85d95e1c17d91f51ae21f2f94f7e5f5f32208a0ad2896cb2b0a024fb4c8ed7016461c-2025-12-29-20-00-22

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304c29923066754bb698349034eb20df1ce0b5ae32ae31d57bb753bd259e87d69dd01cab9fe9f470e1a4fb4c8ed7016461c-2025-12-29-20-00-21

人物の顔の特徴およびヘアスタイルは変更しません。人物はオフホワイトのキャミソールを着用しています。透明な魚槽が画面全体を占め、金魚が泳ぎ、水の中に泡が浮かんでいます。人物の顔は透明な魚槽と水を通して見えます。右下から淡い黄色の光が人物の顔に当たっています。泳ぐ金魚がランダムに人物を隠し、光と影の相互作用を生み出します。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304448a972b9f2ee7a7aadcc61495f4975a049f009e7721cbc833dc3a8005b1b026a54eaaec109d73484fb4c8ed7016461c-2025-12-29-20-00-21

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304cc1b4a509823c5fb5e60999898811f8b51d7419220a118c9ff82110bc9525725a9ad7338f75985794fb4c8ed7016461c-2025-12-29-20-00-21

テーマ「季節の変化」で、4 枚のポラロイド写真のセットを生成してください。すべて同じ場所(公園の木の下)で撮影し、それぞれ春、夏、秋、冬のシーンを表します。人物の服装も季節に合わせて変更します:春は薄手のジャケット、夏は半袖シャツ、秋はトレンチコート、冬はマフラーと厚手のコートです。この写真セットをダイニングテーブルの上に配置してください。

検出およびセグメンテーション

入力画像

出力画像

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304b025e74206dc2cec5c2e587c3fe6fb135293836c9479220355470da15476dc934b26018061e9db0b4fb4c8ed7016461c-2025-12-29-19-54-33

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530451385eb561b49b0fe1f2169526b6a7e15bd78940def3c640c801511c349f6df35dceb72f4d3755f94fb4c8ed7016461c-2025-12-29-19-54-33

画像内のノートパソコンと目覚まし時計を検出し、バウンディングボックスを描画して「laptop」と「clock」とラベル付けします。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530440256f9add4113787af5d4f3a55469b38ef2422f018076640eb7cb552584c02ee729fcb23fec3bca4fb4c8ed7016461c-2025-12-29-19-54-33

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304f0612d67f5c810ebef958385624ebd17323047aa5d00465d0e35257de5a2ea49d4b375d2e57693fa4fb4c8ed7016461c-2025-12-29-19-54-32

画像内のガラス製コップをセグメンテーションします。

要素の抽出

入力画像

出力画像

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd53046b83761f1ab18c40e144f5db2b388e5f865ba9a5961d98b2710ce177c6a0f4baff63fe52259c44364fb4c8ed7016461c-2025-12-29-19-48-27

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd53048e2a0d1d2805d92ba8d45a3bd1368528dd76f517b21ad1f545eb4097610838497cbdb5196da94ff54fb4c8ed7016461c-2025-12-29-19-48-27

アップロードされた写真から衣類アイテムを抽出し、純白の背景上でフラットレイ表示します。リアルなディテールおよび素材のテクスチャを維持します。ファッション EC サイト向けスタイルで、衣類のディスプレイに適しています。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530495944057b299ca7f8289011f2af761c3e0716fd08c4c4ac422d728e8b8c40172be69b293f7bf8f714fb4c8ed7016461c-2025-12-29-19-48-27

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304f0fa8b3f692baabc0c6dc154a693905ec5efc376be9f567276378a633b5e3ded4f84ffa25485b9a24fb4c8ed7016461c-2025-12-29-19-48-27

メインの人物を切り抜き、純白の背景に配置します。

テキスト編集

入力画像

出力画像

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530490f493eca22f34f0197173ddfdef17a04b34cb94813178b9d4eee36d246d3530a3e2fc6258cca0694fb4c8ed7016461c-2025-12-29-19-28-35

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304fe77776567f4ef79cb621289a6fdaa981f3364fe4c7c56265403b5d9d5ac43eaf5931f62db14952f4fb4c8ed7016461c-2025-12-29-19-28-35

画像内のすべてのウォーターマークを削除します。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530476e971380812b1b9dbeac68272a27057175499fe84f0781c7b6fa6535f438c67f3556acc8c7324394fb4c8ed7016461c-2025-12-29-19-28-35

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd53047be52c6f41edecdefa77f0d93335d1492f1821b47dff7a1b08f60e99bdafcc84c31e3658fc593c904fb4c8ed7016461c-2025-12-29-19-28-35

手で砂の上に「Time for Holiday?」と casually 書きます。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304fdb284f8d5c8ead814d11890da1a49411a6d9d41ad1bb2a4bf0b93d0bee5d792e8f5b419a3da9d534fb4c8ed7016461c-2025-12-29-19-28-34

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304df1c8787530497f4cc3bee0b84d3ba51d0353fceb8d0518ded6a25e8c0ddfec714f719154ac1c9354fb4c8ed7016461c-2025-12-29-19-28-34

「18」を「29」に、「JUNE」を「SEPTEMBER」に変更します。

カメラおよびパースペクティブ編集

入力画像

出力画像

image (2)-2025-12-29-19-42-44

image (3)-2025-12-29-19-42-44

人物の特徴を変更せず、正面、横、背面のビューを生成します。

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd5304a53988b2efdd2fb6b95cb3b1b02701e6ff2c4902170b1ee230a9b4e3726a891c93646d68b821de294fb4c8ed7016461c-2025-12-29-19-42-43

5eecdaf48460cde5544f9fac410016bc2fe4c1b4d23666c075b8339e1c4c24831b75b38faadcd24bec177c308ebd530428783dee341e41eb06234dfb75bd149d774f4850000123559a98bcd7ece97dc4a6c3cefa983ae8ac4fb4c8ed7016461c-2025-12-29-19-42-43

この写真をフィッシュアイレンズで再撮影します。

入力の説明

入力画像仕様

仕様

wan2.7-image-pro、wan2.7-image

wan2.6-image

wan2.5-i2i-preview

入力画像の枚数

0~9 枚(0 の場合、Text-to-Image モード)

画像編集:1~4 枚/テキストと画像の混在:0~1 枚

1~3

画像形式

JPEG、JPG、PNG(alpha チャンネル未対応)、BMP、WEBP

JPEG、JPG、PNG(alpha チャンネル未対応)、BMP、WEBP

JPEG、JPG、PNG(alpha チャンネル未対応)、BMP、WEBP

画像の幅と高さの範囲

[240, 8000] ピクセル

[240, 8000] ピクセル

[384, 5000] ピクセル

ファイルサイズ

≤ 20 MB

≤ 10 MB

≤ 10 MB

縦横比

[1:8, 8:1]

無制限

[1:4, 4:1]

画像入力の順序

複数の画像を入力する場合、その順序は配列内の位置によって決まります。そのため、プロンプトで参照される画像番号は、画像配列の順序と 1 対 1 で対応している必要があります。例えば、配列の最初の画像は「画像 1」、2 番目は「画像 2」となります。また、「[画像 1]」や「[画像 2]」のようなマーカーを使用することもできます。

{
    "content": [
        {"text": "編集指示、例:画像 1 の目覚まし時計を画像 2 のダイニングテーブルの花瓶の隣に配置する"},
        {"image": "https://example.com/image1.png"},
        {"image": "https://example.com/image2.png"}
    ]
}

入力画像

出力画像

image (19)-转换自-png

画像 1

image (20)-转换自-png

画像 2

04e0fc39-7ad6-41e0-9df9-1f69ac3ce825-转换自-png

プロンプト:画像 1 を画像 2 に移動する

36ed450d-bd54-4169-b13f-3d0f26d9d360-转换自-png

プロンプト:画像 2 を画像 1 に移動する

画像入力方法

以下の方法で画像を渡すことができます:

方法 1:パブリック URL

  • HTTP または HTTPS プロトコルをサポートする、パブリックにアクセス可能な画像 URL を指定します。

  • 値の例:https://xxxx/img.png

  • 利用シーン:画像が OSS などのオブジェクトストレージサービスや、パブリックな画像ホスティングサービスでホストされている場合。

方法 2:Base64 エンコーディング

画像ファイルを Base64 エンコードされた文字列に変換し、次の形式でフォーマットします:data:{MIME_type};base64,{base64_data}

  • 値の例:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABDg...... 長さの制限によりスニペットです)。呼び出し時には、完全な文字列を渡してください。

  • {base64_data}:画像ファイルの Base64 エンコードされた文字列。

  • {MIME_type}:画像のメディアタイプ。ファイル形式と一致している必要があります。

    画像形式

    MIME タイプ

    JPEG

    image/jpeg

    JPG

    image/jpeg

    PNG

    image/png

    BMP

    image/bmp

    WEBP

    image/webp

  • 利用シーン:ローカル画像、非公開画像、または暗号化された転送が必要なシナリオに適しています。

コード例:画像の Base64 エンコーディング

import os
import base64
import mimetypes

# 形式は data:{mime_type};base64,{base64_data} です
def encode_file(file_path):
    mime_type, _ = mimetypes.guess_type(file_path)
    with open(file_path, "rb") as image_file:
        encoded_string = base64.b64encode(image_file.read()).decode('utf-8')
    return f"data:{mime_type};base64,{encoded_string}"
        
        
# エンコード関数を呼び出します。「/path/to/your/image.png」をローカル画像ファイルのパスに置き換えてください。そうしないとコードは実行されません。
image = encode_file("/path/to/your/image.png")

方法 3:ローカルファイルパス(SDK のみ)

  • Python SDK絶対パスと相対パスの両方をサポートします。ファイルパスのルールは以下の通りです:

    システム

    入力ファイルパス

    例(絶対パス)

    例(相対パス)

    Linux または macOS

    file://{ファイルの絶対パスまたは相対パス}

    file:///home/images/test.png

    file://./images/test.png

    Windows

    file://D:/images/test.png

    file://./images/test.png

  • Java SDK絶対パスのみをサポートします。ファイルパスのルールは以下の通りです:

    システム

    入力ファイルパス

    例(絶対パス)

    Linux または macOS

    file://{ファイルの絶対パス}

    file:///home/images/test.png

    Windows

    file:///{ファイルの絶対パス}

    file:///D:/images/test.png

  • 利用シーン:ローカル開発環境での迅速なテストに適しています。

主な機能

1. 命令追従(プロンプト)

パラメーター:messages.content.text または input.prompt(必須)、negative_prompt(任意)。

  • text または prompt(ポジティブプロンプト):画像に表示したいコンテンツ、被写体、シーン、スタイル、照明、構図を記述します。

  • negative_prompt(ネガティブプロンプト):画像に表示したくないコンテンツ(「ぼやけた」や「余分な指」など)を記述します。このパラメーターは、生成される画像の品質を最適化するのに役立ちます。

パラメーター

wan2.7-image-pro、wan2.7-image

wan2.6-image

wan2.5-i2i-preview

text

必須、最大 5,000 文字

必須、最大 2,000 文字

サポートされていません

prompt

サポートされていません

サポートされていません

必須、最大 2,000 文字

negative_prompt

サポートされていません

サポート、最大 500 文字

サポート、最大 500 文字

2. インテリジェントなプロンプトリライトの有効化

パラメーター:parameters.prompt_extend(bool、デフォルトは true)。

この機能は、短いプロンプトを自動的に拡張・最適化して画質を向上させますが、応答時間も長くなります。

ベストプラクティス:

  • 有効化:入力プロンプトが簡潔または広範な場合に推奨されます。この機能により画質が向上するためです。

  • 無効化:細かいディテールを制御したい場合、すでに詳細な説明を提供している場合、または応答レイテンシーに敏感な場合に推奨されます。prompt_extend パラメーターを明示的に false に設定してください。

パラメーター

wan2.7-image-pro、wan2.7-image

wan2.6-image

wan2.5-i2i-preview

prompt_extend

サポートされていません

サポート(画像編集モードのみ)

サポート

3. 出力画像解像度の設定

パラメーター:parameters.size(文字列)、形式は "width*height" です。

パラメーター

wan2.7-image-pro、wan2.7-image

wan2.6-image

wan2.5-i2i-preview

size

方法 1:出力画像の解像度を指定(推奨)

編集モード(少なくとも 1 枚の画像が渡された場合)、選択可能な出力解像度ティアは 1K2K(デフォルト)です。

  • 1K:出力の総ピクセル数は 1024*1024 に近く、縦横比は最後の入力画像と一致します。

  • 2K:出力の総ピクセル数は 2048*2048 に近く、縦横比は最後の入力画像と一致します。

方法 2:生成画像の幅と高さのピクセル値を指定

  • 総ピクセル数は 768*768 から 2048*2048 の間で、縦横比の範囲は [1:8, 8:1] です。

Text-to-Image シナリオの wan2.7-image-pro のみ 4K 解像度をサポートします。

方法 1:入力画像の比率を参照(推奨)

編集モード(enable_interleave=false)では、選択可能な出力解像度ティアは 1K(デフォルト)、2K です。

  • 1K:出力の総ピクセル数は 1280*1280 に近く、縦横比は最後の入力画像と一致します。

  • 2K:出力の総ピクセル数は 2048*2048 に近く、縦横比は最後の入力画像と一致します。

方法 2:生成画像の幅と高さのピクセル値を指定

  • 総ピクセル数は 768*768 から 2048*2048 の間で、縦横比の範囲は [1:4, 4:1] です。

実際の出力画像のピクセル値は、指定された値に最も近い 16 の倍数になります。

生成画像の幅と高さのピクセル値の指定のみをサポート

  • 総ピクセル数は 768*768 から 1280*1280 の間で、縦横比の範囲は [1:4, 4:1] です。

  • size が指定されていない場合、システムはデフォルトで総ピクセル数 1280*1280 の画像を生成し、縦横比は最後の入力画像と一致します。

4. インタラクティブな精密編集

parameters.bbox_list パラメーターは、インタラクティブ編集のためのバウンディングボックス領域を指定します。形式は List[List[List[int]]] です。画像内のアイテムや位置を選択して編集することで、より正確な結果を得ることができます。これは wan2.7-image-pro および wan2.7-image のみでサポートされています

  • リストの長さ:リストの長さは入力画像の数と一致する必要があります。編集が不要な画像については、対応する位置に空のリスト [] を使用します。

  • 座標形式:[x1, y1, x2, y2](左上の x、左上の y、右下の x、右下の y)。座標は元の画像の絶対ピクセル値で、左上隅が (0, 0) です。

  • 条件:1 枚の画像で最大 2 つのバウンディングボックスをサポートします。

例:3 枚の画像を入力し、1 枚目に 2 つのバウンディングボックスがあり、2 枚目にはない場合:

[
  [[0, 0, 12, 12], [25, 25, 100, 100]],  # 画像 1(2 ボックス)
  [],                                    # 画像 2(ボックスなし)
  [[10, 10, 50, 50]]                    # 画像 3(1 ボックス)
]

呼び出し例を表示するには、クリックしてください

curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "model": "wan2.7-image-pro",
    "input": {
        "messages": [
            {
                "role": "user",
                "content": [
                    {"image": "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp"},
                    {"image": "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp"},
                    {"text": "画像 1 の目覚まし時計を画像 2 の選択された領域に配置し、シーンと照明が自然に調和するようにします"}
                ]
            }
        ]
    },
    "parameters": {
        "bbox_list": [[],[[989, 515, 1138, 681]]],
        "size": "2K",
        "n": 1,
        "watermark": false,
        "thinking_mode": true
    }
}'

課金とレート制限

  • 無料クォータと単価については、「モデル一覧と価格」をご参照ください。

  • レート制限については、「Wan」をご参照ください。

  • 課金:

    • 正常に生成された画像の数に基づいて課金されます。API が SUCCEEDEDtask_status を返し、画像が正常に生成されたことを示す場合にのみ課金されます。

    • モデル呼び出しの失敗や処理エラーは、料金が発生したり、無料クォータを消費したりすることはありません。

API リファレンス

モデルによって使用するエンドポイントとリクエスト構造が異なります:

モデル

エンドポイント (シンガポールリージョンの例)

wan2.7-imagewan2.7-image-prowan2.6-image

同期 API:POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation

非同期 API:POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/image-generation/generation

wan2.5-i2i-preview

非同期 API:POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis

  • wan2.7 / wan2.6messages 形式を使用します。messages[].content 配列内で、image パラメーターで画像を、text パラメーターでプロンプトを渡します。

  • wan2.5input.images 配列で画像を、input.prompt パラメーターでプロンプトを渡します。

wan2.7-image-pro、wan2.7-image、wan2.6-image

wan2.5-i2i-preview

"input": {
    "messages": [
        {
            "role": "user",
            "content": [
                {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/pjeqdf/car.webp"},
                {"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20251229/xsunlm/paint.webp"},
                {"text": "画像 2 のグラフィティを画像 1 の車にスプレーする"}
            ]
        }
    ]
}
"input": {
    "prompt": "画像 1 の目覚まし時計を画像 2 のダイニングテーブルの花瓶の隣に配置する",
    "images": [
        "https://img.alicdn.com/imgextra/i3/O1CN0157XGE51l6iL9441yX_!!6000000004770-49-tps-1104-1472.webp",
        "https://img.alicdn.com/imgextra/i3/O1CN01SfG4J41UYn9WNt4X1_!!6000000002530-49-tps-1696-960.webp"
    ]
}

入力および出力パラメーターの詳細については、「Wan - 画像生成と編集」(wan2.7-image、wan2.6-image)および「Wan - 一般画像編集 2.5 API リファレンス」をご参照ください。