POST
Nano Banana 2 / Pro 图片编辑
POST /v1beta/models/{model}:generateContent — 基于参考图的图片编辑接口
Nano Banana 2 / Pro 图片编辑
Nano Banana 2 / Pro 支持基于参考图的图片编辑能力,可用于主体保留、背景替换、服装展示、产品图优化、多图融合等场景。
图片编辑接口同样使用 Gemini 原生 generateContent 协议。参考图片需要以 Base64 形式放入 contents[].parts[].inlineData 中。
接口信息
| HTTP 方法 | POST |
| 接口路径 | /v1beta/models/{model}:generateContent |
| 完整地址 | https://api000.com/v1beta/models/{model}:generateContent |
| 认证方式 | Bearer Token |
| 请求格式 | application/json |
可用模型
| 模型名称 | 说明 |
|---|---|
Nano Banana 2 |
Nano Banana 标准图片编辑模型 |
Nano Banana Pro |
Nano Banana Pro 高阶图片编辑模型 |
请求地址示例:
https://api000.com/v1beta/models/Nano Banana Pro:generateContent
如客户端不支持路径中的空格,可使用:
https://api000.com/v1beta/models/Nano%20Banana%20Pro:generateContent
请求头
| Header 参数 | 必填 | 示例 |
|---|---|---|
Authorization |
是 | Bearer sk-xxxxxxxxxxxxxxxx |
Content-Type |
是 | application/json |
请求体示例:单图编辑
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "Keep the main subject from the reference image unchanged. Replace the background with a clean white studio background. Commercial photography style, realistic lighting, high detail. Do not add text, watermark, or extra objects."
},
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA"
}
}
]
}
],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "1:1",
"imageSize": "2K"
}
}
}
请求体示例:4K 图片编辑
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "Keep the clothing item from the reference image unchanged. Put it on a female model in a professional fashion photoshoot. Realistic lighting, high detail, commercial photography style. Do not add text, watermark, or extra objects."
},
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA"
}
}
]
}
],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "1:1",
"imageSize": "4K"
}
}
}
图片输入要求
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
inlineData.mimeType |
string | 是 | 参考图 MIME 类型 |
inlineData.data |
string | 是 | 参考图的纯 Base64 内容 |
常用 mimeType:
| 图片格式 | mimeType |
|---|---|
| JPG / JPEG | image/jpeg |
| PNG | image/png |
| WebP | image/webp |
Base64 格式要求
inlineData.data 只接受纯 Base64 内容。
正确格式:
iVBORw0KGgoAAAANSUhEUg...
不要携带 Data URL 前缀:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...
图片 URL、form-data 文件上传、multipart 上传不适用于本协议。
本地图片转 Base64
macOS 可使用以下命令将图片转换为纯 Base64,并复制到剪贴板:
base64 < ~/Desktop/test.jpg | tr -d '\n' | pbcopy
然后将剪贴板内容填入:
"data": "BASE64_IMAGE_DATA"
PNG 图片请使用:
"mimeType": "image/png"
JPG 图片请使用:
"mimeType": "image/jpeg"
多图参考示例
如需使用多张参考图,可在同一条消息的 parts 中继续添加多个 inlineData,并在提示词中明确说明每张图片的用途。
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "Use input image 1 for the person and input image 2 for the background. Create a realistic editorial portrait. Keep the person unchanged and replace only the background."
},
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA_1"
}
},
{
"inlineData": {
"mimeType": "image/png",
"data": "BASE64_IMAGE_DATA_2"
}
}
]
}
],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "1:1",
"imageSize": "2K"
}
}
}
响应结果
接口成功后,图片通常以 Base64 形式返回。
返回结构示例:
{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "iVBORw0KGgoAAAANSUhEUg..."
}
}
]
},
"finishReason": "STOP"
}
]
}
图片数据位置:
candidates[].content.parts[].inlineData.data
客户端可根据 inlineData.mimeType 判断文件格式,并将 inlineData.data 解码保存为图片。
注意事项
- 本接口为 Gemini 原生协议,不是 OpenAI Images 图片编辑接口。
- 参考图需要使用
inlineData.data传入纯 Base64 内容。 inlineData.mimeType应与图片真实格式保持一致。- 不要在
data中携带data:image/png;base64,前缀。 - 不支持直接在
inlineData.data中填写公网图片 URL。 - 返回图片通常为 Base64,需要客户端自行解码保存。