gemini-3-pro-image)可以按文字指令修改图片,或把最多 14 张参考图合成一张新图。老张API按次计费,单价不随分辨率和参考图数量变化。
编辑能力
参考图上限来自 Google 图像生成文档。请求里不需要标注每张图属于哪一类,在指令中说明每张图的用途即可。各比例在 1K、2K、4K 下的像素尺寸见 Nano Banana Pro 图像生成。
调用前准备
在令牌管理创建 API Key,计费模式选择「按量优先」(推荐)或「按次计费」:按量优先的令牌可以同时调用按量和按次计费的模型,按次计费的令牌只能调用按次计费的模型。没有出图时的扣费与重试建议见计费规则。 设置密钥并安装依赖:nano_banana.py 保存到当前目录。本页的 Python 示例导入它,cURL 示例也用它把响应文件转成图片:
post():发送带鉴权的请求read_image():读取本地 PNG、JPEG 或 WebP 图片save_images():从原生响应的inlineData或 OpenAI 兼容响应的 data URL 中取出图片并保存
Authorization: Bearer 请求头。Gemini 原生格式也接受 x-goog-api-key 请求头;不要把密钥写进 URL 查询参数(例如 ?key=),URL 容易被日志、代理和浏览器历史记录下来。
用本地图片编辑
请求发到POST /v1beta/models/gemini-3-pro-image:generateContent。把本地图片编码为 inlineData,和编辑指令放在同一条消息的 parts 中,mimeType 必须与图片的实际格式一致。
下面把一张图改成雨夜风格,输出 16:9 的 2K 图片:
- cURL
- Python
pro_edit.py 后运行:
pro-edit-1.png 等文件,扩展名随返回的图片格式变化。4K 请求耗时更长,示例的超时时间为 300 秒。
合成多张图片
pro_edit.py 可以一次传入多张图片,图片按命令行顺序追加到 parts。指令里用「第一张图」「第二张图」指代,说明每张图提供什么(主体、服装、场景或风格),以及需要保留的细节:
python pro_edit.py "把灯光调暖一些,其余不变" pro-edit-1.png。
使用公网图片 URL
原生格式可以用fileData 直接传入图片 URL,不必先下载再编码:
https://example.com/your-image.png 替换为你的图片 URL,并让 mimeType 与图片格式一致。
图片地址必须能被 Google 的服务器从公网直接访问,不能有 Cloudflare 验证、验证码或 User-Agent 检测等访问限制;访问受限的图片请改用上一节的 inlineData 写法。
OpenAI 兼容格式
已有 OpenAI SDK 代码时,改三处即可:base_url设为https://api.laozhang.ai/v1model改为gemini-3-pro-image- 编辑指令和图片放进同一条 user 消息的
content数组
- cURL
- Python
https://example.com/your-image.jpg 需要替换为能被公网直接访问的图片 URL。Python 示例保存为 pro_openai_edit.py 后,传入本地图片路径运行,它会把图片转成 data URL。
编辑指令怎么写
- 先写要改的内容,再写必须保留的内容,例如「把背景换成海边日落,保留人物的姿势、服装和光线方向」。
- 多张图片时按顺序称为第一张图、第二张图,并说明每张图提供的是主体、服装、场景还是风格。
- 要在图中写字时,把文字原样放进引号,并说明位置和字体风格。
- 复杂的改动分几次完成,每次以上一次的结果作为输入,比一次写很多要求更容易控制。
常见错误
编辑请求同样按次计费,HTTP 200 但没有图片也扣费:
- 参考图或指令涉及版权 IP、敏感人物或敏感内容时,Google 不生成图片,也不返回错误码;原样重试通常仍被拦截,每次都会扣费。
- 客户端遇到没有图片的响应时停止自动重试,先检查参考图和指令。原因与避免方法见避免没有图片的扣费。
- 图片请求耗时较长,客户端超时不代表服务端已停止处理。立即重复提交可能多生成一次,并重复计费。
常见问题
可以用 /v1/images/edits 编辑吗?
不可以。Nano Banana Pro 的编辑使用 Gemini 原生的 generateContent 或 OpenAI 兼容的 /v1/chat/completions,不使用 Images API 的编辑接口。
只想改图片的一部分,需要遮罩吗?
不需要,请求里也没有遮罩参数。Google 把这种写法称为语义遮罩:在指令中写清要改的元素,并说明其余内容保持不变,例如「只把蓝色沙发换成棕色皮沙发,房间里的其他物品、构图和光线保持不变」。更多写法见编辑指令怎么写。不传 aspectRatio 时输出什么比例?
Google 的默认行为是让输出尺寸跟随输入图片。
想保持原图比例,从 imageConfig 中去掉 aspectRatio,只保留 imageSize;本页示例固定传了 16:9,可以改成需要的比例或直接删掉。各比例在 1K、2K、4K 下的像素尺寸见 Nano Banana Pro 图像生成。
相关文档与来源
- Nano Banana Pro 图像生成:文生图、像素尺寸表与 Google 搜索接地
- Nano Banana 总览:五个模型对比、共用代码与计费规则
- Nano Banana 2 API:单价更低的 0.5K–4K 模型
- Gemini 协议:原生请求结构与 Google Gen AI SDK 配置
- Google 图像生成文档:参考图上限、比例与像素尺寸
- Google generateContent 参考:
inlineData、fileData、imageConfig等字段定义