Nano Banana 2.1 是什么?价格、接口和实测请求
面向国内开发者说明 Nano Banana 2.1 的模型 ID、按次价格、图像接口参数,并给出一条真实跑通的请求。

Nano Banana 2.1 是 Google 系图像生成与编辑模型,在 Crazyrouter 中的准确模型 ID 是 nano-banana-2.1。截至 2026 年 10 月,它的公开基础价格为每次请求 $0.035,可通过 OpenAI 风格的图片生成端点调用。我们在 10 月 9 日用一个“红色方块在蓝色球体左边”的提示词实测,接口返回 HTTP 200,并给出了一张 1024×1024 JPEG 图片的 URL。
这说明基础文生图链路已经跑通,但不能代表所有分辨率、参考图编辑和生产并发都经过验证。更稳妥的做法是先运行本文的最小请求,再用你的真实提示词、图片比例和验收规则测试。
Nano Banana 2.1 是什么?#
你可以把它理解为一个新的图片模型路由。它没有覆盖旧的 nano-banana-2,两个模型 ID 目前同时存在,因此应用可以保留旧版作为回退,再逐步测试新版。
公开目录描述了这些能力:文本生成图片、通过 image_input URL 传参考图、设置 aspect_ratio、选择 1K/2K/4K 分辨率,以及用 response_format 控制 URL 或 base64 返回。本文只实测了最基础的方形文生图,其他参数仍应以你自己的接口结果为准。
Google 原生接口使用的模型名不一定和聚合平台别名相同。调用 Crazyrouter 时使用本文给出的 ID;调用 Google 原生 API 时,请查看 Gemini 图片生成文档,不要直接照搬别名。
规格与限制怎么确认?#
| 项目 | 当前可以确认的内容 | 上线前还要测试的内容 |
|---|---|---|
| 模型 ID | nano-banana-2.1 | 大小写和标点必须一致 |
| 基础生成 | 2026-10-09 实测返回 HTTP 200 | 重复请求的稳定性 |
| 返回格式 | 本次返回 data[0].url | base64 是否适合你的存储链路 |
| 图片尺寸 | 目录描述支持 1K、2K、4K | 各尺寸参数与实际账单 |
| 参考图 | 目录描述支持 URL 引用 | 文件格式、权限与数量限制 |
| 上下文 | 没有可靠数字可引用 | 以当前文档和接口报错为准 |
图片模型不应该照搬聊天模型的“上下文窗口”说法。对业务更重要的是参考图数量、输入大小、输出尺寸、超时和内容规则;如果来源没有给数字,就不要自行补一个看似精确的限制。
Nano Banana 2.1 与替代方案#
| 方案 | 适合什么情况 | 需要注意什么 |
|---|---|---|
| Nano Banana 2.1 | 想测试新路由与较低公开基础价 | 先验证参考图和高分辨率参数 |
| Nano Banana 2 | 已经有稳定提示词与验收基线 | 目录中的计费字段与新版不同 |
| GPT Image 2 | 想比较另一个图片模型家族 | 请求字段和输出风格需单独测试 |
| Google 原生 Gemini API | 需要厂商原生协议 | 模型名、认证和定价按官方文档走 |
如果现有系统已经使用统一图片端点,切换模型字符串的改动通常不大。但“接口形状相似”不等于“输出完全一致”,构图、文字、参考图一致性仍然要回归测试。

如何调用 Nano Banana 2.1?#
先把密钥保存为服务端环境变量 CRAZYROUTER_API_KEY。不要把真实密钥写进前端代码、公开仓库或文章截图。
cURL#
下面是最小可运行请求,与我们的实测请求体一致:
curl https://api.crazyrouter.com/v1/images/generations \
-H "Authorization: Bearer $CRAZYROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"nano-banana-2.1","prompt":"A red cube to the left of a blue sphere on a white table. No text.","size":"1024x1024","n":1}'
Python#
import os
import requests
r = requests.post(
"https://api.crazyrouter.com/v1/images/generations",
headers={"Authorization": "Bearer " + os.environ["CRAZYROUTER_API_KEY"]},
json={
"model": "nano-banana-2.1",
"prompt": "A red cube to the left of a blue sphere on a white table. No text.",
"size": "1024x1024",
"n": 1,
},
timeout=180,
)
r.raise_for_status()
print(r.json()["data"][0]["url"])
Node.js#
const r = await fetch("https://api.crazyrouter.com/v1/images/generations", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.CRAZYROUTER_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "nano-banana-2.1",
prompt: "A red cube to the left of a blue sphere on a white table. No text.",
size: "1024x1024",
n: 1,
}),
signal: AbortSignal.timeout(180000),
});
if (!r.ok) throw new Error(`请求失败: ${r.status}`);
console.log((await r.json()).data[0].url);
本次真实响应的结构如下:
{"data":[{"url":"https://media.crazyrouter.com/task-artifacts/2026/10/09/sync-image/20261009090118804022496ytCV7JO1-1.jpeg","b64_json":"","revised_prompt":""}],"created":1791536501}
b64_json 为空不代表失败,因为这次结果通过 URL 返回。客户端应该判断 url 和 b64_json 哪个有值,而不是硬编码只读其中一个字段。
2026-10 的价格#
Nano Banana 2.1 实时价格行显示基础价为每次请求 3.50;这只是基础费率乘法,不是你的最终账单。
旧版目录字段包含默认组折扣,而且计费标签写的是按图片,新版写的是按请求。直接拿两个基础字段做“便宜百分比”容易误导,所以批量上线前应查看价格总览和账户实际用量。
Google 官方价格属于另一套账单。需要比较原生 API 时,以 Gemini API 官方定价为准,并确保分辨率、思考参数和输出数量相同。
FAQ#
Nano Banana 2.1 是什么?#
它是 Google 系的图片生成与编辑模型,在本文所用网关中的 ID 为 nano-banana-2.1。我们已经实测了基础文生图请求并拿到图片 URL。
Nano Banana 2.1 的模型名怎么写?#
在 Crazyrouter 请求里原样写 nano-banana-2.1。如果换成 Google 原生端点,需要重新核对官方模型名。
Nano Banana 2.1 支持参考图吗?#
当前目录描述支持通过 URL 传入参考图片。由于本文没有执行参考图测试,上线前还要验证格式、访问权限和数量限制。
每次请求一定是 $0.035 吗?#
这是 2026 年 10 月公开的基础价格。具体分辨率、参数、账户组或后续价格变动可能影响实际费用,应以实时价格和账单为准。
要不要立刻替换 Nano Banana 2?#
不建议只看版本号就全量切换。先固定一组真实提示词,对比构图、文字准确率、耗时和费用,再逐步放量。
从可复现的小测试开始#
先保存 10 到 20 个真实业务提示词,每次记录模型 ID、参数、耗时、输出文件和用量。这样升级后出现差异时能够定位原因,而不是凭印象判断。准备实际测试时,可以注册 Crazyrouter,从小批量付费请求开始验证。
<!-- crazyrouter-related-links -->




