Qwen-Image-Edit は、複数画像の入力と出力をサポートしています。画像内のテキストの変更、オブジェクトの追加/削除/移動、被写体のアクションの変更、スタイルの転送、詳細の強調などが可能です。
クイックスタート
この例では、qwen-image-2.0-pro を使用して、3 枚の入力画像とプロンプトから 2 枚の編集済み画像を生成する方法を示します。
入力プロンプト:画像 1 の少女が画像 2 の黒いドレスを着て、画像 3 のポーズで座っている。
入力画像 1 | 入力画像 2 | 入力画像 3 | 出力画像 (複数画像) | |
|
|
|
|
|
呼び出しを行う前に、API キーを取得し、API キーを環境変数としてエクスポートしてください。
SDK を使用して API を呼び出すには、DashScope SDK をインストールしてください。SDK は Python と Java で利用できます。
Qwen 画像編集モデルは、1〜3 枚の入力画像をサポートしています。qwen-image-2.0、qwen-image-edit-max、および qwen-image-edit-plus シリーズは 1〜6 枚の画像を生成できます。qwen-image-edit は 1 枚の画像のみ生成できます。生成された画像の URL は 24 時間有効です。速やかに画像をローカルデバイスにダウンロードしてください。
Python
import json
import os
import dashscope
from dashscope import MultiModalConversation
# 以下はシンガポールリージョンの URL です。北京リージョンのモデルを使用する場合は、URL を https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1 に置き換えてください。
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
# モデルは 1〜3 枚の入力画像をサポートしています。
messages = [
{
"role": "user",
"content": [
{"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/thtclx/input1.png"},
{"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/iclsnx/input2.png"},
{"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/gborgw/input3.png"},
{"text": "画像 1 の少女が画像 2 の黒いドレスを着て、画像 3 のポーズで座っている。"}
]
}
]
# シンガポールと北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください。
# 環境変数を設定していない場合は、次の行を api_key="sk-xxx" に置き換えてください。
api_key = os.getenv("DASHSCOPE_API_KEY")
# qwen-image-2.0、qwen-image-edit-max、および qwen-image-edit-plus シリーズは、1〜6 枚の出力画像をサポートしています。この例では 2 枚生成します。
response = MultiModalConversation.call(
api_key=api_key,
model="qwen-image-2.0-pro",
messages=messages,
stream=False,
n=2,
watermark=False,
negative_prompt=" ",
prompt_extend=True,
size="1024*1536",
)
if response.status_code == 200:
# 完全な応答を表示するには、次の行のコメントを解除してください。
# print(json.dumps(response, ensure_ascii=False))
for i, content in enumerate(response.output.choices[0].message.content):
print(f"出力画像 {i+1} の URL: {content['image']}")
else:
print(f"HTTP ステータスコード: {response.status_code}")
print(f"エラーコード: {response.code}")
print(f"エラーメッセージ: {response.message}")
print("詳細については、https://www.alibabacloud.com/help/model-studio/error-code をご参照ください。")
Java
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.JsonUtils;
import com.alibaba.dashscope.utils.Constants;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.List;
public class QwenImageEdit {
static {
// 以下の URL はシンガポールリージョン用です。北京リージョンのモデルを使用する場合は、URL を https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1 に置き換えてください。
Constants.baseHttpApiUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
}
// シンガポールと北京リージョンの API キーは異なります。API キーの取得方法については、https://www.alibabacloud.com/help/model-studio/get-api-key をご参照ください。
// 環境変数を設定していない場合は、次の行を apiKey="sk-xxx" に置き換えてください。
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void call() throws ApiException, NoApiKeyException, UploadFileException, IOException {
MultiModalConversation conv = new MultiModalConversation();
// モデルは 1〜3 枚の入力画像をサポートしています。
MultiModalMessage userMessage = MultiModalMessage.builder().role(Role.USER.getValue())
.content(Arrays.asList(
Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/thtclx/input1.png"),
Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/iclsnx/input2.png"),
Collections.singletonMap("image", "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/20250925/gborgw/input3.png"),
Collections.singletonMap("text", "画像 1 の少女が画像 2 の黒いドレスを着て、画像 3 のポーズで座っている。")
)).build();
// qwen-image-2.0、qwen-image-edit-max、および qwen-image-edit-plus シリーズモデルは、1〜6 枚の出力画像をサポートしています。この例では 2 枚の画像を生成します。
Map<String, Object> parameters = new HashMap<>();
parameters.put("watermark", false);
parameters.put("negative_prompt", " ");
parameters.put("n", 2);
parameters.put("prompt_extend", true);
parameters.put("size", "1024*1536");
MultiModalConversationParam param = MultiModalConversationParam.builder()
.apiKey(apiKey)
.model("qwen-image-edit-max")
.messages(Collections.singletonList(userMessage))
.parameters(parameters)
.build();
MultiModalConversationResult result = conv.call(param);
// 完全な応答を表示するには、次の行のコメントを解除してください。
// System.out.println(JsonUtils.toJson(result));
List<Map<String, Object>> contentList = result.getOutput().getChoices().get(0).getMessage().getContent();
int imageIndex = 1;
for (Map<String, Object> content : contentList) {
if (content.containsKey("image")) {
System.out.println("出力画像 " + imageIndex + " の URL: " + content.get("image"));
imageIndex++;
}
}
}
public static void main(String[] args) {
try {
call();
} catch (ApiException | NoApiKeyException | UploadFileException | IOException e) {
System.out.println(e.getMessage());
}
}
}curl
次のコマンドはシンガポールリージョンの URL を使用します。中国 (北京) リージョンのモデルを使用する場合は、URL を https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation に置き換えてください。
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
"model": "qwen-image-2.0-pro",
"input": {
"messages": [
{
"role": "user",
"content": [
{
"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/thtclx/input1.png"
},
{
"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/iclsnx/input2.png"
},
{
"image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/gborgw/input3.png"
},
{
"text": "イメージ 1 の女の子が、イメージ 2 の黒いドレスを着て、イメージ 3 のポーズで座っている。"
}
]
}
]
},
"parameters": {
"n": 2,
"negative_prompt": " ",
"prompt_extend": true,
"watermark": false,
"size": "1024*1536"
}
}'推奨モデル
qwen-image-2.0-proシリーズ (推奨): 画像生成と編集のための統合モデルで、テキストレンダリング、リアルなテクスチャ、セマンティックな忠実性の機能が強化されています。qwen-image-2.0シリーズ: 品質とパフォーマンスのバランスが取れた、画像生成と編集の統合モデルの高速化バージョンです。
各リージョンでサポートされているモデルについては、モデルリストをご参照ください。
入力に関する説明
入力画像 (messages)
messages パラメーターは、単一のオブジェクトを含む必要がある配列です。このオブジェクトには、role と content プロパティが含まれている必要があります。role プロパティは user に設定する必要があります。content プロパティには、image (1〜3 枚の画像) と text (1 つの編集命令) の両方が含まれている必要があります。
入力画像は、次の要件を満たす必要があります:
サポートされている画像フォーマットは、JPG、JPEG、PNG、BMP、TIFF、WEBP、GIF です。
出力画像は PNG フォーマットです。アニメーション GIF の場合、最初のフレームのみが処理されます。
最良の結果を得るには、画像の解像度は幅と高さの両方で 384〜3072 ピクセルの範囲にすることをお勧めします。解像度が低いと出力がぼやける可能性があり、解像度が高いと処理時間が増加します。
単一の画像ファイルのサイズは 10 MB を超えることはできません。
"messages": [
{
"role": "user",
"content": [
{ "image": "画像 1 の公開 URL または Base64 データ" },
{ "image": "画像 2 の公開 URL または Base64 データ" },
{ "image": "画像 3 の公開 URL または Base64 データ" },
{ "text": "編集命令の例:「画像 1 の少女が画像 2 の黒いドレスを着て、画像 3 のポーズで座っている」" }
]
}
]画像の入力順序
プロンプト内の画像番号は配列の位置に対応します。最初の画像は「画像 1」、2 番目は「画像 2」です。「[image 1]」や「[image 2]」のようなマーカーも使用できます。
{
"content": [
{"text": "編集命令の例:画像 1 の目覚まし時計を画像 2 の食卓の花瓶の隣に置く"},
{"image": "https://example.com/image1.png"},
{"image": "https://example.com/image2.png"}
]
}入力画像 | 出力画像 | ||
画像 1 |
画像 2 |
プロンプト:画像 1 を画像 2 に移動する |
プロンプト:画像 2 を画像 1 に移動する |
画像の入力方法
公開 URL
HTTP または HTTPS プロトコルをサポートする、一般にアクセス可能な画像 URL を提供できます。
値の例:
https://xxxx/img.png
Base64 エンコーディング
画像ファイルを Base64 エンコードされた文字列に変換し、次のフォーマットで連結します:data:{mime_type};base64,{base64_data}
{mime_type}:画像のメディアタイプ。ファイル形式に対応している必要があります。{base64_data}:ファイルの Base64 エンコードされた文字列。値の例:
data:image/jpeg;base64,GDU7MtCZz...(例はデモンストレーションのために切り捨てられています。)
完全なコード例については、「Python SDK の呼び出し」および「Java SDK を使用した呼び出し」をご参照ください。
その他のパラメーター
次のオプションのパラメーターを使用して、生成結果を調整します:
n:生成する画像の数。デフォルト値は 1 です。qwen-image-2.0、qwen-image-edit-max、および qwen-image-edit-plus シリーズのモデルは、1〜6 枚の画像の生成をサポートしています。
qwen-image-editモデルは 1 枚の画像のみの生成をサポートしています。negative_prompt:画像から除外するコンテンツを記述します (例:「ぼかし」や「余分な指」)。このパラメーターは、生成される画像の品質を最適化するのに役立ちます。
watermark:画像の右下隅に「Qwen-Image」のウォーターマークを追加するかどうかを指定します。デフォルト値は
falseです。次の画像はウォーターマークのスタイルを示しています:
seed:乱数シード。値は
[0, 2147483647]の範囲の整数である必要があります。このパラメーターが指定されていない場合、アルゴリズムは乱数を生成してシードとして使用します。同じシード値を使用すると、一貫した生成結果を確保するのに役立ちます。
以下のオプションのパラメーターは、qwen-image-2.0、qwen-image-edit-max、および qwen-image-edit-plus シリーズのモデルでのみ利用可能です:
size:出力画像の解像度。フォーマットは
width*heightで、"1024*2048"のようになります。qwen-image-2.0 シリーズのモデルでは、幅と高さを自由に設定できます。出力画像の総ピクセル数は 512 × 512 から 2048 × 2048 の間でなければなりません。デフォルトでは、解像度は入力画像と同じです (複数提供された場合は最後の画像)。qwen-image-edit-max および qwen-image-edit-plus シリーズのモデルでは、幅と高さは 512 から 2048 ピクセルの範囲で指定できます。デフォルトでは、出力画像は1024*1024に近い解像度で、元画像と同様の縦横比になります。prompt_extend: プロンプトリライト機能を有効または無効にします。デフォルト値は
trueです。有効にすると、モデルはプロンプトを最適化します。この機能は、単純または説明の少ないプロンプトに対して結果を大幅に改善できます。
パラメーターの完全なリストについては、「Qwen-Image-Edit API リファレンス」をご参照ください。
概要
複数画像の融合
入力画像 1 | 入力画像 2 | 入力画像 3 | 出力画像 |
|
|
|
画像 1 の少女が画像 2 のネックレスをつけ、画像 3 のバッグを左肩にかけている。 |
主語の一貫性
入力画像 | 出力画像 1 | 出力画像 2 | 出力画像 3 |
|
画像を青い背景の証明写真に変更する。被写体は白いシャツ、黒いスーツ、ストライプのネクタイを着用している。 |
被写体は白いシャツ、グレーのスーツ、ストライプのネクタイを着用している。片手はネクタイに添えられている。背景は明るい色。 |
被写体は「Qwen Image」と太い筆記体で書かれた黒いパーカーを着用している。髪に日光を浴びながら手すりにもたれかかっている。背景には橋と海が見える。 |
|
エアコンをリビングルームのソファの隣に配置する。 |
エアコンの吹き出し口からソファの上に広がる霧を追加する。緑の葉も追加する。 |
上部に白い手書きのテキスト「Natural Fresh Air Enjoy Breathing」を追加する。 |
スケッチ作成
入力画像 | 出力画像 | |
|
画像 1 で概説された詳細な形状に一致し、次の説明に従う画像を生成する:晴れた日に若い女性が微笑んでいる。彼女はヒョウ柄のフレームの丸い茶色のサングラスをかけている。髪はきれいにまとめられ、真珠のイヤリング、紫の星柄のダークブルーのスカーフ、黒い革のジャケットを着用している。 |
画像 1 で概説された詳細な形状に一致し、次の説明に従う画像を生成する:高齢の男性がカメラに向かって微笑んでいる。彼の顔にはしわがあり、髪は風で乱れ、丸いフレームの老眼鏡をかけている。彼は首に星柄の使い古された赤いスカーフを巻き、綿入りのジャケットを着ている。 |
クリエイティブな製品生成
入力画像 | 出力画像 | ||
|
このクマを月 (白い背景に薄灰色の三日月の輪郭で表現) の下に座らせ、ギターを持たせ、周りに小さな星と「Be Kind」などのフレーズが入った吹き出しを浮かばせる。 |
このデザインを T シャツと紙のトートバッグに印刷する。女性モデルがこれらのアイテムを展示している。女性は「Be kind」と書かれた野球帽もかぶっている。 |
商業完成品としてデザインされた、超リアルな 1/7 スケールのキャラクターモデルが、白いキーボードの iMac がある机の上に置かれている。モデルは、ラベルやテキストのない、清潔で丸い透明なアクリルベースの上に立っている。プロのスタジオ照明が彫刻の詳細を強調している。背景の iMac の画面には、同じモデルの ZBrush モデリングプロセスが表示されている。モデルの隣に、前面に透明な窓が付いたパッケージボックスを置く。中には透明なプラスチックシェルのみが見える。ボックスはモデルよりわずかに高く、それを収容するのに妥当なサイズである。 |
このクマは宇宙服を着て、遠くを指さしている。 |
このクマは豪華な舞踏会用のドレスを着て、優雅なダンスのポーズで腕を広げている。 |
このクマはスポーツウェアを着て、バスケットボールを持ち、片足を曲げている。 | |
デプスマップから画像を生成
入力画像 | 出力画像 | |
|
画像 1 で概説されたデプスマップに一致し、次の説明に従う画像を生成する:青い自転車が路地に駐車されており、背景の石のひび割れからいくつかの雑草が生えている。 |
画像 1 で概説されたデプスマップに一致し、次の説明に従う画像を生成する:使い古された赤い自転車が泥道に駐車されており、背景には密集した原生林がある。 |
キーポイントから画像を生成
入力画像 | 出力画像 | |
|
画像 1 で概説された人間のポーズに一致し、次の説明に従う画像を生成する:漢服を着た中国人女性が雨の中で油紙傘をさしており、背景には蘇州の庭園がある。 |
画像 1 で概説された人間のポーズに一致し、次の説明に従う画像を生成する:若い男性が地下鉄のプラットフォームに立っている。彼は野球帽、T シャツ、ジーンズを着用している。彼の後ろを電車が高速で通過している。 |
テキスト編集
入力画像 | 出力画像 | 入力画像 | 出力画像 |
|
スクラブルのタイルにある「HEALTH INSURANCE」を「Tomorrow Will Be Better」に置き換える。 |
|
メモにある「Take a Breather」というフレーズを「Relax and Recharge」に変更する。 |
入力画像 | 出力画像 | ||
|
「Qwen-Image」を黒いインクドリップフォントに変更する。 |
「Qwen-Image」を黒い手書きフォントに変更する。 |
「Qwen-Image」を黒いピクセルフォントに変更する。 |
「Qwen-Image」を赤色に変更する。 |
「Qwen-Image」を青紫のグラデーションに変更する。 |
「Qwen-Image」をキャンディーカラーに変更する。 | |
「Qwen-Image」の素材を金属に変更する。 |
「Qwen-Image」の素材を雲に変更する。 |
「Qwen-Image」の素材をガラスに変更する。 | |
追加と削除
機能 | 入力画像 | 出力画像 |
要素の追加 |
|
ペンギンの前に「Welcome to Penguin Beach」と書かれた小さな木製の看板を追加する。 |
要素の削除 |
|
皿から髪の毛を取り除く。 |
視点変換
入力画像 | 出力画像 | 入力画像 | 出力画像 |
|
正面図を取得する。 |
|
左を向く。 |
|
背面図を取得する。 |
|
右を向く。 |
古い写真の処理
機能 | 入力画像 | 出力画像 |
古い写真の修復とカラー化 |
|
古い写真を修復し、傷を取り除き、ノイズを低減し、詳細を強調し、高解像度、リアルな画像、自然な肌の色、明確な顔の特徴、歪みなし。 |
|
画像の内容に基づいてインテリジェントにカラー化し、より鮮やかにする。 |
課金とレート制限
無料クォータ、価格設定、およびレート制限については、「モデルリストと価格」をご参照ください。
課金の詳細:
課金は、正常に生成された画像にのみ基づきます。失敗した呼び出しは料金が発生せず、無料クォータも消費しません。
クォータが枯渇した後の課金を避けるために、「無料クォータのみ」を有効にしてください。詳細については、「新規ユーザー向けの無料クォータ」をご参照ください。
API リファレンス
API パラメーターについては、「Qwen-Image Edit」をご参照ください。
エラーコード
モデルの呼び出しが失敗し、エラーメッセージが返された場合は、「エラーコード」を参照して解決してください。
よくある質問
Q:Qwen 画像編集モデルはどの言語をサポートしていますか?
A:現在、このモデルは簡体字中国語と英語をサポートしています。他の言語も試すことはできますが、パフォーマンスは保証されません。
Q:モデルの呼び出しメトリクスはどのように表示しますか?
A:モデルの呼び出しが完了してから 1 時間後、モデルモニタリング (シンガポール) または モデルモニタリング (中国 (北京)) ページに移動して、呼び出し回数や成功率などのメトリクスを表示します。詳細については、「課金とコスト管理」をご参照ください。
Q:画像ストレージのドメイン名ホワイトリストを取得するにはどうすればよいですか?
A:モデルによって生成された画像は OSS に保存されます。API は一時的な公開 URL を返します。このダウンロード URL のファイアウォールホワイトリストを設定するには、次の点にご注意ください:基盤となるストレージは動的に変更される可能性があります。このトピックでは、古い情報によるアクセス問題を防ぐため、固定の OSS ドメイン名ホワイトリストは提供していません。セキュリティ管理の要件がある場合は、アカウントマネージャーに連絡して最新の OSS ドメイン名リストを取得してください。
「画像生成に関するよくある質問」をご参照ください。


































































