ToAPIsToAPIs
Gemini Nano Banana 2.1

Gemini Nano Banana 2.1 图像生成

使用 Gemini Nano Banana 2.1 生成和编辑图片, 支持最多 14 张参考图及 1K, 2K, 4K 分辨率.

POST
/v1/images/generations

中国大陆用户请注意: 请使用 https://toapis.cn 作为 Base URL. 将以下示例中的 https://toapis.com 替换为 https://toapis.cn.

模型选择

版本Model ID
普通版gemini-nano-banana-2.1

支持文生图和图生图. 请求以异步任务执行, 提交成功后使用返回的任务 ID 查询结果.

image_urls 只接收公开可访问的图片 URL, 不接收 base64 数据. 请先使用 上传图片接口 上传本地图片并获取 URL.

认证

Authorizationstring请求头必填

所有请求均需要 Bearer Token. 请在 API Key 管理页面 获取 API Key.

Authorization: Bearer YOUR_API_KEY

请求参数

modelstring请求体必填默认值: gemini-nano-banana-2.1

填写 gemini-nano-banana-2.1.

promptstring请求体必填

图像生成或编辑的文本描述.

sizestring请求体

输出图像的宽高比. 支持以下值:

  • 1:1
  • 3:2, 2:3
  • 4:3, 3:4
  • 16:9, 9:16
  • 5:4, 4:5
  • 21:9
  • 1:4, 4:1
  • 1:8, 8:1
ninteger请求体默认值: 1

输出数量固定为数字 1, 不要使用字符串 "1".

image_urlsstring[]请求体

参考图片 URL 字符串数组, 用于图生图或图像编辑. 最多 14 张图片, 每个 URL 必须公开可访问. 参考图数量不代表输出图片数量.

单张图片不超过 10MB. 支持 .jpeg, .jpg, .png, .webp.

["https://example.com/photo.jpg"]
metadataobject请求体

额外配置参数.

metadata
resolutionstring请求体默认值: 1K

输出图像分辨率. 支持 1K, 2K, 4K, 默认 1K. 请使用大写 K.

响应字段

idstring

任务 ID, 用于查询任务状态和结果.

objectstring

固定为 generation.task.

modelstring

请求中使用的模型 ID.

statusstring

任务状态: queued, in_progress, completed, failed.

progressinteger

任务进度百分比, 范围为 0-100.

created_atinteger

任务创建时间, Unix 时间戳, 单位为秒.

metadataobject

任务元数据.

请求示例

curl --request POST \
  --url https://toapis.com/v1/images/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "gemini-nano-banana-2.1",
  "prompt": "赛博朋克风格的城市夜景, 霓虹灯闪烁",
  "size": "16:9",
  "n": 1,
  "metadata": {
    "resolution": "2K"
  }
}'
curl --request POST \
  --url https://toapis.com/v1/images/generations \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "gemini-nano-banana-2.1",
  "prompt": "将这张照片改为水彩画风格",
  "size": "1:1",
  "n": 1,
  "image_urls": [
    "https://example.com/photo.jpg"
  ],
  "metadata": {
    "resolution": "2K"
  }
}'
import requests

response = requests.post(
    "https://toapis.com/v1/images/generations",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "model": "gemini-nano-banana-2.1",
        "prompt": "赛博朋克风格的城市夜景, 霓虹灯闪烁",
        "size": "16:9",
        "n": 1,
        "metadata": {
            "resolution": "2K"
        }
    }
)
response.raise_for_status()
task = response.json()
print(task["id"])
const response = await fetch('https://toapis.com/v1/images/generations', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    "model": "gemini-nano-banana-2.1",
    "prompt": "赛博朋克风格的城市夜景, 霓虹灯闪烁",
    "size": "16:9",
    "n": 1,
    "metadata": {
      "resolution": "2K"
    }
  })
});

if (!response.ok) {
  throw new Error(await response.text());
}
const task = await response.json();
console.log(task.id);

响应示例

{
  "id": "task_img_abc123def456",
  "object": "generation.task",
  "model": "gemini-nano-banana-2.1",
  "status": "queued",
  "progress": 0,
  "created_at": 1703884800,
  "metadata": {}
}

查询结果

提交响应中的 id 是任务 ID. 使用 图片任务查询接口 获取任务状态和最终图片. 异步通知请参考 Webhook 回调.