返回模型调用 API 参考GPT Image 蒙版局部编辑
向编辑接口同时上传原图和带透明通道的 PNG 蒙版,指定希望修改的区域,适合替换物体、调整背景和局部重绘。
API Key multipart/form-data 功能、模型与蒙版规则
支持 GPT Image 2.5 Sunburst、2.5 Flare、2、1.5 和 1。蒙版是编辑区域提示,不是像素级的锁定保证;请在 prompt 中同时描述修改区域与要保留的主体。
原图可为 PNG、JPEG 或 WebP,小于 50 MB。蒙版必须为 PNG、小于 4 MB,宽高与原图完全相同,并带 alpha 通道。alpha 为 0 的完全透明区域表示需要修改,其他区域表示希望保留;一张普通黑白图并不等价于透明蒙版。不要把这些规则与输出参数 background=transparent 混淆。
上传多张图片时,蒙版只应用于第一张,所有输入总数不超过 16。本例只上传 input.png 和 mask.png;这两个文件名都需要换成你的实际文件。
第一步:设置鉴权
请求头使用 Authorization: Bearer YOUR_API_KEY。将 YOUR_API_KEY 替换为青云TOP API 的 API Key,保留 Bearer 后的一个空格。基础地址为 https://top.qingyuntop.ai;使用 SDK 时,base_url 通常填写 https://top.qingyuntop.ai/v1。
第二步:提交原图与蒙版
发送 POST https://top.qingyuntop.ai/v1/images/edits,使用 multipart/form-data。客户端自动生成 boundary,不手写 Content-Type。
Images API 兼容协议
调用与返回说明
使用青云TOP API 的 Images 兼容入口生成或编辑图片。它复用 OpenAI Images 的请求形状,但页面中的厂商型号、别名和能力仍需按本站当前模型目录核对。
请求时注意
- 请求头使用 Authorization: Bearer YOUR_API_KEY 和页面声明的 Content-Type。路径中的厂商名称不改变青云TOP API 的鉴权方式,也不要求客户端携带厂商密钥。
- 模型 ID、模型版本和后缀必须使用当前账号 GET /v1/models 返回且与本页协议匹配的值;旧示例中的固定型号不能视为永久可用。
- 生成接口通常将 prompt、model、size/比例和输出格式放在 JSON Body;编辑接口还要按 schema 传入 image、mask 或多图素材。不要把 multipart 字段拼进 JSON。
- 如果请求包含图片 URL、Base64 或文件,先核对页面中的媒体类型、大小和数组顺序;上游支持某种素材不代表本站所有渠道都开放。
返回时注意
- 同步图片响应通常在 data、output 或等价字段中返回 URL、Base64 或图片对象;先检查 HTTP 状态和错误字段,再按返回格式保存结果。
- URL 可能有有效期,Base64 需要按响应中的格式解码。不要把示例 URL 当作永久存储地址,也不要把 Markdown 预览当作二进制文件。
Request
请求
/v1/images/editsBody
必填路径、查询与 Header 参数
| 参数 | 位置 | 类型 | 必填 | 说明 | 示例 |
|---|
Accept | Header | string | 是 | - | application/json |
Authorization | Header | string | 是 | 必填。使用青云TOP API 的 API Key,保留 Bearer 后的空格。 | Bearer YOUR_API_KEY |
Images API 兼容协议
调用与返回说明
使用青云TOP API 的 Images 兼容入口生成或编辑图片。它复用 OpenAI Images 的请求形状,但页面中的厂商型号、别名和能力仍需按本站当前模型目录核对。
请求时注意
- 请求头使用 Authorization: Bearer YOUR_API_KEY 和页面声明的 Content-Type。路径中的厂商名称不改变青云TOP API 的鉴权方式,也不要求客户端携带厂商密钥。
- 模型 ID、模型版本和后缀必须使用当前账号 GET /v1/models 返回且与本页协议匹配的值;旧示例中的固定型号不能视为永久可用。
- 生成接口通常将 prompt、model、size/比例和输出格式放在 JSON Body;编辑接口还要按 schema 传入 image、mask 或多图素材。不要把 multipart 字段拼进 JSON。
- 如果请求包含图片 URL、Base64 或文件,先核对页面中的媒体类型、大小和数组顺序;上游支持某种素材不代表本站所有渠道都开放。
返回时注意
- 同步图片响应通常在 data、output 或等价字段中返回 URL、Base64 或图片对象;先检查 HTTP 状态和错误字段,再按返回格式保存结果。
- URL 可能有有效期,Base64 需要按响应中的格式解码。不要把示例 URL 当作永久存储地址,也不要把 Markdown 预览当作二进制文件。
蒙版编辑示例
点击横向标签切换语言。cURL 示例使用 Bash,需支持 --fail-with-body;Python 需安装 requests;Node.js 需 20 或更新版本,保存为 .mjs。示例超时设为 600 秒,是客户端设置,不是生成时限承诺。Python/Node.js 将结果保存为 output-1.png 等文件;cURL 保存为 response.json,按结果保存解码。
curl --fail-with-body --connect-timeout 30 --max-time 600 "https://top.qingyuntop.ai/v1/images/edits" \
-H "Authorization: Bearer YOUR_API_KEY" \
--form-string 'model=gpt-image-2' \
--form-string 'prompt=把蒙版透明区域内的物体替换为一盆绿色植物,尽量保持其余构图、光线和主体一致。' \
--form-string 'n=1' \
--form-string 'size=1024x1024' \
--form-string 'quality=high' \
--form-string 'output_format=png' \
-F 'image=@input.png;type=image/png' \
-F 'mask=@mask.png;type=image/png' \
--output response.json
响应与效果检查
结果通过 data[].b64_json 返回,示例会保存最终 PNG。检查局部修改是否满足需求,同时检查蒙版外的主体、文字和构图;需要严格像素不变的场景,应在应用中对原图和生成图进行后续合成。
JSON 方式的蒙版应放在 mask.image_url,输入图片放在 images[].image_url。具体字段见JSON 图片编辑,不要把 multipart 的文件字段直接放入 JSON。
常见错误与参考
蒙版无效时检查真实 PNG 编码、alpha 通道、体积和宽高;作用区域错误时检查透明区域是否画反,主图是否位于第一张。更多响应与超时处理见结果说明。
官方参考:OpenAI Images 蒙版定义。