Qwen Image 2512 API 快速入門:數分鐘內生成圖像 (2026)
你好,我是Dora。我曾經花費大量時間為產品建立圖像:尋找資產、調整大小、重新命名文件、整理文件夾……每一步都無休止地重複。這些工作都不難,但卻很繁瑣。後來,我試用了Qwen Image 2512 API,發現我可以用短短幾行代碼將所有工作自動化。
這不是廣告。我只是分享實際嘗試時發生的事情——什麼進行順利,我在哪裡遇到困難,以及我如何使其變得可靠實用。
WaveSpeed 快捷方式(如果你只想要結果)
如果你只想快速生成圖像,而不想自己構建所有內容:
- WaveSpeed 已經提供現成的 Qwen Image 2512 REST API(無冷啟動)。
- 使用 WaveSpeed 端點 + API 密鑰 → 完成。
- 如果你想了解官方 DashScope 流程(以及常見陷阱),請繼續閱讀。
這個 API 實際上能做什麼?
簡而言之:你輸入文字描述,它就給你一張圖像。
例如,如果你寫:
“一張整潔的桌子,上面有筆記本和植物,光線柔和”
幾秒鐘後,你會得到一張與你的描述相符的圖像——你可以自動將其保存到你的電腦。
它擅長做什麼:
- 製作情緒版
- 快速生成縮圖
- 為文檔添加佔位符圖像
- 為產品創建原型視覺效果
我注意到的情況:
第一次使用時,它似乎並不比手動尋找圖像快多少。但在跑了兩三次之後,我意識到我不再需要為”這個應該是多大?“或”我應該如何命名這個文件?“而煩惱。它為我節省的不僅是時間,還有精力。
圖像格式和存儲
- 格式: PNG,默認自動生成
- 圖像存儲位置:
- API 返回一個指向圖像的鏈接 (URL)
- 該鏈接指向阿里雲服務器
- 重要提示:該鏈接只在 24 小時內有效;之後就會過期
- 因此你需要及時將其下載到你的電腦
注意: API 不直接提供圖像文件。如果你想將其保存在本地,你需要在代碼中添加下載步驟(稍後會解釋)。
開始之前:你需要什麼
第 1 步:獲取帳戶和 API 密鑰
- 註冊阿里雲帳戶

- 前往模型工作室控制台
- 生成 API 密鑰(類似於證明你身份的密鑰)
- 將密鑰保存為名為
DASHSCOPE_API_KEY的環境變數
環境變數:
將其視為你電腦上的一個特殊位置,你的密鑰存儲在那裡,所以你的代碼可以自動找到它,而無需每次都複製粘貼。
提示:
- 對於測試,你可以將其存儲在
.env文件中 - 對於實際使用,安全的密鑰管理工具更安全
- 北京和新加坡地區有不同的密鑰——不要混淆它們
第 2 步:選擇一個工具
有三種主要方法,從最簡單的開始:

-
cURL(最簡單)
- 適合進行快速測試以查看 API 是否有效
- 無需編程,只需粘貼命令
- 建議第一次嘗試
-
Python(最常見)
- 適合為重複使用構建小工具
- 我使用官方 DashScope SDK 來自動處理許多細節
- 一些基礎 Python 知識有幫助
-
Node.js(對前端開發人員友好)
- 如果你是前端開發人員,這也可以使用
- 原理相同,儘管我這裡不會涵蓋它
先試試 Playground:
如果你只想快速測試結果,Wavespeed Playground 讓你可以在瀏覽器中生成圖像。非常適合偶爾使用。對於批量生成或自動化,請繼續閱讀以學習如何使用 API。
快速入門:使用 cURL 進行測試
打開你的終端 (Mac) 或命令提示符 (Windows) 並粘貼以下內容:
curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
"model": "qwen-image-max",
"input": {
"messages": [
{
"role": "user",
"content": [
{"text": "一張整潔的桌子,上面有筆記本和植物,光線柔和"}
]
}
]
},
"parameters": {
"size": "1024*1024"
}
}'
按 Enter 鍵,等待幾秒鐘,你會看到一個包含圖像鏈接的 JSON 響應。
我遇到的陷阱
- 模型名稱必須是
qwen-image-max,而不是qwen-image-2512或其他任何東西。 - 尺寸格式使用星號
1024*1024,而不是1024x1024。 - 對於新加坡地區,將 URL 更改為:
https://dashscope-intl.aliyuncs.com/api/v1/...
如果你要構建類似生產環境的東西,官方 DashScope 流程完全可行——但它附帶操作細節(區域、URL 有效期、重試)。這正是我喜歡使用 WaveSpeed 進行日常工作的原因:它在現成的 REST API 後面為我提供了 Qwen Image 2512,所以我可以專注於提示和輸出管理,而不是管道問題。

