action=generate,不要传 input_images。图生图或图片编辑设置
action=edit,提供 1~16 张 Base64 来源图。两类模型共用任务状态,但完成后的
result 保持各自原生格式。
提交前先固定重试身份
可能发生网络重试的任务应携带稳定的幂等键:task_id,响应头包含 Idempotent-Replayed: true;同一个键对应不同请求时返回
HTTP 409。业务记录中应同时保存幂等键与任务 ID。
请求字段怎么填
当前两个逆向 GPT Image 接口不公开蒙版、透明背景、输出格式、压缩、
n>1
或 partial image 流。
202 之后如何处理
202 表示任务已保存并预扣预计费用,不表示图片已经生成。使用同一账号查询
GET /v1/tasks/{task_id},看到终态后停止轮询:
Gemini 与 GPT Image 的结果不同
Nano Banana 的result 是 Gemini GenerateContentResponse。遍历
result.candidates[].content.parts[] 查找 inlineData。如果上游声明的 MIME 与
图片字节不一致,网关会在原位置修正 inlineData.mimeType,不会丢掉其他 Gemini
字段。
GPT Image 的 result 保持 OpenAI Images 结构,从
result.data[].b64_json 读取图片;网关不会额外添加 mime_type。当前两个逆向
接口每次返回一张 Base64 PNG。
结果保留与账号隔离
成功任务包含result_expires_at,图片结果从完成起保留 24 小时。到期后查询只会
得到 expired,不会继续返回旧 Base64。查询响应带 Cache-Control: no-store,
客户端仍应及时把结果转存到自己的存储。
只有创建任务的账号可以查询;任务不存在或属于其他账号时都返回 HTTP 404。
当前没有公开取消、回调或任务列表恢复接口。来源图只进入任务私有状态,并在任务
进入终态后清除。
查看提交结构
核对请求分支、幂等头和 HTTP 响应。
实现安全轮询
加入 Retry-After、截止时间、退避与原生结果解析。
理解费用变化
区分预扣、结算、失败返还与幂等重放。
了解任务数据
查看上游传输、任务私有状态和结果保留期。