Qwen-Image は、汎用の画像生成モデルです。複数の芸術的スタイルをサポートし、複雑なテキストのレンダリングに優れています。このモデルは、複数行および段落レベルのテキスト生成、ならびに詳細なディテールのレンダリングをサポートし、テキストと画像を組み合わせた複雑なデザインを可能にします。
クイックリンク: ユーザーガイド | オンラインで試す (シンガポール | 北京) | 技術ブログ (その他の例) |
パフォーマンスショーケース
入力プロンプト | 出力画像 |
ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。 |
|
モデル概要
モデル名 | モデル説明 | 出力画像の仕様 |
qwen-image-max 現在、qwen-image-max-2025-12-30 と同じ機能を持ちます。 | Qwen-Image-Max は Plus シリーズを改良し、画像のリアリズムと自然さを向上させています。AI が生成したアーティファクトを効果的に削減し、キャラクターのテクスチャ、詳細なディテール、テキストのレンダリングに優れています。 | 画像解像度:利用可能な解像度と対応するアスペクト比については、size パラメーターの設定をご参照ください。 画像フォーマット:PNG 画像数:1 に固定 |
qwen-image-max-2025-12-30 | ||
qwen-image-plus 現在、qwen-image と同じ機能を持ちます。 | さまざまな芸術的スタイルをサポートし、画像内の複雑なテキストのレンダリングに優れており、テキストと画像の混合レイアウトデザインを可能にします。 | |
qwen-image-plus-2026-01-09 | ||
qwen-image |
現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
呼び出しを行う前に、モデルリストでご利用のリージョンでのモデルの可用性を確認してください。
前提条件
呼び出しを行う前に、API キーを取得し、API キーを環境変数として設定してください。SDK を使用して呼び出しを行うには、DashScope SDK をインストールしてください。
北京リージョンとシンガポールリージョンでは、API キーとリクエストエンドポイントが異なります。これらを相互に利用しないでください。リージョンをまたいだ呼び出しは、認証失敗またはサービスエラーを引き起こします。
同期 API (推奨)
HTTP 呼び出し
Qwen-Image は同期 API をサポートしており、単一リクエストで結果を取得できます。呼び出しプロセスが単純なため、ほとんどのシナリオでこの API が推奨されます。
シンガポール: POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
中国 (北京): POST https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
リクエストパラメーター | Text-to-Image |
リクエストヘッダー | |
Content-Type リクエストのコンテンツタイプ。このパラメーターを | |
Authorization 認証情報。この API は Model Studio API キーを認証に使用します。例:`Bearer sk-xxxx`。 | |
リクエストボディ | |
model モデル名。例: | |
input モデルの基本的な入力情報。 | |
parameters 画像処理パラメーター。 |
レスポンスパラメーター | タスク成功タスクステータスや画像 URL などのタスクデータは 24 時間のみ保持され、その後自動的に消去されます。生成された画像は速やかに保存する必要があります。 タスクの異常実行タスクが失敗した場合、レスポンスにはエラーに関する情報が含まれます。code フィールドと message フィールドがエラーの原因を示します。問題の解決方法の詳細については、「エラーメッセージ」をご参照ください。 |
output タスクの出力情報。 | |
usage 出力の使用状況統計。成功した結果のみがカウントされます。 | |
request_id 一意のリクエスト ID。この ID を使用して問題を追跡およびトラブルシューティングできます。 | |
code エラーコード。このパラメーターはリクエストが失敗した場合にのみ返されます。詳細については、「エラーメッセージ」をご参照ください。 | |
message 詳細なエラーメッセージ。このパラメーターはリクエストが失敗した場合にのみ返されます。詳細については、「エラーメッセージ」をご参照ください。 |
DashScope SDK
DashScope SDK は現在、Python と Java をサポートしています。
SDK のパラメーター名は、HTTP API のものとほぼ一致しています。パラメーター構造は各言語に合わせて調整されています。同期呼び出しのパラメーターの説明については、「HTTP 呼び出し」をご参照ください。
Python
DashScope Python SDK の最新バージョンをインストールしていることを確認してください。そうでない場合、実行時エラーが発生する可能性があります:「SDK のインストール」。
リクエスト例
import json
import os
import dashscope
from dashscope import MultiModalConversation
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
messages = [
{
"role": "user",
"content": [
{"text": "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。"}
]
}
]
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:api_key="sk-xxx"
api_key = os.getenv("DASHSCOPE_API_KEY")
response = MultiModalConversation.call(
api_key=api_key,
model="qwen-image-max",
messages=messages,
result_format='message',
stream=False,
watermark=False,
prompt_extend=True,
negative_prompt="低解像度、低品質、変形した手足、変形した指、彩度が高すぎる、ワックス状、顔のディテールがない、滑らかすぎる、AI のよう、混沌とした構図、ぼやけたテキスト、歪んだテキスト。",
size='1664*928'
)
if response.status_code == 200:
print(json.dumps(response, ensure_ascii=False))
else:
print(f"HTTP ステータスコード: {response.status_code}")
print(f"エラーコード: {response.code}")
print(f"エラーメッセージ: {response.message}")
print("詳細については、ドキュメントをご参照ください: https://www.alibabacloud.com/help/ja/model-studio/error-code")レスポンス例
画像 URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"status_code": 200,
"request_id": "d2d1a8c0-325f-9b9d-8b90-xxxxxx",
"code": "",
"message": "",
"output": {
"text": null,
"finish_reason": null,
"choices": [
{
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": [
{
"image": "https://dashscope-result-wlcb.oss-cn-wulanchabu.aliyuncs.com/xxx.png?Expires=xxx"
}
]
}
}
],
"task_metric": {
"TOTAL": 1,
"FAILED": 0,
"SUCCEEDED": 1
}
},
"usage": {
"input_tokens": 0,
"output_tokens": 0,
"width": 1328,
"image_count": 1,
"height": 1328
}
}Java
DashScope SDK for Java の最新バージョンをインストールしていることを確認してください。そうでない場合、実行時エラーが発生する可能性があります。詳細については、「SDK のインストール」をご参照ください。
リクエスト例
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;
public class QwenImage {
static {
// 次の base_url はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
}
// シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
// 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:static String apiKey="sk-xxx"
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void call() throws ApiException, NoApiKeyException, UploadFileException, IOException {
MultiModalConversation conv = new MultiModalConversation();
MultiModalMessage userMessage = MultiModalMessage.builder().role(Role.USER.getValue())
.content(Arrays.asList(
Collections.singletonMap("text", "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。")
)).build();
Map<String, Object> parameters = new HashMap<>();
parameters.put("watermark", false);
parameters.put("prompt_extend", true);
parameters.put("negative_prompt", "低解像度、低品質、変形した手足、変形した指、彩度が高すぎる、ワックス状、顔のディテールがない、滑らかすぎる、AI のよう、混沌とした構図、ぼやけたテキスト、歪んだテキスト。");
parameters.put("size", "1664*928");
MultiModalConversationParam param = MultiModalConversationParam.builder()
.apiKey(apiKey)
.model("qwen-image-max")
.messages(Collections.singletonList(userMessage))
.parameters(parameters)
.build();
MultiModalConversationResult result = conv.call(param);
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args) {
try {
call();
} catch (ApiException | NoApiKeyException | UploadFileException | IOException e) {
System.out.println(e.getMessage());
}
System.exit(0);
}
レスポンス例
画像 URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"requestId": "5b6f2d04-b019-40db-a5cc-xxxxxx",
"usage": {
"image_count": 1,
"width": 1328,
"height": 1328
},
"output": {
"choices": [
{
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": [
{
"image": "https://dashscope-result-wlcb.oss-cn-wulanchabu.aliyuncs.com/xxx.png?Expires=xxx"
}
]
}
}
]
}
}非同期 API
現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
HTTP 呼び出し
Qwen-Image は非同期 API もサポートしています。HTTP 呼び出しのフローは 2 つのステップで構成されます:
タスクを作成してタスク ID を取得する:タスクを作成するためのリクエストを送信します。レスポンスはタスク ID (task_id) を返します。
タスク ID を使用して結果を照会する:task_id を使用してタスクのステータスをポーリングし、タスクが完了して画像 URL を取得するまで続けます。
ステップ 1:タスクを作成してタスク ID を取得する
シンガポール: POST https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis
中国 (北京): POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis
タスクが作成された後、返された
task_idを使用して結果を照会します。`task_id` は 24 時間有効です。重複したタスクを作成しないでください。代わりに、ポーリングを使用して結果を取得してください。
リクエストパラメーター | Text-to-Image現在、 |
リクエストヘッダー | |
Content-Type リクエストのコンテンツタイプ。このパラメーターを | |
Authorization 認証情報。この API は Model Studio API キーを認証に使用します。例:`Bearer sk-xxxx`。 | |
X-DashScope-Async このパラメーターは非同期処理を設定するために使用されます。HTTP リクエストは非同期処理のみをサポートするため、このパラメーターを 重要 このリクエストヘッダーを含めないと、「current user api does not support synchronous calls」というエラーメッセージが返されます。 | |
リクエストボディ | |
model モデル名。現在、 例: | |
input プロンプトなどの基本的な入力情報。 | |
parameters 画像処理パラメーター。 |
レスポンスパラメーター | 成功レスポンス`task_id` を保存して、タスクのステータスと結果を照会します。 エラーレスポンスタスクの作成に失敗しました。詳細については、「エラーメッセージ」を参照して問題を解決してください。 |
output タスクの出力情報。 | |
request_id 一意のリクエスト ID。この ID を使用して問題を追跡およびトラブルシューティングできます。 | |
code エラーコード。このパラメーターはリクエストが失敗した場合にのみ返されます。詳細については、「エラーメッセージ」をご参照ください。 | |
message 詳細なエラーメッセージ。このパラメーターはリクエストが失敗した場合にのみ返されます。詳細については、「エラーメッセージ」をご参照ください。 |
ステップ 2:タスク ID を使用して結果を照会する
シンガポール: GET https://dashscope-intl.aliyuncs.com/api/v1/tasks/{task_id}
北京: GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
ポーリングの推奨:モデルの実行には約 15 秒かかります。3 秒などの合理的なクエリ間隔でポーリングメカニズムを使用して結果を取得することをお勧めします。実際の時間は、キュー内のタスク数とネットワーク条件によって異なります。
タスクステータスのフロー:PENDING (キュー内) -> RUNNING (処理中) -> SUCCEEDED (成功) / FAILED (失敗)。
結果リンク:タスクが成功すると、画像リンクが返されます。リンクの有効期間は 24 時間です。画像を速やかにダウンロードし、Object Storage Service (OSS) などのストレージスペースに転送する必要があります。
リクエストパラメーター | タスク結果の照会
API キーはリージョン固有です。API キーの取得。 北京リージョンのモデルの場合、base_url を https://dashscope.aliyuncs.com/api/v1/tasks/86ecf553-d340-4e21-xxxxxxxxx に置き換えてください |
リクエストヘッダー | |
Authorization 認証情報。この API は Model Studio API キーを認証に使用します。例:`Bearer sk-xxxx`。 | |
URL パスパラメーター | |
task_id タスク ID。 |
レスポンスパラメーター | タスク成功タスクステータスや画像 URL などのタスクデータは 24 時間のみ保持され、その後自動的に消去されます。生成された画像は速やかに保存する必要があります。 タスク失敗タスクが失敗した場合、`task_status` は FAILED に設定され、エラーコードとメッセージが提供されます。詳細については、「エラーメッセージ」を参照して問題を解決してください。 |
output タスクの出力情報。 | |
usage 出力の使用状況統計。成功した結果のみがカウントされます。 | |
request_id 一意のリクエスト ID。この ID を使用して問題を追跡およびトラブルシューティングできます。 |
DashScope SDK
DashScope SDK は現在、Python と Java をサポートしています。
SDK のパラメーター名は、HTTP API のものとほぼ一致しています。パラメーター構造は、各言語の SDK 実装に依存します。非同期呼び出しのパラメーターの説明については、「HTTP 呼び出し」をご参照ください。
画像モデルは処理時間が長いため、基盤となるサービスは非同期です。SDK はこれを基に、次の 2 つの呼び出しモードを提供します:
同期呼び出し (ブロッキングモード):SDK はタスクが完了するのを自動的に待ち、最終結果を直接返します。呼び出し体験は、通常の同期呼び出しと一貫しています。
非同期呼び出し (非ブロッキングモード):呼び出しはすぐにタスク ID を返します。この ID を使用して、タスクのステータスと最終結果を照会する必要があります。
Python SDK
DashScope Python SDK の最新バージョンをインストールしていることを確認してください。そうでない場合、実行時エラーが発生する可能性があります:「SDK のインストール」。
同期呼び出し
リクエスト例
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
import dashscope
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
prompt = "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。"
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:api_key="sk-xxx"
api_key = os.getenv("DASHSCOPE_API_KEY")
print('----同期呼び出し、しばらくお待ちください----')
rsp = ImageSynthesis.call(api_key=api_key,
model="qwen-image-plus", # 現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
prompt=prompt,
negative_prompt=" ",
n=1,
size='1664*928',
prompt_extend=True,
watermark=False)
print(f'レスポンス: {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(f'sync_call に失敗しました, status_code: {rsp.status_code}, code: {rsp.code}, message: {rsp.message}')
レスポンス例
URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"status_code": 200,
"request_id": "a47b1a65-7041-4565-9068-xxxxxx",
"code": null,
"message": "",
"output": {
"task_id": "91093132-475e-43cf-b94e-xxxxxx",
"task_status": "SUCCEEDED",
"results": [
{
"url": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxxxxx",
"orig_prompt": "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。",
"actual_prompt": "子供時代をテーマにした手描きポスターデザイン:3 匹の遊び好きな子犬が、鮮やかな緑の芝生の上でカラフルなボールと楽しそうに戯れています。舞い飛ぶ鳥やきらめく星などの繊細な装飾要素が全体に散りばめられています。上部中央には、太字の青いカートゥーンスタイルのタイトル「ボールで遊ぼう!」が目立つように配置されています。その真下には、サブタイトル「さあ、[腕前を見せて]!」が陽気な緑色の文字で描かれています。子犬の 1 匹の近くにある気まぐれな吹き出しには、「へへ、次は僕が友達を驚かせる番だ!」という遊び心のあるテキストが含まれています。下端には、「また友達とボールで遊べるね!」という小さな補足テキストがあります。カラーパレットは、新鮮な緑と空色を中心に、明るいピンクと太陽のような黄色のポップな色でアクセントをつけ、陽気で子供らしい雰囲気を高めています。スタイルは、柔らかなテクスチャ、優しい線画、そして気まぐれな物語のような構図で、ノスタルジックな手描きイラストを彷彿とさせます。"
}
],
"submit_time": "2025-09-09 13:39:20.659",
"scheduled_time": "2025-09-09 13:39:20.717",
"end_time": "2025-09-09 13:39:45.233"
},
"usage": {
"image_count": 1
}
}非同期呼び出し
リクエスト例
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
import dashscope
import time
# 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
dashscope.base_http_api_url = 'https://dashscope.aliyuncs.com/api/v1'
prompt = "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。"
# シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
# 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:api_key="sk-xxx"
api_key = os.getenv("DASHSCOPE_API_KEY")
def async_call():
print('----タスクを作成中----')
task_info = create_async_task()
print('----タスクステータスをポーリング中----')
poll_task_status(task_info)
# 非同期タスクの作成
def create_async_task():
rsp = ImageSynthesis.async_call(api_key=api_key,
model="qwen-image-plus", # 現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
prompt=prompt,
negative_prompt=" ",
n=1,
size='1664*928',
prompt_extend=True,
watermark=False)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
else:
print(f'タスクの作成に失敗しました, status_code: {rsp.status_code}, code: {rsp.code}, message: {rsp.message}')
return rsp
# 非同期タスクのステータスをポーリングします。5 秒ごとにクエリし、最大 1 分間ポーリングします
def poll_task_status(task):
start_time = time.time()
timeout = 60 # 1 分のタイムアウト
while True:
# タイムアウトかどうかを確認
if time.time() - start_time > timeout:
print('ポーリングがタイムアウトしました (1 分)、タスクは完了していません')
return
# タスクステータスを取得
status_rsp = ImageSynthesis.fetch(task)
print(f'タスクステータスのクエリ結果: {status_rsp}')
if status_rsp.status_code != HTTPStatus.OK:
print(f'タスクステータスの取得に失敗しました, status_code: {status_rsp.status_code}, code: {status_rsp.code}, message: {status_rsp.message}')
return
task_status = status_rsp.output.task_status
print(f'現在のタスクステータス: {task_status}')
if task_status == 'SUCCEEDED':
print('タスクが完了しました、画像をダウンロード中...')
for result in status_rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open(f'./{file_name}', 'wb+') as f:
f.write(requests.get(result.url).content)
print(f'画像は次の名前で保存されました: {file_name}')
break
elif task_status == 'FAILED':
print(f'タスクの実行に失敗しました, status: {task_status}, code: {status_rsp.code}, message: {status_rsp.message}')
break
elif task_status == 'PENDING' or task_status == 'RUNNING':
print('タスクは進行中です、5 秒後に再度クエリを続行します...')
time.sleep(5)
else:
print(f'不明なタスクステータス: {task_status}、5 秒後に再度クエリを続行します...')
time.sleep(5)
# 非同期タスクをキャンセルします。PENDING 状態のタスクのみキャンセルできます
def cancel_task(task):
rsp = ImageSynthesis.cancel(task)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
print(rsp.output.task_status)
else:
print(f'タスクのキャンセルに失敗しました, status_code: {rsp.status_code}, code: {rsp.code}, message: {rsp.message}')
if __name__ == '__main__':
async_call()
レスポンス例
1. タスク作成のレスポンス例
{
"status_code": 200,
"request_id": "31b04171-011c-96bd-ac00-xxxxxx",
"code": "",
"message": "",
"output": {
"task_id": "4f90cf14-a34e-4eae-xxxxxxxx",
"task_status": "PENDING",
"results": []
},
"usage": null
}2. タスク結果照会のレスポンス例
URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"status_code": 200,
"request_id": "a47b1a65-7041-4565-9068-xxxxxx",
"code": null,
"message": "",
"output": {
"task_id": "91093132-475e-43cf-b94e-xxxxxx",
"task_status": "SUCCEEDED",
"results": [
{
"url": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxxxxx",
"orig_prompt": "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。",
"actual_prompt": "子供時代をテーマにした手描きポスターデザイン:3 匹の遊び好きな子犬が、鮮やかな緑の芝生の上でカラフルなボールと楽しそうに戯れています。舞い飛ぶ鳥やきらめく星などの繊細な装飾要素が全体に散りばめられています。上部中央には、太字の青いカートゥーンスタイルのタイトル「ボールで遊ぼう!」が目立つように配置されています。その真下には、サブタイトル「さあ、[腕前を見せて]!」が陽気な緑色の文字で描かれています。子犬の 1 匹の近くにある気まぐれな吹き出しには、「へへ、次は僕が友達を驚かせる番だ!」という遊び心のあるテキストが含まれています。下端には、「また友達とボールで遊べるね!」という小さな補足テキストがあります。カラーパレットは、新鮮な緑と空色を中心に、明るいピンクと太陽のような黄色のポップな色でアクセントをつけ、陽気で子供らしい雰囲気を高めています。スタイルは、柔らかなテクスチャ、優しい線画、そして気まぐれな物語のような構図で、ノスタルジックな手描きイラストを彷彿とさせます。"
}
],
"submit_time": "2025-09-09 13:39:20.659",
"scheduled_time": "2025-09-09 13:39:20.717",
"end_time": "2025-09-09 13:39:45.233"
},
"usage": {
"image_count": 1
}
}Java SDK
DashScope SDK for Java の最新バージョンをインストールしていることを確認してください。そうでない場合、実行時エラーが発生する可能性があります。詳細については、「SDK のインストール」をご参照ください。
同期呼び出し
リクエスト例
// 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.HashMap;
import java.util.Map;
public class Text2Image {
static {
// 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
Constants.baseHttpApiUrl = "https://dashscope-intl.aliyuncs.com/api/v1";
}
// シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
// 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:static String apiKey = "sk-xxx"
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public static void basicCall() throws ApiException, NoApiKeyException {
String prompt = "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。";
Map<String, Object> parameters = new HashMap<>();
parameters.put("prompt_extend", true);
parameters.put("watermark", false);
parameters.put("negative_prompt", " ");
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(apiKey)
// 現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
.model("qwen-image-plus")
.prompt(prompt)
.n(1)
.size("1664*928")
.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));
}
public static void main(String[] args){
try{
basicCall();
}catch(ApiException|NoApiKeyException e){
System.out.println(e.getMessage());
}
}
}
レスポンス例
URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"request_id": "9f3044ba-528f-4606-8830-xxxxxx",
"output": {
"task_id": "fecf4c7f-3508-45f4-8454-xxxxxx",
"task_status": "SUCCEEDED",
"results": [
{
"orig_prompt": "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。",
"actual_prompt": "子供時代をテーマにした手描きポスターデザイン:3 匹の遊び好きな子犬が、鮮やかな緑の芝生の上でカラフルなボールと楽しそうに戯れています。舞い飛ぶ鳥やきらめく星などの繊細な装飾要素が全体に散りばめられています。上部中央には、太字の青いカートゥーンスタイルのタイトル「ボールで遊ぼう!」が目立つように配置されています。その真下には、サブタイトル「さあ、[腕前を見せて]!」が陽気な緑色の文字で描かれています。子犬の 1 匹の近くにある気まぐれな吹き出しには、「へへ、次は僕が友達を驚かせる番だ!」という遊び心のあるテキストが含まれています。下端には、「また友達とボールで遊べるね!」という小さな補足テキストがあります。カラーパレットは、新鮮な緑と空色を中心に、明るいピンクと太陽のような黄色のポップな色でアクセントをつけ、陽気で子供らしい雰囲気を高めています。スタイルは、柔らかなテクスチャ、優しい線画、そして気まぐれな物語のような構図で、ノスタルジックな手描きイラストを彷彿とさせます。",
"url": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxxx"
}
]
},
"usage": {
"image_count": 1
}
}非同期呼び出し
リクエスト例
// 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.util.HashMap;
import java.util.Map;
public class Text2Image {
static {
// 次の URL はシンガポールリージョン用です。中国 (北京) リージョンのモデルを使用する場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください
Constants.baseHttpApiUrl = "https://dashscope.aliyuncs.com/api/v1";
}
// シンガポールリージョンと中国 (北京) リージョンの API キーは異なります。API キーを取得するには、https://www.alibabacloud.com/help/ja/model-studio/get-api-key をご参照ください
// 環境変数を設定していない場合は、次の行をご利用の Model Studio API キーに置き換えてください:static String apiKey = "sk-xxx"
static String apiKey = System.getenv("DASHSCOPE_API_KEY");
public void asyncCall() {
System.out.println("---タスクを作成中----");
String taskId = this.createAsyncTask();
System.out.println("--タスクが完了し、画像 URL が返されるのを待機中----");
this.waitAsyncTask(taskId);
}
public String createAsyncTask() {
String prompt = "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。";
Map<String, Object> parameters = new HashMap<>();
parameters.put("prompt_extend", true);
parameters.put("watermark", false);
parameters.put("negative_prompt", " ");
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(apiKey)
// 現在、qwen-image-plus および qwen-image モデルのみが非同期 API 呼び出しをサポートしています。
.model("qwen-image-plus")
.prompt(prompt)
.n(1)
.size("1664*928")
.parameters(parameters)
.build();
try {
ImageSynthesisResult result = new ImageSynthesis().asyncCall(param);
System.out.println(JsonUtils.toJson(result));
String taskId = result.getOutput().getTaskId();
System.out.println("task_id=" + taskId);
return taskId;
} catch (Exception e) {
throw new RuntimeException(e.getMessage());
}
}
public void waitAsyncTask(String taskId) {
ImageSynthesis imageSynthesis = new ImageSynthesis();
long startTime = System.currentTimeMillis();
int timeout = 60 * 1000; // 1 分のタイムアウト
int interval = 5 * 1000; // 5 秒のポーリング間隔
while (true) {
if (System.currentTimeMillis() - startTime > timeout) {
System.out.println("ポーリングがタイムアウトしました (1 分)、タスクは完了していません");
return;
}
try {
ImageSynthesisResult result = imageSynthesis.fetch(taskId, apiKey);
System.out.println("タスクステータスのクエリ結果: " + JsonUtils.toJson(result));
if (result.getOutput() == null) {
System.out.println("タスクステータスの取得に失敗しました、出力が空です");
return;
}
String taskStatus = result.getOutput().getTaskStatus();
System.out.println("現在のタスクステータス: " + taskStatus);
switch (taskStatus) {
case "SUCCEEDED":
System.out.println("タスクが完了しました");
System.out.println(JsonUtils.toJson(result));
return;
case "FAILED":
System.out.println("タスクの実行に失敗しました, status: " + taskStatus);
return;
case "PENDING":
case "RUNNING":
System.out.println("タスクは進行中です、5 秒後に再度クエリします...");
Thread.sleep(interval);
break;
default:
System.out.println("不明なタスクステータス: " + taskStatus + "、5 秒後に再度クエリします...");
Thread.sleep(interval);
break;
}
} catch (ApiException | NoApiKeyException e) {
System.err.println("API 呼び出し例外: " + e.getMessage());
return;
} catch (InterruptedException e) {
System.err.println("スレッド割り込み例外: " + e.getMessage());
Thread.currentThread().interrupt();
return;
}
}
}
public static void main(String[] args){
Text2Image text2Image = new Text2Image();
text2Image.asyncCall();
}
}レスポンス例
1. タスク作成のレスポンス例
{
"request_id": "5dbf9dc5-4f4c-9605-85ea-542f97709ba8",
"output": {
"task_id": "7277e20e-aa01-4709-xxxxxxxx",
"task_status": "PENDING"
}
}2. タスク結果照会のレスポンス例
URL の有効期間は 24 時間です。画像を速やかにダウンロードしてください。
{
"request_id": "9f3044ba-528f-4606-8830-xxxxxx",
"output": {
"task_id": "fecf4c7f-3508-45f4-8454-xxxxxx",
"task_status": "SUCCEEDED",
"results": [
{
"orig_prompt": "ヒーリングスタイルの手描きポスター。緑豊かな芝生の上でボールで遊ぶ 3 匹の子犬が描かれ、鳥や星などの装飾要素が添えられています。メインタイトル「ボールで遊ぼう!」が、太字の青いカートゥーンフォントで上部に目立つように表示されています。その下には、サブタイトル「さあ、[腕前を見せて]!」が緑色のフォントで表示されています。吹き出しには「へへ、次は僕が友達を驚かせる番だ!」というテキストがあり、遊び心のある魅力を加えています。下部には、「また友達とボールで遊べるね!」という補足テキストがあります。カラーパレットは、新鮮な緑と青を中心に、明るいピンクと黄色のトーンでアクセントをつけ、陽気で子供らしい雰囲気を強調しています。",
"actual_prompt": "子供時代をテーマにした手描きポスターデザイン:3 匹の遊び好きな子犬が、鮮やかな緑の芝生の上でカラフルなボールと楽しそうに戯れています。舞い飛ぶ鳥やきらめく星などの繊細な装飾要素が全体に散りばめられています。上部中央には、太字の青いカートゥーンスタイルのタイトル「ボールで遊ぼう!」が目立つように配置されています。その真下には、サブタイトル「さあ、[腕前を見せて]!」が陽気な緑色の文字で描かれています。子犬の 1 匹の近くにある気まぐれな吹き出しには、「へへ、次は僕が友達を驚かせる番だ!」という遊び心のあるテキストが含まれています。下端には、「また友達とボールで遊べるね!」という小さな補足テキストがあります。カラーパレットは、新鮮な緑と空色を中心に、明るいピンクと太陽のような黄色のポップな色でアクセントをつけ、陽気で子供らしい雰囲気を高めています。スタイルは、柔らかなテクスチャ、優しい線画、そして気まぐれな物語のような構図で、ノスタルジックな手描きイラストを彷彿とさせます。",
"url": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxxx"
}
]
},
"usage": {
"image_count": 1
}
}課金とレート制限
無料クォータと価格については、「モデル価格」をご参照ください。
モデルのレート制限については、「Qwen (Qwen-Image)」をご参照ください。
課金:正常に生成された画像の数に基づいて課金されます。モデル呼び出しの失敗や処理エラーは、料金が発生したり、無料クォータを消費したりすることはありません。
画像アクセス構成
生成された画像は Alibaba Cloud OSS に保存されます。各画像には、https://dashscope-result-xx.oss-cn-xxxx.aliyuncs.com/xxx.png のような OSS リンクが割り当てられます。OSS リンクはパブリックアクセスを許可し、画像を表示またはダウンロードするために使用できます。リンクの有効期間は 24 時間のみです。
ビジネスで高いセキュリティ要件があり、Alibaba Cloud OSS リンクにアクセスできない場合は、パブリックアクセス用のホワイトリストを設定する必要があります。画像リンクにアクセスするには、次のドメイン名をホワイトリストに追加してください。
# OSS ドメイン名リスト
dashscope-result-bj.oss-cn-beijing.aliyuncs.com
dashscope-result-hz.oss-cn-hangzhou.aliyuncs.com
dashscope-result-sh.oss-cn-shanghai.aliyuncs.com
dashscope-result-wlcb.oss-cn-wulanchabu.aliyuncs.com
dashscope-result-zjk.oss-cn-zhangjiakou.aliyuncs.com
dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com
dashscope-result-hy.oss-cn-heyuan.aliyuncs.com
dashscope-result-cd.oss-cn-chengdu.aliyuncs.com
dashscope-result-gz.oss-cn-guangzhou.aliyuncs.com
dashscope-result-wlcb-acdr-1.oss-cn-wulanchabu-acdr-1.aliyuncs.comエラーコード
呼び出しが失敗した場合は、「エラーメッセージ」を参照してトラブルシューティングを行ってください。
よくある質問
Q:prompt_extend を有効にするべきですか、無効にするべきですか?
A:入力プロンプトが単純な場合や、モデルに創造性をより発揮させたい場合は、このパラメーターを有効 (デフォルト設定) のままにしてください。プロンプトがすでに詳細で専門的である場合や、API レスポンスのレイテンシに厳しい要件がある場合は、`false` に設定してください。
Q:qwen-image、qwen-image-plus、qwen-image-max、qwen-image-edit モデルの違いは何ですか?
A:
Text-to-Image モデル:テキスト記述から画像を生成します。
qwen-image-maxとqwen-image-max-2025-12-30:現在、両モデルは同じ機能を持ちます。qwen-image-plusと比較して、生成される画像のリアリズムと自然さが向上し、キャラクターのテクスチャ、詳細なディテール、テキストのレンダリング性能が優れています。qwen-imageとqwen-image-plus:現在、両モデルは同じ機能を持ちますが、qwen-image-plusの方がコスト効率が高いです。qwen-image-plus-2026-01-09:Qwen 画像生成モデルの新しいスナップショットバージョンです。qwen-image-maxの蒸留・高速化版であり、高品質な画像の迅速な生成をサポートします。
画像編集モデル:
qwen-image-edit:入力画像とテキスト命令に基づいて、画像から画像への生成や局所的な修正などの操作を実行します。詳細については、「Qwen - 画像編集」をご参照ください。
