自建大模型 API 分发与专属 Web 终端 (含 G4F 与 Gemini 免费接入)
项目准备
- new-api: 强大的 AI 模型接口管理与分发系统。
- chatgpt-next-web: 跨平台、轻量级且高度可定制的 ChatGPT 网页终端。
- g4f (GPT4Free): 聚合多种免费大模型接口的逆向项目。
- gemini-fastapi: 将 Google Gemini 网页版 Cookie 转换为 OpenAI 标准 API 格式的项目。
容器化部署
我们使用 docker-compose 将这四个服务部署在一起。为了方便且安全,我们不使用静态 IP,而是直接利用 Docker 的内部网络,通过“服务名”让它们互相通信。外部请求全部交给前端 chatgpt-next-web 处理。
1. 准备环境变量文件
由于 gemini-fastapi 需要用到你的个人 Cookie 等敏感信息,建议在部署目录下新建一个 .env 文件来统一管理。
创建 .env 文件并填入你的 Gemini 抓包数据:
1 | # 你自定义的一个密钥,用于在 new-api 中调用此接口时验证 |
2. 创建 docker-compose.yml
1 | services: |
在同级目录下执行启动命令:
1 | docker-compose up -d |
New API 渠道配置指南
现在你的四大金刚已经启动。接下来登录 new-api(http://服务器IP:3000,默认账号 root,密码 123456),将后端的两个免费接口接入到系统中:
接入 G4F 渠道
在“渠道”页面添加新渠道:
- 类型:选择
OpenAI - 模型:填入 G4F 支持的模型名称(如
gpt-3.5-turbo,gpt-4等) - 密钥:随便填任意字符(例如
sk-g4f),G4F 本地部署通常不需要强验证。 - **代理地址 (Base URL)**:填入
http://g4f-slim:8080(注意:这里我们直接用内网服务名g4f-slim和容器内部端口8080,安全且高效)。
接入 Gemini 渠道
继续添加新渠道:
- 类型:选择
OpenAI(gemini-fastapi 已经将接口格式转换为了 OpenAI 标准格式)。 - 模型:选择
gemini-pro,gemini-1.5-pro等。 - 密钥:填入你刚才在
.env文件中设置的API_KEY(即your_custom_gemini_key)。 - **代理地址 (Base URL)**:填入
http://gemini-fastapi:8000。
生成最终令牌并使用
- 进入“令牌”页面,新建一个令牌并复制它生成的 Key。
- 将这个 Key 填入
docker-compose.yml中chatgpt-next-web服务的OPENAI_API_KEY变量。 - 执行
docker-compose restart chatgpt-next-web重启前端容器。 - 打开
http://服务器IP:4000,输入你在配置中设置的CODE密码,即可开始畅享你聚合了各大模型能力的私人 AI 助手!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Meng's blog!