视频版:
Cloudflare中转顶级大模型API,国内免费爽用,Gemini编程,音视频,多模态能力测试
谷歌Gemini是所有一线顶级大模型当中唯一一个API可以免费白嫖的。本期视频,我们借助互联网大善人Cloudflare来中转一下Gemini API,这样就得到一个国内免费爽用的顶级大模型。有了API以后,我们可以进行AI编程,可以聊天,可以音视频通话,做各种各样好玩的事情。
开始之前,我们需要先注册一个Cloudflare的账号,然后把一个域名托管到Cloudflare上面。爬爬虾之前有很多期视频介绍关于Cloudflare的使用,还有如何获得一个免费域名托管到Cloudflare上面,这里我就不赘述了。
Chat API
然后我们来到Github,找到这个项目叫做openai-gemini。
Gemini 转OpenAI格式: https://github.com/PublicAffairs/openai-gemini
它的作用是把Gemini的API转换成OpenAI的API格式。我们可以看到,这里提供了一个部署到Cloudflare worker上面的方式。
部署到Cloudflare worker以后,它事实上达成了两个效果:
- 把API中转到了国内
- 把Gemini的API转换成更为通用的openai的格式
好,我们点击这个deploy with worker这个按钮,填写一个Account ID还有API TOKEN,下面都有获取方式的指引。我们先点击worker dashboard这个按钮,
进来以后我们可以看到右侧的账户ID,把它复制一下填写过来。
接下来我们来获取一个API TOKEN,点击这个my profile的按钮,
然后我们点击创建令牌,点击编辑cloudflare worker使用模板。
账户资源选择所有账户,选择包含所有区域,
点击继续以显示摘要,点击创建令牌。
我们把这个令牌也复制一下,粘贴到API Token里面,然后点击connect account。
接下来我们需要在浏览器登录一下自己的Github账户。这里我登录技术爬爬虾的账号,然后点击这个fork repository。这里指的是把项目复刻一份到自己的名字底下。然后我们需要开启fork出来项目的Github action功能,这里点击这个按钮,
点击中间这个绿色按钮,
开启Github action功能。
后我们回到刚才的页面,点击workflow enabled,最后点击deploy。
等待worker部署完成。
我们点击下面的worker Dash,进入Cloudflare worker的dashboard。
我们可以看到有一个名字叫Gemini的worker,就是我们刚刚部署好的那个worker。我们点进来找到设置,这里需要给它添加一个域名,才能在国内正常使用。
我已经把tech-shrimp.com的域名托管到Cloudflare上面了,我们就来使用这个域名。
下一步,我们来申请一个免费的Gemini API key。我们来到这个地址,
Gemini API申请: https://aistudio.google.com/
我们需要一个能连上谷歌的上网环境才能进入这个页面。进来以后我们点击这个Get API key,找到这里的密钥,创建API密钥,然后随便填上一个项目,点击创建好,这样我们就拿到了API密钥。
这里我打开一个API测试工具,比如postman,测试一下,注意修改其中的域名与API Key
curl --location "https://gemini.tech-shrimp.com/v1/models" --header "Authorization: Bearer AIzaSyBMEmq3MiK2zdWJovLlJ7zKmQK0ZBi5gwg"
这里返回了一个模型列表,gemini-2.0-flash-exp是目前速度最快的模型,gemini-exp-1206应该是目前谷歌最强大的模型,在大模型竞技场上也是位居榜首的。
API 实战
AI对话
接下来我用几个实战案例带大家看一下这个API如何使用。我们来看AI聊天,这是我在Github上面找的一个开源项目叫做chatbox,就是一个大模型聊天的客户端。
ChatBox:https://github.com/Bin-Huang/chatbox
把它下载安装好以后,我们点击左下角的设置,然后模型这里我们还是用OpenAI的API,这个域名我们当然填写自己的域名。API密钥我们还是填写谷歌的Gemini API Key。
然后我们在下面选择自定义模型,然后填一个模型的名字,这里我填gemini-2.0-flash-exp,最后点击保存。
AI编程
我们来看如何使用Gemini API进行AI编程。cursor应该是目前最多人使用的AI编码工具,我们先把它下载安装一下。安装完成我们点击右上角的这个设置,选择Models,然后往下找。这里Open AI API Key,我们先把链接填上,我们填写自己的域名。接下来我们填写这个API Key,我们填写Gemini的API Key过来。
接下来我们点击这个add model按钮,我们填写一个模型的名字,这里我填写Google最强的编程大模型gemini-exp-1206,
把这里勾选上,最后我们保存一下。
使用Gemini进行AI编程,它的最大优势是上下文长度。我们看到,2.0 Flash模型的上下文长度比Claude3.5要大了5倍,对于中小型的项目,它甚至一次性可以把源代码全部读完。
多模态API
Gemini最强的就是它的原生多模态能力,也就是实时的音视频通话。不过这个功能是使用websocket的API来实现的。爬爬虾自己写了一个项目用来代理Gemini的Websocket API。
Worker代理WebSocket多模态:https://github.com/tech-shrimp/gemini-proxy
现在项目还非常的简陋,如果本期视频点赞播放量高的话,我会把这个项目完善一下,把前后台的功能都加上。
这里我回到Cloudflare,找到左侧的workers and page,点击创建,点击创建worker。
worker的名字我叫做gemini-websocket-proxy,在右下角点击部署好,右上角点击编辑代码。
这里来到我写的这个Github项目,把这个worker.js里面的代码复制出来,然后拷贝到cloudflare的worker.js,把它覆盖掉。
拷贝完成以后,我们点击右上角的部署,点击设置,这里还是给他添加一个域名。
我们来测试一下。我在Github上面找了一个Gemini的客户端项目,这个项目只有5个star,它是使用原生js来实现的一个Gemini的多模态API,现在都非常的简陋。我们先跑起来再说,后期有时间,我把它跟proxy项目合并起来,改造一下。
Gemini多模态客户端:https://github.com/ViaAnthroposBenevolentia/gemini-2-live-api-demo
首先我先把配置文件创建出来,按照模板新建一个config.js文件 。把我谷歌GMAI的API Key填到里面。
接下来我来修改这个文件,在core里面有一个websocket-client.js,把这个连接地址改一下,改成我自己的域名。
我把它启动一下,我们按照他的说明把项目启动一下。我打开一个命令提示符CD,然后进入项目目录。接下来,我把这个命令执行一下,启动成功。