error.code 和 error.message。参数或鉴权错误不应原样重试。
错误响应通常采用:
常见 400 可以在发送前避免
- 2.5 模型必须省略
imageSize; - Lite 可省略尺寸,或使用大写
1K; - Flash 与 Pro 省略时按 1K,也可使用大写
1K、2K、4K; candidateCount省略或设为1;inlineData.data只放原始 Base64,不带 data URL 前缀;inlineData.mimeType必须与来源图片字节一致。
413 表示请求过大,不属于适合原样重试的临时错误。
GPT Image 常见参数错误
- 两个 GPT Image 接口都可使用
low、medium、high、auto,实际效果取决于所选上游; size明确传入1024x1024、2048x2048或3840x2160;n省略或设为1;- Edit 必须使用
multipart/form-data,上传一张image并提供提示词; - 异步生成或编辑统一提交到
/v1/images/tasks,并设置action=generate|edit; action=edit提供 1~16 个input_images,MIME 必须与文件字节一致;- 逆向图片接口固定
n=1,不要传蒙版、透明背景、输出格式或 partial image 流; - GPT 任务从原生
result.data[].b64_json读取;Nano Banana 从原生result.candidates[].content.parts[].inlineData读取。
异步提交超时不能直接判断失败
提交前生成最长 255 字节的Idempotency-Key,并与业务任务一起保存。相同请求重试时会返回原任务,不会重复创建计费任务;同一键配合不同请求体时返回 HTTP 409。当前没有用于找回丢失任务 ID 的列表接口,因此收到 HTTP 202 后应立即保存 task_id。
429 不是平台设置的固定 RPM 限流
文档中的 Nano Banana 路由不设置固定的平台侧 RPM 上限,接入层至少支持每分钟 5,000 个 API 请求。此类接口返回429 时,应按 Google 官方上游的速率、配额、消费等级或模型容量问题处理。
5,000 RPM 表示网关请求接入能力,不代表每分钟完成 5,000 张图片。完整范围见流量能力与可用率。
5,000 RPM 与 98% 仅适用于当前文档中的 Nano Banana 网关接口,不能直接套用到 GPT Image。目前没有单独公布 GPT Image 的网关 RPM 或可用率目标;客户端仍应遵循 Retry-After,采用带随机抖动的有限退避,并设置总截止时间。
只重试真正的临时错误
对 429 和 500 设置最大次数或总截止时间,并加入随机抖动。看到参数、密钥、余额或任务归属错误时立即停止,避免无意义流量。核对密钥
分清 401、余额不足和账号权限。
采用安全轮询
实现 Retry-After、截止时间和终态处理。
规划流量能力
分清网关 RPM、上游容量和可用率目标。
检查模型参数
进入所选模型的尺寸和比例说明。
检查 GPT Image 参数
先选 Web 或 VIP,再发送该模型支持的字段。
联系 API 支持
文档中的操作仍无效时,提交包含 responseId 或 task_id 的脱敏信息。