2025-01-03

Cloudflare Worker中转代理Gemini API,国内免费爽用,Gemini编程,音视频,多模态 API应用 - 开发调优 - LINUX DO

Cloudflare Worker中转代理Gemini API,国内免费爽用,Gemini编程,音视频,多模态 API应用 - 开发调优 - LINUX DO

视频版: Cloudflare中转顶级大模型API,国内免费爽用,Gemini编程,音视频,多模态能力测试_哔哩哔哩_bilibili

最近爬爬虾试用了Gemini 2.0 的多模态API,发现很有意思,跟佬友分享下。
试了下视频通话,我的梯子上行速度不稳延迟很高,就尝试了下用Cloudflare Worker代理API到国内,免费爽用。现在还很简陋,等有空整理一下,把几个项目整合到一起,做一个UI+全套代理的完整worker应用。

谷歌Gemini是所有一线顶级大模型当中唯一一个API可以免费白嫖的。我们可以借助互联网大善人Cloudflare来中转一下Gemini API,这样就得到一个国内免费爽用的顶级大模型。有了API以后,我们可以进行AI编程,可以聊天,可以音视频通话,做各种各样好玩的事情。

开始之前,我们需要先注册一个Cloudflare的账号,然后把一个域名托管到Cloudflare上面。爬爬虾之前有很多期视频介绍关于Cloudflare的使用,还有如何获得一个免费域名托管到Cloudflare上面,这里我就不赘述了。

Chat API

然后我们来到Github,找到这个项目叫做openai-gemini。

Gemini 转OpenAI格式: GitHub - PublicAffairs/openai-gemini: Gemini ➜ OpenAI API proxy. Serverless!

它的作用是把Gemini的API转换成OpenAI的API格式。我们可以看到,这里提供了一个部署到Cloudflare worker上面的方式。

部署到Cloudflare worker以后,它事实上达成了两个效果:

  1. 把API中转到了国内
  2. 把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:GitHub - Bin-Huang/chatbox: User-friendly Desktop Client App for AI Models/LLMs (GPT, Claude, Gemini, Ollama...)

把它下载安装好以后,我们点击左下角的设置,然后模型这里我们还是用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多模态:GitHub - tech-shrimp/gemini-proxy: 使用Cloudflare Worker代理Gemini 多模态 API

现在项目还非常的简陋,如果视频点赞播放量高的话,我会把这个项目完善一下,把前后台的功能都加上。

这里我回到Cloudflare,找到左侧的workers and page,点击创建,点击创建worker。

worker的名字我叫做gemini-websocket-proxy,在右下角点击部署好,右上角点击编辑代码。

这里来到我写的这个Github项目,把这个worker.js里面的代码复制出来,然后拷贝到cloudflare的worker.js,把它覆盖掉。

拷贝完成以后,我们点击右上角的部署,点击设置,这里还是给他添加一个域名。

我们来测试一下。我在Github上面找了一个Gemini的客户端项目,这个项目只有5个star,它是使用原生js来实现的一个Gemini的多模态API,现在都非常的简陋。我们先跑起来再说,后期有时间,我把它跟proxy项目合并起来,改造一下。

Gemini多模态客户端:GitHub - ViaAnthroposBenevolentia/gemini-2-live-api-demo: Vanilla JS web interface for Gemini 2.0 Flash Experimental Multimodal API with text, audio, camera, screen inputs and audio response and function calling from the LLM

首先我先把配置文件创建出来,按照模板新建一个config.js文件 。把我谷歌GMAI的API Key填到里面。

接下来我来修改这个文件,在core里面有一个websocket-client.js,把这个连接地址改一下,改成我自己的域名。

我把它启动一下,我们按照他的说明把项目启动一下。我打开一个命令提示符CD,然后进入项目目录。接下来,我把这个命令执行一下,启动成功。

精选文章

旧手机变废为宝|五分钟安装Ollama跑开源大模型 - 开发调优 - LINUX DO

旧手机变废为宝|五分钟安装Ollama跑开源大模型 - 开发调优 - LINUX DO 在开始之前,请你先准备好一台旧Android手机以及特殊的网络环境。 1.安装Termux 2.更新软件包及依赖 pkg update && pkg upgrade 3.安...