YUYU_M4 圖生圖
YUYU_M4 依照文字指令(prompt)修改一張現有的圖片。可以用 width / height 設定圖片尺寸。
images 必填,只能放 1 張要修改的圖片,0 張或 2 張以上都會回傳 422。
POST /api/tasks/image-generation
X-Api-Key: sk-live-xxxx
Content-Type: application/json
Idempotency-Key: 選填,見下方說明
完整範例
images 要放 base64 格式的 data URI,支援 PNG、JPEG、WebP。範例中省略了實際的 base64 內容:
curl -X POST https://yuyuvideo.com/api/tasks/image-generation \
-H "X-Api-Key: sk-live-xxxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-20260716-00046" \
-d '{
"model": "YUYU_M4",
"prompt": "turn the background into a beach at sunset",
"images": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."],
"width": 1024,
"height": 1024,
"payload": { "external_order_id": "order-20260716-00046" },
"callback_url": "https://example.com/webhooks/yuyu-image"
}'
建立成功會回傳 201 Created 和任務資料。這時任務還在排隊,files 是空的。credits 是這次扣除的積分,範例中的數字僅供參考:
{
"public_id": "01K1M2N3P4Q5R6S7T8V9W0XY16",
"type": 2,
"status": 0,
"credits": 10,
"params": {
"model": "YUYU_M4",
"prompt": "turn the background into a beach at sunset",
"images": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."],
"width": 1024,
"height": 1024,
"payload": { "external_order_id": "order-20260716-00046" },
"callback_url": "https://example.com/webhooks/yuyu-image"
},
"error_code": null,
"error_message": null,
"created_at": "2026-07-16T08:00:00.000000Z",
"finished_at": null,
"files_expire_at": null,
"files_expired": false,
"files": []
}
接下來如何查詢進度、下載圖片,請見〈任務查詢與取件〉。
參數表
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
model |
string | 是 | 填 YUYU_M4 |
prompt |
string | 是 | 修改指令,最多 10000 字 |
images |
string[] | 是 | 只能放 1 張要修改的圖片,0 張或 2 張以上都會回傳 422。格式為 base64 data URI(data:image/{png|jpeg|webp};base64,...) |
width / height |
integer | 否 | 圖片寬度 / 高度,最大 1024 |
seed |
integer | 否 | 隨機種子,需為 0 以上的整數 |
resolution |
— | 否 | 不支援,請改用 width / height。帶了會回傳 422 |
payload |
object | 否 | 自訂資料,例如你的訂單編號。系統不會讀取或修改,查詢任務和 Webhook 通知時會原樣帶回 |
callback_url |
string | 否 | 任務結束時要通知的網址,需以 https:// 開頭,最多 2000 字。詳見〈回呼(Webhook)〉 |
model 填了不存在的模型會回傳 422:Unknown model alias: {model}。
表格沒有列出的參數(age_declared 除外,詳見〈生成前年齡檢查〉)帶了會回傳 422,不會被忽略。
Idempotency-Key
用來避免重複建立任務。在 header 帶上一組自訂字串,建議用你系統裡的訂單編號這類不會重複的值:
Idempotency-Key: order-20260711-00046
用同一把 API 金鑰、同一個 Idempotency-Key,在短時間內重複送出請求,只會建立一筆任務,也只扣一次積分。之後的重複請求會回傳 200 OK 和原本那筆任務。
不帶這個 header 的話,每次請求都會建立新任務。
錯誤情境
| 狀態碼 | 原因 | 回應內容 |
|---|---|---|
422 |
參數有誤,例如缺少必填欄位、型別錯誤、images 不是 1 張、width / height 超過 1024 |
errors 欄位會列出每個欄位的錯誤原因 |
422 |
model 填了不存在的模型 |
{ "message": "Unknown model alias: {model}" } |
402 |
積分不足 | { "message": "Insufficient credits to complete this charge." } |
429 |
排隊中的圖片任務太多 | { "message": "Too many pending tasks of this type; please retry later." }。可以依回應的 Retry-After header 決定多久後再試 |
扣款規則請見〈積分與計費〉。