外观
编辑图像
POST
https://vip.zen-ai.top/v1/images/edits上传一张或多张图片,用文字描述想要的修改。请求使用 multipart/form-data 格式。GPT Image 系列支持:
- 整体编辑:只传原图和提示词,例如换背景、改风格。
- 局部重绘:额外上传
mask(与原图同尺寸的 PNG,透明区域为要修改的部分)。 - 多图合成:传入多张参考图(字段名使用
image[]),例如「把这几件商品放进同一张礼盒图」。
请求体(multipart/form-data)
imagefile必填原图,支持 PNG / JPEG / WEBP。上传多张时字段名写作 image[],重复添加。
promptstring必填修改描述。
modelstring必填模型名称,如 gpt-image-1.5、gpt-image-2、gpt-image-1。
maskfile蒙版 PNG,透明(alpha 为 0)区域表示需要重绘的部分,尺寸须与原图一致。
ninteger默认 1生成数量。
sizestring1024x1024、1536x1024、1024x1536 或 auto。
qualitystringlow / medium / high / auto。
backgroundstringauto / transparent / opaque。
input_fidelitystringhigh / low,high 时更好地保留原图中的人脸、Logo 等细节(费用更高)。
output_formatstringpng / jpeg / webp。
响应
与 生成图像 相同,图片以 data[].b64_json 返回。
请求示例
bash
curl https://vip.zen-ai.top/v1/images/edits \
-H "Authorization: Bearer $VIP_API_KEY" \
-F "model=gpt-image-1.5" \
-F "[email protected]" \
-F "prompt=把背景换成海边的日落,人物保持不变" \
-F "size=1024x1024" \
| jq -r '.data[0].b64_json' | base64 --decode > edited.pngpython
import base64
from openai import OpenAI
client = OpenAI(base_url="https://vip.zen-ai.top/v1", api_key="sk-xxxxxxxx")
resp = client.images.edit(
model="gpt-image-1.5",
image=open("photo.png", "rb"),
prompt="把背景换成海边的日落,人物保持不变",
size="1024x1024",
)
with open("edited.png", "wb") as f:
f.write(base64.b64decode(resp.data[0].b64_json))python
resp = client.images.edit(
model="gpt-image-1.5",
image=[open("cup.png", "rb"), open("candle.png", "rb"), open("card.png", "rb")],
prompt="把这三件商品摆放进一个精致的礼盒中,白色背景,产品摄影风格",
)响应示例
json
{
"created": 1790684800,
"data": [{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zU..." }],
"usage": {
"input_tokens": 552,
"input_tokens_details": { "text_tokens": 28, "image_tokens": 524 },
"output_tokens": 1056,
"total_tokens": 1608
}
}