影象(Image)
OpenAI 影象格式(Image)
官方文件
📝 簡介
給定文字提示和/或輸入圖片,模型將生成新的圖片。OpenAI 提供多種強大的影象生成模型,可以根據自然語言描述建立、編輯和修改影象。目前支援的模型包括:
| 模型 | 描述 |
|---|---|
| DALL·E 系列 | 包括 DALL·E 2 和 DALL·E 3 兩個版本,它們在影象質量、創意表現和精確度上都有顯著差異 |
| GPT-Image-1 | OpenAI最新圖片模型,支援多圖片編輯功能,能夠基於多個輸入影象建立新的組合影象 |
💡 請求示例
建立圖片 ✅
# 基礎圖片生成
curl https://88api.ai/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一隻可愛的小海獺",
"n": 1,
"size": "1024x1024"
}'
# 高質量圖片生成
curl https://88api.ai/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一隻可愛的小海獺",
"quality": "hd",
"style": "vivid",
"size": "1024x1024"
}'
# 使用 base64 返回格式
curl https://88api.ai/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
-d '{
"model": "dall-e-3",
"prompt": "一隻可愛的小海獺",
"response_format": "b64_json"
}'響應示例:
{
"created": 1589478378,
"data": [
{
"url": "https://...",
"revised_prompt": "一隻可愛的小海獺在水中嬉戲,它有著圓圓的眼睛和毛茸茸的皮毛"
}
]
}編輯圖片 ✅
# dall-e-2 圖片編輯
curl https://88api.ai/v1/images/edits \
-H "Authorization: Bearer $API_KEY" \
-F image="@otter.png" \
-F mask="@mask.png" \
-F prompt="一隻戴著貝雷帽的可愛小海獺" \
-F n=2 \
-F size="1024x1024"
# gpt-image-1 多圖片編輯示例
curl https://88api.ai/v1/images/edits \
-H "Authorization: Bearer $API_KEY" \
-F "model=gpt-image-1" \
-F "image[]=@body-lotion.png" \
-F "image[]=@bath-bomb.png" \
-F "image[]=@incense-kit.png" \
-F "image[]=@soap.png" \
-F "prompt=建立一個包含這四個物品的精美禮品籃" \
-F "quality=high"響應示例 (dall-e-2):
{
"created": 1589478378,
"data": [
{
"url": "https://..."
},
{
"url": "https://..."
}
]
}響應示例 (gpt-image-1):
{
"created": 1713833628,
"data": [
{
"b64_json": "..."
}
],
"usage": {
"total_tokens": 100,
"input_tokens": 50,
"output_tokens": 50,
"input_tokens_details": {
"text_tokens": 10,
"image_tokens": 40
}
}
}生成圖片變體 ✅
curl https://88api.ai/v1/images/variations \
-H "Authorization: Bearer $API_KEY" \
-F image="@otter.png" \
-F n=2 \
-F size="1024x1024"響應示例:
{
"created": 1589478378,
"data": [
{
"url": "https://..."
},
{
"url": "https://..."
}
]
}📮 請求
端點
建立圖片
POST /v1/images/generations根據文字提示建立圖片。
編輯圖片
POST /v1/images/edits根據一個或多個原始圖片和提示建立編輯或擴充套件的圖片。此端點支援 dall-e-2 和 gpt-image-1 模型。
生成變體
POST /v1/images/variations建立給定圖片的變體。
鑑權方法
在請求頭中包含以下內容進行 API 金鑰認證:
Authorization: Bearer $API_KEY其中 $OPENAI_API_KEY 是您的 API 金鑰。
請求體引數
建立圖片
prompt
- 型別:字串
- 必需:是
- 說明:期望生成圖片的文字描述。
- dall-e-2 最大長度為 1000 字元
- dall-e-3 最大長度為 4000 字元
- 提示:
- 使用具體和詳細的描述
- 包含關鍵的視覺元素
- 指定期望的藝術風格
- 描述構圖和視角
model
- 型別:字串
- 必需:否
- 預設值:dall-e-2
- 說明:用於影象生成的模型。
n
- 型別:整數或 null
- 必需:否
- 預設值:1
- 說明:要生成的圖片數量。必須在 1-10 之間。dall-e-3 僅支援 n=1。
quality
- 型別:字串
- 必需:否
- 預設值:standard
- 說明:生成圖片的質量。hd 選項會生成更細緻和一致的圖片。僅 dall-e-3 支援此引數。
response_format
- 型別:字串或 null
- 必需:否
- 預設值:url
- 說明:返回生成圖片的格式。必須是 url 或 b64_json 之一。URL 在生成後 60 分鐘內有效。
size
- 型別:字串或 null
- 必需:否
- 預設值:1024x1024
- 說明:生成圖片的尺寸。dall-e-2 必須是 256x256、512x512 或 1024x1024 之一。dall-e-3 必須是 1024x1024、1792x1024 或 1024x1792 之一。
style
- 型別:字串或 null
- 必需:否
- 預設值:vivid
- 說明:生成圖片的風格。必須是 vivid 或 natural 之一。vivid 傾向於生成超現實和戲劇性的圖片,natural 傾向於生成更自然、不那麼超現實的圖片。僅 dall-e-3 支援此引數。
user
- 型別:字串
- 必需:否
- 說明:代表終端使用者的唯一識別符號,可幫助 OpenAI 監控和檢測濫用行為。
編輯圖片
image
- 型別:檔案或檔案陣列
- 必需:是
- 說明:要編輯的圖片。
- 對於 dall-e-2:必須是有效的 PNG 檔案,小於 4MB,且為正方形。如果未提供 mask,圖片必須具有透明度,這將用作蒙版。
- 對於 gpt-image-1:可以提供多個圖片作為陣列,每個圖片應為 PNG、WEBP 或 JPG 檔案,小於 25MB。
prompt
- 型別:字串
- 必需:是
- 說明:期望生成圖片的文字描述。
- dall-e-2 最大長度為 1000 字元
- gpt-image-1 最大長度為 32000 字元
mask
- 型別:檔案
- 必需:否
- 說明:額外的圖片,其完全透明區域(如 alpha 為零的區域)指示應該編輯的位置。如果提供了多個圖片,mask 將應用於第一張圖片。必須是有效的 PNG 檔案,小於 4MB,且與 image 具有相同尺寸。
model
- 型別:字串
- 必需:否
- 預設值:dall-e-2
- 說明:用於影象生成的模型。支援 dall-e-2 和 gpt-image-1。除非使用了 gpt-image-1 特有的引數,否則預設為 dall-e-2。
quality
- 型別:字串或 null
- 必需:否
- 預設值:auto
- 說明:生成圖片的質量。
- gpt-image-1 支援 high、medium 和 low
- dall-e-2 僅支援 standard
- 預設為 auto
size
- 型別:字串或 null
- 必需:否
- 預設值:1024x1024
- 說明:生成圖片的尺寸。
- gpt-image-1 必須是 1024x1024、1536x1024(橫版)、1024x1536(豎版)或 auto(預設)之一
- dall-e-2 必須是 256x256、512x512 或 1024x1024 之一
其他引數與建立圖片介面相同。
生成變體
image
- 型別:檔案
- 必需:是
- 說明:作為變體基礎的圖片。必須是有效的 PNG 檔案,小於 4MB,且為正方形。
其他引數與建立圖片介面相同。
📥 響應
成功響應
所有三個端點都返回包含圖片物件列表的響應。
created
- 型別:整數
- 說明:響應建立的時間戳
data
- 型別:陣列
- 說明:生成的圖片物件列表
usage(僅適用於 gpt-image-1)
- 型別:物件
- 說明:API 呼叫的令牌使用情況
total_tokens:使用的總令牌數input_tokens:輸入使用的令牌數output_tokens:輸出使用的令牌數input_tokens_details:輸入令牌的詳細資訊(文字令牌和影象令牌)
圖片物件
b64_json
- 型別:字串
- 說明:如果 response_format 為 b64_json,則包含生成圖片的 base64 編碼 JSON
url
- 型別:字串
- 說明:如果 response_format 為 url(預設),則包含生成圖片的 URL
revised_prompt
- 型別:字串
- 說明:如果提示有任何修改,則包含用於生成圖片的修改後的提示
示例圖片物件:
{
"url": "https://...",
"revised_prompt": "一隻可愛的小海獺在水中嬉戲,它有著圓圓的眼睛和毛茸茸的皮毛"
}🌟 最佳實踐
Prompt 編寫建議
- 使用清晰具體的描述
- 指定重要的視覺細節
- 描述期望的藝術風格和氛圍
- 注意構圖和視角的說明
引數選擇建議
-
模型選擇
- dall-e-3:適合需要高質量、精確細節的場景
- dall-e-2:適合快速原型或簡單影象生成
-
尺寸選擇
- 1024x1024:通用場景的最佳選擇
- 1792x1024/1024x1792:適合橫版/豎版場景
- 較小尺寸:適合縮圖或快速預覽
-
質量和風格
- quality=hd:用於需要精細細節的影象
- style=vivid:適合創意和藝術效果
- style=natural:適合真實場景再現
常見問題
-
圖片生成失敗
- 檢查 prompt 是否符合內容政策
- 確認檔案格式和大小限制
- 驗證 API 金鑰許可權
-
結果與預期不符
- 最佳化 prompt 描述
- 調整質量和風格引數
- 考慮使用圖片編輯或變體功能