Spaces:
Sleeping
title: Gemini Business2api
emoji: ♊
colorFrom: blue
colorTo: green
sdk: docker
pinned: false
Gemini Business2API
赋予硅基生物以灵魂
当时明月在 · 曾照彩云归
简体中文 | English
将 Gemini Business 转换为 OpenAI 兼容接口,支持多账号负载均衡、图像生成、视频生成、多模态能力与内置管理面板。
📜 开源协议与声明
开源协议: MIT License - 查看 LICENSE 文件了解详情
⚠️ 严禁滥用:禁止将本工具用于商业用途或任何形式的滥用(无论规模大小)
本工具严禁用于以下行为:
- 商业用途或盈利性使用
- 任何形式的批量操作或自动化滥用(无论规模大小)
- 破坏市场秩序或恶意竞争
- 违反 Google 服务条款的任何行为
- 违反 Microsoft 服务条款的任何行为
违规后果:滥用行为可能导致账号永久封禁、法律追责,一切后果由使用者自行承担。
合法用途:本项目仅限个人学习、技术研究与非商业性技术交流。
📖 完整声明与免责条款:DISCLAIMER.md
✨ 功能特性
- ✅ OpenAI API 完全兼容 - 无缝对接现有工具
- ✅ 多账号负载均衡 - 轮询与故障自动切换
- ✅ 自动化账号管理 - 支持自动注册与登录,集成多种临时邮箱,支持无头浏览器模式
- ✅ 流式输出 - 实时响应
- ✅ 多模态输入 - 100+ 文件类型(图片、PDF、Office 文档、音频、视频、代码等)
- ✅ 图片生成 & 图生图 - 模型可配置,Base64 或 URL 返回
- ✅ 视频生成 - 专用模型,支持 HTML/URL/Markdown 输出格式
- ✅ 智能文件处理 - 自动识别文件类型,支持 URL 与 Base64
- ✅ 日志与监控 - 实时状态与统计信息
- ✅ 代理支持 - 通过设置面板配置
- ✅ 内置管理面板 - 在线配置与账号管理
- ✅ PostgreSQL / SQLite 存储 - 账户/设置/统计持久化
🤖 模型功能
| 模型ID | 识图 | 原生联网 | 文件多模态 | 图片生成 | 视频生成 |
|---|---|---|---|---|---|
gemini-auto |
✅ | ✅ | ✅ | 可选 | - |
gemini-2.5-flash |
✅ | ✅ | ✅ | 可选 | - |
gemini-2.5-pro |
✅ | ✅ | ✅ | 可选 | - |
gemini-3-flash-preview |
✅ | ✅ | ✅ | 可选 | - |
gemini-3-pro-preview |
✅ | ✅ | ✅ | 可选 | - |
gemini-3.1-pro-preview |
✅ | ✅ | ✅ | 可选 | - |
gemini-imagen |
✅ | ✅ | ✅ | ✅ | - |
gemini-veo |
✅ | ✅ | ✅ | - | ✅ |
gemini-imagen:专用图片生成模型 ·gemini-veo:专用视频生成模型
🚀 快速开始
方式一:Docker Compose(推荐)
支持 ARM64 和 AMD64 架构
git clone https://github.com/Dreamy-rain/gemini-business2api.git
cd gemini-business2api
cp .env.example .env
# 编辑 .env 设置 ADMIN_KEY
docker-compose up -d
# 查看日志
docker-compose logs -f
# 更新到最新版本
docker-compose pull && docker-compose up -d
方式二:安装脚本
前置要求:Git、Node.js & npm(构建前端用)。脚本会自动安装 Python 3.11 和 uv。
Linux / macOS / WSL:
git clone https://github.com/Dreamy-rain/gemini-business2api.git
cd gemini-business2api
bash setup.sh
# 编辑 .env 设置 ADMIN_KEY
source .venv/bin/activate
python main.py
# pm2 后台运行
pm2 start main.py --name gemini-api --interpreter ./.venv/bin/python3
Windows:
git clone https://github.com/Dreamy-rain/gemini-business2api.git
cd gemini-business2api
setup.bat
# 编辑 .env 设置 ADMIN_KEY
.venv\Scripts\activate.bat
python main.py
# pm2 后台运行
pm2 start main.py --name gemini-api --interpreter ./.venv/Scripts/python.exe
安装脚本会自动完成:uv 安装、Python 3.11 下载、依赖安装、前端构建、.env 创建。
更新项目时重新运行同一脚本即可。
方式三:手动部署
git clone https://github.com/Dreamy-rain/gemini-business2api.git
cd gemini-business2api
curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.11
cd frontend && npm install && npm run build && cd ..
uv venv --python 3.11 .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate.bat
uv pip install -r requirements.txt
cp .env.example .env
# 编辑 .env 设置 ADMIN_KEY
python main.py
访问方式
- 管理面板:
http://localhost:7860/(使用ADMIN_KEY登录) - API 接口:
http://localhost:7860/v1/chat/completions
🗄️ 数据库持久化
设置 DATABASE_URL 可将账户、设置、统计写入数据库,避免容器重启丢数据。未设置时自动使用 SQLite(本地 data.db)。
配置方式:
- 本地部署 → 写入
.env - 云平台 → 在平台环境变量中设置
DATABASE_URL=postgresql://user:password@host/dbname?sslmode=require
免费 PostgreSQL 推荐:
| 服务 | 免费额度 | 获取方式 |
|---|---|---|
| Neon | 512MB 存储 / 100 CPUH 月 | 注册 → Create Project → 复制 Connection string |
| Aiven | 额度更充裕 | 注册 → 创建 PostgreSQL 服务 → 复制连接串 |
postgres://和postgresql://两种格式均可直接使用,无需手动转换。
⚠️ 常见问题:定期保存失败 / ConnectionDoesNotExistError
如果日志出现类似以下错误:
ERROR [COOLDOWN] 冷却期保存失败: connection was closed in the middle of operation
asyncpg.exceptions.ConnectionDoesNotExistError: connection was closed in the middle of operation
这是因为部分免费 PostgreSQL 服务(如 Aiven 免费版)会主动关闭长时间空闲的连接。不影响正常使用,下次操作会自动重新连接。如频繁出现,建议换用 Neon 或升级数据库套餐。
📦 数据库迁移(从旧版升级)
如果有旧的本地文件(accounts.json / settings.yaml / stats.json),运行迁移脚本:
python scripts/migrate_to_database.py
迁移脚本会自动检测环境(PostgreSQL / SQLite),迁移完成后自动重命名旧文件。
📡 API 接口
完全兼容 OpenAI API 格式,可直接对接 ChatGPT-Next-Web、LobeChat、OpenCat 等客户端。
| 接口 | 方法 | 说明 |
|---|---|---|
/v1/chat/completions |
POST | 对话补全(支持流式) |
/v1/models |
GET | 获取可用模型列表 |
/v1/images/generations |
POST | 图片生成(文生图) |
/v1/images/edits |
POST | 图片编辑(图生图) |
/health |
GET | 健康检查 |
调用示例:
curl http://localhost:7860/v1/chat/completions \
-H "Authorization: Bearer your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-2.5-flash",
"messages": [{"role": "user", "content": "你好"}],
"stream": true
}'
API_KEY在管理面板 → 系统设置中配置,留空则公开访问,支持多个 Key 逗号分隔。
📧 邮箱提供商配置
项目支持 4 种临时邮箱,用于自动注册账号。在 管理面板 → 系统设置 → 临时邮箱提供商 中切换。
Moemail(默认推荐)
开源临时邮箱服务,开箱即用。
- 项目地址:github.com/beilunyang/moemail
- 官网:moemail.app
- 配置项:API 地址 + API Key + 域名(可选)
DuckMail
临时邮箱 API 服务,推荐配置自定义域名。
- 域名管理:domain.duckmail.sbs
- 配置项:API 地址 + API Key + 注册域名
GPTMail
临时邮箱 API 服务,无需密码即可使用。
- 默认地址:
https://mail.chatgpt.org.uk - 默认 API Key:
gpt-test - 配置项:API 地址 + API Key + 域名(可选)
Freemail
需要自行搭建的临时邮箱服务,适合有服务器的用户。
- 项目地址:github.com/idinging/freemail
- 配置项:自部署服务地址 + JWT Token + 域名(可选)
提示:所有邮箱配置均在管理面板中完成,无需手动编辑配置文件。Microsoft 邮箱登录也在管理面板中操作。
🌐 推荐部署平台
除本地 Docker Compose 外,以下平台均支持 Docker 镜像部署:
| 平台 | 免费额度 | 特点 |
|---|---|---|
| Render | ✅ 有 | 支持 Docker、自动 SSL、免费 PostgreSQL |
| Railway | $5/月额度 | 一键 Docker 部署、自带数据库 |
| Fly.io | ✅ 有 | 全球边缘部署、支持持久化卷 |
| Claw Cloud | ✅ 有 | 容器云平台,简单易用 |
| 自建 VPS(推荐) | — | 完全可控,配合 Docker Compose |
Docker 镜像:
cooooookk/gemini-business2api:latest部署时设置环境变量
ADMIN_KEY和DATABASE_URL即可。
Zeabur 部署教程
Fork 本仓库到你的 GitHub
登录 Zeabur → 创建项目 → 共享集群 → 部署新服务 → 连接 GitHub → 选择 Fork 的仓库
添加环境变量:
变量名 必填 说明 ADMIN_KEY✅ 管理面板登录密钥 DATABASE_URL可选 PostgreSQL 连接串(推荐配置,避免重启丢数据) 持久化挂载目录(重要):
在服务设置中添加持久化存储:
硬盘 ID 挂载目录 data/app/data点击 重新部署 使配置生效
更新方式:GitHub 仓库 → Sync fork → Update branch,Zeabur 会自动重新部署。
🔄 独立刷新服务
如果需要将账号刷新服务单独部署(与主 API 分离),可使用 refresh-worker 分支:
git clone -b refresh-worker https://github.com/Dreamy-rain/gemini-business2api.git gemini-refresh-worker
cd gemini-refresh-worker
cp .env.example .env
# 编辑 .env 设置 DATABASE_URL
docker-compose up -d
该服务从数据库读取账号,独立执行定时刷新,支持 cron 调度、分批执行、冷却防重复。适合需要刷新服务与 API 服务分离部署的场景。
🌐 Socks5 免费代理池
自动注册/刷新账号时可配置代理以提高成功率。推荐使用免费 Socks5 代理池:
- 项目地址:github.com/Dreamy-rain/socks5-proxy
- 说明:免费代理不太稳定,但能一定程度提高注册成功率
- 使用方式:在管理面板 → 系统设置 → 代理设置中配置
📸 功能展示
管理系统
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
图片效果
![]() |
![]() |
![]() |
![]() |
更多文档
- 支持的文件类型:SUPPORTED_FILE_TYPES.md
⭐ Star History
如果这个项目对你有帮助,请给个 ⭐ Star!









