在大陆地区优雅地使用Gemini Pro模型

Warning

在中华人民共和国境内提供生成式 AI 服务需遵守《生成式人工智能服务管理暂行办法》

引言

最近 OpenAI 发布的Sora可谓是抢尽风头，成为 GAI（生成式人工智能）界的当红炸子鸡。好巧不巧的是，Gemini Pro 1.5也与 Sora 同一天发布，以至于风头全被 Sora 抢走了。

其实谷歌这次推出的 Gemini Pro 1.5 也是很猛的（详情见上文链接），目前博主也已经申请了这款模型的测试权限。在等待之余我们不妨先体验一下 Gemini Pro 1.0 。

API 申请

众所周知，因为某些众所周知的原因，大陆用户众所周知地无法直接使用 Gemini，这是一份支持的国家和地区列表。

使用了对应地区的 Proxy 后，我们便可以开始着手进行 API Key 的获取工作。访问此链接按照页面的提示进行即可获得 API Key，请务必保密自己的 API Key。

一般用户可免费使用 Gemini Pro 1.0 模型，Ultra 模型则需要付费使用。

使用 Cloudflare Workers 反代

Google 官方提供的 api 在国内是无法正常访问的 所以我们通过反代的方式来让它可以在国内环境下正常访问。进行这一步我们需要一个域名和 Cloudflare 账号，并将其添加到 Cloudflare 内，具体操作本文不再赘述。

访问 dash.cloudflare.com 进入 Cloudflare 的仪表盘，点击侧栏的 Workers 和 Pages 选项

点击 创建应用程序

点击 创建 Worker

名称我们可以随便取一个，也可以直接用默认的。然后点击 部署 按钮即可。部署完成后，我们直接点击 编辑代码 按钮。

这时我们会进入一个编辑器界面，我们把预设的代码删除，输入

Copy
export default {
async fetch(request, env) {
const url = new URL(request.url);
url.host = 'generativelanguage.googleapis.com';
return fetch(new Request(url, request))
}
}

点击右上角的 保存并部署 按钮，这样你的 Gemini API 反代就已经就绪了，你可以使用你的 workers 的地址替代谷歌提供的 api 地址。但是由于 workers 的默认地址被 GFW 所屏蔽，我们需要添加自己的域名。

我们在 Workers 的页面选择 触发器 选项卡，点击 添加自定义域 按钮。（注意：这里添加的域名必须是已经在 Cloudflare 中绑定的域名）

随后我们便可以使用自己的域名来访问 Gemini 的 api。

前端部署

接下来我们只需要利用 ChatGPT-Next-Web或GeminiProChat等项目，填写自己的 api key 和反代的 api 链接即可免费使用 Gemini Pro 1.0 模型，限额是 60 次请求 /min ，还是很慷慨的。下面以 ChatGPT-Next-Web 为例。我们访问其代码库，点击右上角的 Fork。

一路确定下一步即可。
随后我们访问Vercel，使用 GitHub 直接登录。
点击右上角的 Add New... 下拉选择 Project 在 Import Git Repository 区域选择刚刚 Fork 的仓库，点击 Import

在 Environment Variables 栏目下根据项目的指南填写环境变量，下面给出本人的环境变量供大家参考。

Google_URL 是自己刚刚反代的 api 的链接，第二栏是指定显示出的模型，第三栏是你在 Google 获得的 Api Key。
一路确定后，前端环境即部署完毕。为了访问更加方便，我们在 Settings 界面的 Domain 选项卡添加自己的域名即可。

大功告成

这时我们访问刚刚给 Project 指派的域名，便可以看到聊天界面开始对话了。

部署 GeminiProChat 的步骤也与之类似。