手把手带你用上AI神器 - CLIProxyAPI(叁:NanoBanana实战)

由于该系列教程篇幅较长,因此我按主题拆分,大家可以点击目录快速跳转到感兴趣的篇章

重要通知:因为现在 Gemini CLI 已经完整覆盖了 Gemini Web,并且全免费,所以自 6.2.X 版本起 CLIProxyAPI 将移除 Gemini Web 支持,如果还有想用 Gemini Web 的可以使用 6.1.X 版本,以下教程基于 6.1.X 版本

经过前两期的实战,我们已成功在 CLIProxyAPI 上集成了 Qwen CodeGemini CLICodex。本期内容将介绍如何通过添加 Gemini Web 的 Cookie,使 CLIProxyAPI 支持 NanoBanana 模型。

Gemini 的 NanoBanana 模型因其出色的图像处理能力而备受赞誉。然而,Google 并未提供该模型的免费 API。而现在,使用 CLIProxyAPI之后,我们就可以通过集成 Gemini Web,从而以免费 API 的形式使用 NanoBanana 啦。

我们有两种方法可以获取认证信息:

第一种方法

首先,使用您的 Google 账号登录 Gemini 官网 (https://gemini.google.com/app)。据了解,普通账号每天有 100 次图像生成配额,Pro 账号则有 1000 次。登录成功后,在浏览器中按 F12 打开开发者工具,并切换到“网络” (Network) 选项卡。

在筛选框中输入 List,然后将鼠标悬停在您的用户头像上。片刻之后,下方列表中应出现 ListAccounts 的条目。如果未出现,请刷新页面重试。

点击 ListAccounts,在“标头” (Headers) → “请求标头” (Request Headers) 中找到 Cookie,并完整复制其值。

回到 CLIProxyAPI 程序所在的目录,打开终端或命令行,输入命令 cli-proxy-api --gemini-web-auth。根据提示,粘贴我们刚才复制的 Cookie 值并回车,即可看到验证成功的消息,Cookie 已被自动保存。

第二种方法

如果您使用的是 macOS 系统,或者第一种方法认证失败,那么可能需要手动输入 __Secure-1PSID__Secure-1PSIDTS 的值。请切换到“应用” (Application) 选项卡,并依次复制图示中的这两个值。

在命令行执行验证时,根据提示手动填入这两个值即可完成验证。

验证步骤

接下来我们进行验证。需要注意的是,目前程序仅支持通过 OpenAI 兼容接口和 Gemini 原生接口进行文生图或图文生图的操作。因此,我们之前在 Cherry Studio 中设置的提供商类型 OpenAI Response 需要修改为 OpenAI

添加模型 NanoBanana (即 gemini-2.5-flash-image-preview)。

现在,在 Cherry Studio 中测试一下吧!

完美地满足了我们的要求,尽情享受“香蕉”吧!

注意事项

  • 现阶段请避免在 CLIProxyAPI 中添加多个 Gemini Web 账户。因为当存在多个账户时,程序会轮询调用,这可能会破坏会話的连续性,导致请求失败。 6.0.17版本更新之后,程序支持 Gemini Web 粘性会话,可以添加多个账户了。

  • Cherry Studio 中,切勿OpenAI Response 提供商类型下添加 NanoBanana 模型。已知 Cherry Studio 在此情况下存在 Bug,会导致程序崩溃。

112 个赞

感谢大佬教程

1 个赞

感谢大佬分享,教程棒棒喂饭

画的猫不显示出来 可能是gemini的问题 网页上也不显示图片

1 个赞

这个事情吧,只能说目前没有一个客户端可以正常的吃香蕉

参考Google官方文档:

修改第一个范例的地址和模型名称(CLI目前只有gemini-2.5-flash-image-preview)

curl -s -X POST \
  "http://127.0.0.1:8317/v1beta/models/gemini-2.5-flash-image-preview:generateContent" \
  -H "x-goog-api-key: 12345" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [
        {"text": "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme"}
      ]
    }]
  }' \
  | grep -o '"data": "[^"]*"' \
  | cut -d'"' -f4 \
  | base64 --decode > gemini-native-image.png

结果:

1 个赞

我想说我在官方的gemini.google.com 上让它画只猫 图片也不现实 明天再测试看看

这个不太可能吧,gemini官网挺顺畅的这几天~应该是3训练完了~

有时候是这样的,提示词太简单的情况下,有时候是不做图的
提示词复杂,并且描述明确的情况下,几乎可以100%成功

感谢分享

感谢大佬详细教程!

佬,你的这个问题解决了吗?我遇到了跟你一模一样的问题,看了上面楼主留下的curl调用示例,不知道cherry studio的调用问题解决了没?

好像没办法指定生图比例?只能是 1:1,好像不能像 aistudio 中的那样可以设置各种各种的图片比例

是的,目前不管是gemini-cli还是gemini web的都没法指定比例

cherry如果在gemini协议下还是有问题,那就只能等cherry更新了,目前已知的几个客户端都对这个聊天生图的支持有限

1 个赞

我现在用的是这个项目

佬的这个似乎泛用性更好更强大,想问下这个应该也可以对接NEWAPI吧 (我看到似乎是可以转换为标准Gemini接口的)

今天更新后已经支持调整比例了

1 个赞

可以对接NewAPI

1 个赞

感谢,如果能把去水印再加上就接近完美了

Gemini-CLI里边的模型生成的没有水印啊

1 个赞

Gemini-CLI 里边的模型也支持比例参数吧?我目前用的是gemini web里面的生图,也就是这个帖子介绍的