1.前言
在AI大模型竞争白热化的今天,各家厂商的顶级模型订阅费用让不少开发者望而却步。Claude Opus 4.5官方订阅每月20美金,Gemini 3 Pro的API调用费用也不便宜。对于个人开发者或学习者来说,想要体验这些顶级模型的能力,token焦虑成了普遍的"时代病"——用着用着就担心额度不够用了,每次调用都得精打细算。
好消息来了!Google随着Gemini 3发布推出了一个叫做Antigravity的平台,这个平台不仅内置了Gemini系列模型,还集成了Claude Sonnet 4.5和Claude Opus 4.5!更让人惊喜的是,Google One Pro账号的免费额度大概是Claude官方订阅20刀版本的3倍左右,而且每天重置!如果是Ultra订阅用户,那几乎就是无限量使用。即使是免费Google账号,也有一定额度,只是一周重置一次。据说Antigravity中的Claude模型还是经过Google调教过的,速度更快。通过CLIProxyAPI这个开源项目,我们可以将Antigravity的能力转化为标准API接口,在Cherry Studio、Claude Code等各种工具中畅快使用。
今天研究了一下CLIProxyAPI这个开源项目,然后把这个免费的路给跑通了。今天我们就手把手教大家如何部署这套反代服务,让你在本地CLI命令行中也能白嫖顶级大模型,彻底告别token焦虑!
2.部署实战
下载源码
首选我们需要去github上下载一个叫做CLIProxyAPI 项目。
这里我们使用git命令下载本地。由于我之前已经下载了,这里就不展开。
配置文件修改
程序启动需要config.yaml个配置文件,我们这里使用下面命名复制
cpconfig.example.yaml config.yamlwindow 上直接复制。
记下来我们编辑一下config.yaml,主要是修改api-keys、remote-management.allow-remote、secret-key
参考上面的设置即可。其中secret-key 主要是后面启动登录的账号,可以设置比较简单的123456等等。系统会加密,不用管上面截图信息。
下载容器镜像
这里考虑到部署方便,我们使用docker 容器部署。输入下面的命令下载最新的镜像,我电脑安装了wsl,所以我使用linux运行环境来部署这个程序
docker pull eceasy/cli-proxy-api:v6.6.77启动服务
镜像下载完成后,我们输入下面命令启动容器
docker run -d \ -p 8317:8317 \ -v ./config.yaml:/CLIProxyAPI/config.yaml \ -v ./auths:/root/.cli-proxy-api \ eceasy/cli-proxy-api:latest启动完成后我们可以在容器环境查看到8317服务端口启动
验证
程序启动完成后,我们可以输入下面地址验证一下服务是否可以访问
http://localhost:8317/management.html
看到上面的页面 说明服务端是可以使用的。我们输入管理员秘钥,这管理员秘钥就是我们上面截图设置的
账号秘钥。输入密码后点击登录按钮完成登录
通过以上方式我们就完成了CLIProxyAPI程序的部署。解析我们需要在安装EasyCLI 这个子项目
EasyCLI安装
接下来我们在github上找到这个EasyCLI项目,并下载它的安装包。
我这里就那windows为案例,下载后直接解压打开即可。
双击打开后我们选择远程。输入请求地址和密码
这个地址和账号密码其实就是上面的CLIProxyAPI 后端管理账号和密码。登录成功后进入EasyCLI后台管理
等后我们选择authentication files ,然后在右下角new 按钮点击Antigravity
Google Antigravity” 授权
点击open link打开google 授权
因为我浏览器之前记录2个google 的账号,所以我这边点击授权。弹出“Google Antigravity” 授权页面,点击登录按钮
完成授权。
这里需要注意的是由于Google 的限制,我们需要把自己的国家和地区改成非中国地区(包括香港),建议直接改美国。
https://policies.google.com/terms?hl=zh_CN
下载授权文件并导入
接下来我们把刚才授权店2个json文档下载并导出。
回到CLIProxyAPI 后台管理界面,我们在认证文件导入2个文件
通过上面的方式我们的CLIProxyAPI 反带就配置完成了。我点击其中一个账号模型详细信息可以看到可以使用的模型
3.第三方平台使用
接下来我们就可以在第三方平台上使用者这个免费的反带API 了
cherry stuido
我们使用cherry stuido 这个第三方工具来测试验证一下反带的效果。
我们先在cherry stuido配置一下
填写api秘钥,这秘钥就是上面我们在conf.yaml配置的api-keys的秘钥
api地址 我们填写本地地址http://localhost:8317 (如果远程部署可以填写远程服务器地址)
以上我们就完成了模型基本设置。
接下来我们在聊天对话中验证测试
选择gemini-3-flash-preview
选择gemini-3-pro-image-preview模型 可以生图(这个就是我们所说的nano banana pro)
使用代码实现
这里我们使用python来实现这个接口调用,我们这里就文生图接口测试
testgemini-3-pro-image-preview.py
importrequestsimportjsonimportbase64importosimportre url="http://localhost:8317/v1/chat/completions"payload=json.dumps({"model":"gemini-3-pro-image-preview","messages":[{"role":"user","content":[{"type":"text","text":"2个螃蟹在打架"}]}]})headers={'Authorization':'Bearer sk_zhouhuizhou','Content-Type':'application/json'}print("正在发送请求...")response=requests.request("POST",url,headers=headers,data=payload)ifresponse.status_code==200:res_text=response.text# 尝试匹配 base64 模式# 模式 1: data:image/xxx;base64,xxxxpattern1=r'base64,([A-Za-z0-9+/=]{50,})'match1=re.search(pattern1,res_text)base64_str=Noneifmatch1:base64_str=match1.group(1)else:# 模式 2: JSON 字段中的长字符串 (假设是 base64)try:res_data=response.json()content=res_data.get('choices',[{}])[0].get('message',{}).get('content','')ifisinstance(content,list):# 处理列表形式的 contentforitemincontent:ifisinstance(item,dict):text=item.get('text','')if'base64,'intext:base64_str=text.split('base64,')[1].strip()breakeliflen(text)>100:# 可能是纯 base64base64_str=text.strip()breakelifisinstance(content,str):if'base64,'incontent:base64_str=content.split('base64,')[1].strip()eliflen(content)>100:base64_str=content.strip()except:passifbase64_str:# 清理可能存在的引号或转义字符base64_str=base64_str.split('"')[0].split('\\')[0].strip()try:image_data=base64.b64decode(base64_str)output_filename="output_crab_fight.png"withopen(output_filename,"wb")asf:f.write(image_data)print(f"图片已成功保存!")print(f"文件路径:{os.path.abspath(output_filename)}")print(f"所在目录:{os.path.dirname(os.path.abspath(output_filename))}")exceptExceptionase:print(f"解码图片失败:{e}")else:print("未在响应中识别到 base64 数据。")print("响应前 500 字符:",res_text[:500])else:print(f"请求失败,状态码:{response.status_code}")print(response.text)我们通过代码也实现了文生图调用Antigravity实现生图功能了
claude code
接下来我们使用本地claude code 来实现。这里配置我们使用cc-switch配置。关于cc-switch配置 配置不熟悉的可以看我之前的文章
《CC-Switch配置切换神器:5秒搞定多设备同步,坚果云让配置永不丢失》
cc-switch完成后,我们启动本地claud code
这样我们在cli命令中也可以使用google Antigravity 来实现国外顶级模型免费使用了。
4.总结
今天主要带大家了解并实现了CLIProxyAPI配合Google Antigravity的反代部署完整流程,该方案以"Docker容器化部署 + OAuth授权认证"为核心优势,结合开发者对顶级大模型免费使用的强烈需求,通过CLIProxyAPI后端服务与EasyCLI客户端工具,形成了一套从Google账号授权到标准API调用的全链路白嫖方案。
在实际应用中,该方案不仅支持多Google账号轮换使用实现额度叠加,还支持远程部署供团队共享使用,适配性远优于单一官方订阅方案;特别是通过标准OpenAI协议转换,有效解决了不同平台API协议不兼容的难题。同时,方案具备良好的扩展性——小伙伴们可以基于此扩展更多应用场景,如接入Cursor编辑器、配置到各类AI Agent框架、搭建私有化AI助手等,进一步发挥免费顶级模型在代码开发、内容创作、图像生成等领域的应用价值。需要注意的是Google账号地区需设置为美国等非受限地区,免费账号额度一周重置而Pro账号每天重置。
感兴趣的小伙伴可以按照文中提供的步骤进行实践,根据实际使用需求调整账号数量和部署方式。今天的分享就到这里结束了,我们下一篇文章见。