使用 Cloudflare 代理 Gemini API

354 阅读1分钟

Cloudflare中转Gemini API 到通用格式,Google Gemini编程,音视频,多模态能力测试

很早之前就看到了使用 Cloudflare 代理 Gemini API 的文章,一直没有行动,今天请假在家全流程走了一遍,记录一下关键节点和碰到的问题。

graph TD
API[Gemini API key 申请] --> Worker[Cloudflare Worker] --> 域名注册 --> DNS[DNS 服务器] --> 自定义域名 --> 测试验证

Gemini API key 申请

aistudio.google.com/

这一步很顺利,按照下面的流程直接成功。

graph LR
打开官网 --> 登录 --> G[Get API key] --> 创建密钥 --> 完成

image.png

创建 Cloudflare Worker

cloudflare.com

创建 Worker

graph LR
打开网站 --> 注册 --> 登录 --> 创建[创建 Worker] --> 编辑代码 --> 测试验证 --> 部署

其他环节都比较顺利,重点讲一下编辑代码和测试验证。

代码说明

仔细查看了 Gemini-proxy 的代码,只有不到 50 行。

graph TD
fetch[添加 fetch 事件处理函数] --> 修改请求地址[修改请求 orgin 为 Gemini API 官方地址] --> 调用[调用 Gemini API] --> 跨域[设置相应头, 支持跨越] --> 返回[将 Gemini API 相应返回]

编辑代码

看懂代码后继续看了下其他项目,主要流程一样,细节上有差异。

graph TD
编辑代码 --> Gemini-proxy[查看 Gemini-proxy 代码] --> search[Github 中搜索 Cloudflare Gemini] --> most[使用 Most Star 排序]  
most--> ultrasev/llmproxy --> work.js
most --> tech-shrimp/gemini-proxy --> work.js
work.js --> 复制[复制代码到 Cloudflare work.js 中]

image.png

image.png

测试验证

https://gemini.CLOUDFLARE_USER_NAME.workers.dev/v1beta/models/gemini-2.0-flash:generateContent?key=GEMINI_API_KEY

image.png

image.png

域名注册

buy.cloud.tencent.com/domain

第一次注册域名,主要麻烦在选域名和等待实名审核通过,其他都比较简单顺利。

graph LR
腾讯云 --> 登陆 --> 选域名 --> 创建信息模版 --> 实名认证 --> 等待审核通过 --> 付款

DNS 设置

域名注册比较顺利,但是 DNS 服务器设置着了很久才成功。

graph TD
添加域名[Cloudflare 上添加域名] --> 选择套餐 --> free[Free 计划] --> DNS[复制 Cloudflare 分配的 DNS 服务器] --> 修改[修改 DNS 服务器] --> 等待[等待 DNS 生效]

image.png

image.png

image.png

自定义域名

image.png

测试验证

image.png