Nano Banana 2.1(模型 ID gemini-nano-banana-2.1)已经上线 HopBase。这是 Google 最新一代的高效生图 / 改图模型,官方给出的三个改进方向是画面质量、文字排版和多轮编辑的一致性。对接入方来说,最直接的变化有两个:单张价格约为上一代 Nano Banana 2 的一半(1K 每张 $0.0336),以及原生 4K 输出。绑定「Gemini 全系(含生图)」或「Gemini 官方直连」分组的密钥即刻可用,Base URL 仍是 https://api.hop-base.com。
相比 Nano Banana 2 变了什么
| 对比项 | Nano Banana 2gemini-3.1-flash-image | Nano Banana 2.1gemini-nano-banana-2.1 |
|---|---|---|
| 1K 每张 | $0.0672 | $0.0336(一半) |
| 2K 每张 | $0.0672 | $0.0504 |
| 4K | 不支持(最高 2K) | $0.113 每张 |
| 图像输出单价 | $60 / 百万 token | $30 / 百万 token |
| 输入单价 | $0.50 / 百万 token | $1.50 / 百万 token |
价格下降主要来自图像输出单价减半;输入单价反而上调了,所以大量参考图的改图请求省得没有文生图那么多——参考图越多、越大,输入占比越高。纯文生图和少量参考图的场景,基本可以按「每张便宜一半」来估。
价格(官方价)
| 计费项 | 官方价 |
|---|---|
| 输入(文本 / 图片) | $1.50 / 百万 token |
| 文本与思考输出 | $7.50 / 百万 token |
| 图像输出 | $30 / 百万 token |
| 缓存读 | $0.075 / 百万 token |
| 单张 1K / 2K / 4K | $0.0336 / $0.0504 / $0.113 |
以上为 Google 官方价。实际单价以你所在分组为准,登录后在模型广场可查,控制台使用记录按请求给出每一笔的扣费。
尺寸、比例与速度
- 三档尺寸:1K、2K、4K。4K 实测 16:9 输出 5504 × 3072。
- 10 种官方宽高比:
1:1、2:3、3:2、3:4、4:3、4:5、5:4、9:16、16:9、21:9。 - 参考耗时(服务端实测):1K 约 10~15 秒,2K 约 20 秒,4K 约 30~57 秒。
出 2K / 4K 大图时建议加请求头 Prefer: respond-async 走异步任务,立即拿到 task_id 再用 GET /v1/images/tasks?task_id=… 轮询,避免长连接被客户端或中间网络超时掐断。
三分钟接入
1. curl:文生图(指定比例与档位)
curl https://api.hop-base.com/v1/images/generations \
-H "Authorization: Bearer sk-你的密钥" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-nano-banana-2.1",
"prompt": "咖啡店新品海报,标题文字「秋日拿铁」,暖色调,杂志排版",
"google": {
"image_config": { "aspect_ratio": "3:4", "image_size": "2K" }
}
}' \
| jq -r '.data[0].b64_json' | base64 --decode > result.png
image_config 也可以写成顶层扁平的 "aspect_ratio" / "image_size",效果相同。只传 size(如 "2048x1152")时,网关会映射到最接近的官方比例,并按长边推导档位。
2. OpenAI Python SDK
import base64
from openai import OpenAI
client = OpenAI(
base_url="https://api.hop-base.com/v1",
api_key="sk-你的密钥",
)
resp = client.images.generate(
model="gemini-nano-banana-2.1",
prompt="雨夜霓虹街角的便利店,招牌写着 OPEN 24H,电影感",
extra_body={
"google": {
"image_config": {"aspect_ratio": "16:9", "image_size": "4K"}
}
},
)
item = resp.data[0]
# 返回可能是 JPEG,按 mime_type 选扩展名
ext = "jpg" if getattr(item, "mime_type", "") == "image/jpeg" else "png"
with open(f"result.{ext}", "wb") as f:
f.write(base64.b64decode(item.b64_json))
3. Chat Completions 里直接出图
Cherry Studio 这类只会调对话接口的客户端,可以直接把模型选成 gemini-nano-banana-2.1,图片以 markdown 内嵌 data URL 返回:
curl https://api.hop-base.com/v1/chat/completions \
-H "Authorization: Bearer sk-你的密钥" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-nano-banana-2.1",
"messages": [
{"role": "user", "content": "画一只戴围巾的柴犬,水彩风格"}
]
}'
要精确控制比例和档位,建议用上面的 Images 接口。
改图:参考图编辑
两个分组都可以在 /v1/images/generations 的 image / images 字段里传参考图(URL 或 Data URL)。「Gemini 全系(含生图)」分组另外提供 OpenAI 兼容的 /v1/images/edits,可直接上传本地文件:
curl https://api.hop-base.com/v1/images/edits \
-H "Authorization: Bearer sk-你的密钥" \
-F "model=gemini-nano-banana-2.1" \
-F "prompt=把杯子换成第二张图的配色,其余保持不变" \
-F "image[][email protected]" \
-F "image[][email protected]" \
-F "aspect_ratio=1:1" \
-F "image_size=2K"
两个分组怎么选
| 分组 | 可用端点 |
|---|---|
| Gemini 全系(含生图) | /v1/images/generations、/v1/images/edits、/v1/chat/completions |
| Gemini 官方直连 | /v1/images/generations、/v1/chat/completions(改图请在 generations 里带参考图) |
两个分组都按官方价乘以所在分组的折扣计费,各分组折扣以控制台模型广场为准。付费请求前请用实际密钥调一次 GET /v1/models,确认返回里有 gemini-nano-banana-2.1。
适合哪些场景
- 批量出图:电商主图、社媒配图、A/B 素材,单张成本减半,量大时差别明显。
- 带文字的设计稿:海报、封面、信息卡——文字排版是这一代的重点改进方向,仍建议出图后人工核对文字。
- 多轮改图:在上一张结果上连续调整局部,官方强调了多轮编辑的一致性。
- 高清交付:需要 4K 印刷级或大屏素材时,不必再换到更贵的型号。
常见问题
和 Nano Banana 2 的调用方式一样吗?
一样。请求结构、参数与返回格式都不变,把 model 换成 gemini-nano-banana-2.1 即可;如果原来受限于 2K,现在可以把 image_size 设为 4K。
能一次出多张吗?
可以用 n 一次请求多张,网关并行生成;全有或全无,任一张失败整个请求不计费。4K 等大尺寸下 n 的上限更低,超出会直接返回 400。
支持透明背景或 mask 局部重绘吗?
不支持。background: "transparent" 与 mask 都会返回 400;局部修改请在提示词里描述区域。
失败会计费吗?
参数校验不通过、生成失败都不计费。只有成功交付图片的请求才扣费,同步响应的 usage.cost_usd 给出这一笔的实际扣费。
结果是什么格式?
Images 接口同步返回 data[].b64_json,可能是 JPEG,保存前请看 data[].mime_type;异步任务完成后返回图片地址,请尽快下载到自己的存储。