參數說明
必需
-
model
"qwen-image-max"是 Qwen-Image-2512 的官方名稱- 還有
"qwen-image-plus",類似但更便宜
-
input.messages
- 一個包含一個元素的數組
text是你的描述- 最多 800 個字符(約 400 個中文字符)
可選(省略時使用默認值)
-
parameters.size
1664*928(16:9 橫向)1472*1104(4:3)1328*1328(1:1 正方形,默認值)1104*1472(3:4 縱向)928*1664(9:16 縱向)
-
parameters.negative_prompt
- 你不想要的東西:例如,
"低分辨率、模糊、扭曲、過飽和" - 最多 500 個字符
- 你不想要的東西:例如,
-
parameters.prompt_extend
- 默認值為
true - 自動豐富你的描述
- 如果你想要嚴格控制,請將其關閉
- 默認值為
-
parameters.watermark
- 默認
false - 如果為
true,添加”Qwen-Image”水印
- 默認
-
parameters.seed
- 範圍
0–2147483647 - 相同的 seed + 相同的描述 = 相同的圖像
- 適合測試和比較結果
- 範圍
API 響應示例
{
"output": {
"choices": [
{
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": [
{
"image": "https://dashscope-result-sz.oss-cn-shenzhen.aliyuncs.com/xxx.png?Expires=xxxx"
}
]
}
}
]
},
"usage": {
"width": 1328,
"image_count": 1,
"height": 1328
},
"request_id": "xxx"
}
要點
- 圖像 URL:
output.choices[0].message.content[0].image - 檢查
finish_reason是否為"stop"以確認成功 - 鏈接持續 24 小時——及時下載
使用 Python 自動化
如果你想要批量生成或小工具:
import os
import time
import requests
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
API_KEY = os.getenv("DASHSCOPE_API_KEY")
ENDPOINT = "https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation"
HEADERS = {
"Content-Type": "application/json",
"Authorization": f"Bearer {API_KEY}",
}
def generate_image(prompt: str, size="1328*1328"):
payload = {
"model": "qwen-image-max",
"input": {
"messages": [{"role": "user", "content": [{"text": prompt}]}]
},
"parameters": {"size": size, "prompt_extend": True, "watermark": False}
}
r = requests.post(ENDPOINT, headers=HEADERS, json=payload, timeout=120)
r.raise_for_status()
data = r.json()
choices = data.get("output", {}).get("choices", [])
if not choices:
raise ValueError(f"No image generated:\n{data}")
content = choices[0].get("message", {}).get("content", [])
if not content:
raise ValueError(f"Empty content:\n{data}")
image_url = content[0].get("image")
if not image_url:
raise ValueError(f"No image URL:\n{data}")
img_response = requests.get(image_url)
img_response.raise_for_status()
file_name = PurePosixPath(unquote(urlparse(image_url).path)).parts[-1]
ts = int(time.time())
path = f"qwen_image_{ts}_{file_name}"
with open(path, "wb") as f:
f.write(img_response.content)
return path
if __name__ == "__main__":
output_path = generate_image("一張整潔的桌子,上面有筆記本和植物,光線柔和")
print("Image saved at:", output_path)
我在測試中學到的東西
- 錯誤的模型名稱會破壞它(
qwen-image-plus→qwen-image-max) - 錯誤的尺寸格式(
1328x1328而不是1328*1328) - 響應結構與文檔略有不同;檢查圖像 URL
- 忘記下載圖像會導致鏈接在 24 小時後過期
使用官方 SDK
import os
import json
from dashscope import MultiModalConversation
api_key = os.getenv("DASHSCOPE_API_KEY")
messages = [{"role": "user", "content": [{"text": "一張整潔的桌子,上面有筆記本和植物,光線柔和"}]}]
response = MultiModalConversation.call(
api_key=api_key,
model="qwen-image-max",
messages=messages,
result_format='message',
stream=False,
watermark=False,
prompt_extend=True,
size='1328*1328'
)
if response.status_code == 200:
print(json.dumps(response, ensure_ascii=False))
image_url = response.output.choices[0].message.content[0]['image']
print(f"Image URL: {image_url}")
else:
print(f"Error: {response.code} - {response.message}")
快速參數參考
| 參數 | 建議值 | 備註 |
|---|---|---|
| size | 1328*1328 | 正方形,平衡速度和質量 |
| prompt_extend | TRUE | 讓 AI 豐富你的描述 |
| seed | 固定數字 | 用於測試以比較結果 |
| negative_prompt | 根據需要 | 例如,“模糊、低質量、扭曲” |
何時更改 seed
- 固定 seed → 比較提示變化
- 不同的 seed → 生成多個不同的圖像
常見錯誤及修復
401 Unauthorized→ API 密鑰錯誤、區域錯誤或缺少圖像權限429 Rate limit→ 請求太多;添加延遲或升級配額- 超時 / 網絡問題 → 增加超時時間,立即下載
我添加的小改進
- 用於測試提示的固定 seed → 更容易比較結果
- 一致的文件命名:
{keyword}-{size}-{seed}.png - 配置文件管理:YAML 以避免硬編碼參數
這適合誰
Playground
- 偶爾生成圖像
- 快速提示測試
- 不需要自動化
API
- 批量生成
- 工具或產品集成
- 計劃或基於系統的使用
最終路徑(選擇適合你的)
路徑 A — 快速而實用
- 使用 WaveSpeed Playground API 來生成 Qwen Image 2512
- 最小化設置,現成的 REST 端點
路徑 B — 完全控制
- 如果你需要深度阿里雲集成,直接使用 DashScope
我喜歡在後台靜靜工作的工具。對於學習和理解,官方流程很棒。對於日常工作和更快地交付,WaveSpeed 為我節省了大量的麻煩。





