推荐优先使用异步生成接口
gpt-image-2、gpt-image-2-2K 和 gpt-image-2-4K 都支持同步生成与异步生成;耗时较长时推荐使用异步接口。
三个模型都可以调用图片生成和 URL 参考图创作推荐使用异步任务接口。异步任务能避免客户端长时间等待单个 HTTP 请求,也更适合并发提交、轮询和失败重试: 如果你使用 Codex、Claude Code 或 Cursor,不想手写请求和轮询代码,可以先打开 Agent 生图 Skill 安装页,复制对应命令后直接用自然语言生成并保存图片。POST /v1/images/generations。同步请求会在服务内部等待异步任务完成,客户端超时较短、批量并发或需要可靠轮询时,请改用POST /v1/images/generations/jobs。
不推荐:图片 Edit 接口
图片 Edit 接口不推荐调用,请使用异步生成接口。
不推荐新接入调用POST /v1/images/edits。需要参考图改图、换装、合成或多图创作时,请调用异步生成接口,并把图片 URL 或 Base64 放入 JSONimage或images数组。
/v1/images/edits 仅保留给必须使用 OpenAI multipart Edit 语义的旧客户端:
异步文生图
创建任务:succeeded,结果在 data 数组中;失败时状态为 failed,错误原因在 error.message。
轮询实现细节
图片任务的推荐接入方式是轮询。创建任务后,应用侧应把任务 ID 持久化,而不是只放在浏览器内存里。 建议保存这些字段:
推荐轮询节奏:
- 创建任务后立即查询一次,确认任务已记录。
- 前 30 秒每
2-3秒查询一次。 - 之后可放慢到每
5-10秒一次。 - 查询到
succeeded或failed后停止轮询。 - 页面关闭、刷新或用户稍后回来时,用已保存的任务 ID 继续查询。
异步参考图创作
远程图片应使用公网可访问的 OSS/CDN URL,并放入异步任务 JSON 的image 数组。需要多张网络 URL 做参考图创作、换装、合成或改图时,推荐直接使用 /v1/images/generations/jobs。
参考图数量限制
gpt-image-2-2K:最多8张参考图,传入9张或更多会返回“参考图过多”错误。gpt-image-2-4K:最多8张参考图,传入9张或更多会返回“参考图过多”错误。- 标准版
gpt-image-2的上限可能不同,不要在客户端把三个模型统一写死为8张;应根据所选模型处理接口返回。
image 或 images 数组中的图片数量计算,包含 URL 和 Base64 图片。建议在提交前显示已选数量,但最终限制以接口返回为准。
Base64 单图输入
本地参考图可以直接编码为 Base64,放入images 普通字符串数组。服务会流式解码并上传到临时 COS 存储,再把参考图 URL 传给渠道,不需要客户端先单独上传。
以下示例的 Base64 是输入参考图;response_format: "url" 表示输出仍返回图片 URL。
Base64 多图输入
多张参考图按顺序放入同一个images 数组,在 prompt 中说明各自用途:
data:image/png;base64,,WebP 使用 data:image/webp;base64,,GIF 使用 data:image/gif;base64,;前缀必须与实际图片格式一致。也支持不带前缀的标准 Base64。
提交成功返回 HTTP 202 和任务 id。使用返回的 ID 每隔约 5 秒查询一次:
succeeded 或 failed 后停止;成功时结果 URL 在 data[0].url。不要因为轮询超时而自动重新提交任务。
输入格式与上传限制
images支持普通字符串数组,也支持[{ "image_url": "data:image/jpeg;base64,..." }]对象数组;可混合 URL 和 Base64,保留输入顺序。image、image[]、images是参考图字段的兼容写法,一次请求只使用其中一种。- Base64 图片支持 PNG、JPEG、WebP、GIF。默认每张解码后最多
10 MiB,每次最多上传14张 Base64 图片、合计最多64 MiB,实际限制以服务配置为准。 - URL 参考图不占 Base64 上传数量,但总参考图数量仍受模型和渠道限制;
14张上传上限不代表所有模型都支持14张参考图。 - 同一请求中的重复图片分别上传,不会合并;未使用显式幂等键时,不同请求分别创建任务。
- 多图输入是多张参考图,不是生成多张结果图;Base64 输入与
response_format输出格式相互独立。
同步兼容调用
如果客户端必须兼容 OpenAI Images 的同步返回格式,可以继续使用:图片 URL 建议
- 图片地址必须公网可访问,且在请求期间不会过期。
- 大图建议先通过 OSS/CDN 图片处理 resize 到合适分辨率,例如长边
1024,再提交给模型。 - 多张参考图按语义顺序放入
image数组,并在 prompt 中说明每张图的用途。
常用参数
这里使用
format,不要写成 output_format。gpt-image-2 当前不支持 n 批量生成;一次请求只生成一张图片,需要多张结果时请发起多次请求。
分辨率档位
使用基础模型gpt-image-2 时,服务主要根据像素 size 的最长边选择模型和计费档位:
GPT Image 2 只使用
size 选择分辨率档位,其他图片档位兼容字段不参与选档。未传像素 size、使用 auto 或仅传画幅比例时,基础模型默认按 1K。
档位用于选择模型和计费。size 仍表示实际输出宽高,并继续受下方尺寸限制约束。
推荐尺寸
这些预设尺寸通常出图更快,接入时建议优先使用:尺寸限制
gpt-image-2-2K 与 gpt-image-2-4K 当前使用相同的尺寸边界。自定义尺寸时需要同时满足:
size使用WIDTHxHEIGHT格式,宽高均为正数。- 最大边长不超过
3840px。 - 宽高都是
16px的倍数。 - 长边与短边比例不超过
3:1。 - 总像素数不少于
655,360,且不超过8,294,400。
3840x2176 会因为总像素超限失败,3856x2048 会因为最长边超限失败,1936x640 会因为比例超过 3:1 失败,1024x1025 会因为不是 16 的倍数失败。
解析后的模型档位决定计费,size 决定实际输出尺寸和优先档位。
排查顺序
- 先跑纯文生图,确认模型可用。
- 再传一张 OSS/CDN 图片 URL。
- 单图正常后测试多图数组。
- 没有图片结果时,记录完整响应并确认图片字段位置。
- 浏览器、移动端或后端调用超时时,应改为异步任务模式,不要让页面或请求线程长时间等待单个同步请求。