Spaces:
Running
Running
metadata
title: Antigravity2api
emoji: 🚀
colorFrom: blue
colorTo: purple
sdk: docker
pinned: false
license: mit
Antigravity Gateway
Google Antigravity API to OpenAI Proxy
将 Google Antigravity API 转换为 OpenAI 兼容格式的高性能网关服务。
内置现代化管理后台,支持多账号轮询、Token 自动刷新、密钥管理与实时监控。
本项目基于 liuw1535/antigravity2api-nodejs 进行开发和优化。
⚠️ 重要提示
使用风险警告
- 本项目仅供学习与技术研究,请勿用于商业用途或违反服务条款的场景
- 使用本项目可能违反 Google 服务条款,存在账号被封禁的风险
- 请妥善保管
data/accounts.json文件,其中包含敏感的访问凭证- 建议不要将账号数据文件提交到版本控制系统或公开分享
- 使用者需自行承担因使用本项目而产生的一切后果
✨ 功能特性
核心功能
- OpenAI 兼容: 完全兼容 OpenAI Chat Completions API 格式,无缝对接现有生态。
- 流式响应: 支持 SSE (Server-Sent Events) 流式输出,体验流畅。
- 多模态支持: 支持文本及 Base64 编码的图片输入 (GPT-4 Vision 兼容)。
- 工具调用: 支持 Function Calling,扩展模型能力。
增强特性
- 多账号池: 支持配置多个 Google 账号,自动负载均衡与轮询。
- Token 自动保活: 内置 Token 刷新机制,自动处理过期与 403 错误。
- 高并发支持: 优化的请求处理队列,支持高并发场景。
管理后台 (Dashboard)
- 现代化 UI: 基于 React + Tailwind CSS 构建的极简主义设计风格。
- 密钥管理: 创建、删除、禁用 API Key,支持设置额度与过期时间。
- Token 管理: 可视化管理 Google 账号,实时查看 Token 状态。
- 系统监控: 实时监控 CPU、内存、请求数与响应时间。
- 在线测试: 内置 Chat 调试界面,方便测试模型效果。
- 日志审计: 完整的请求日志记录与查询。
🛠️ 技术栈
- 后端: Node.js (Express), Native Fetch
- 前端: React, Vite, Tailwind CSS, Framer Motion, Lucide React
- 数据存储: 本地 JSON 文件存储 (轻量级,无外部数据库依赖)
🚀 快速开始
环境要求
- Node.js >= 18.0.0
1. 安装与构建
# 安装项目依赖
npm install
# 构建前端资源
npm run build
2. 配置服务
编辑根目录下的 config.json 文件:
{
"server": {
"port": 8045, // 服务端口
"host": "0.0.0.0" // 监听地址
},
"security": {
"apiKey": "sk-admin", // 管理员/默认 API Key
"maxRequestSize": "50mb" // 最大请求体大小
},
"defaults": {
"model": "gemini-2.0-flash-exp" // 默认模型
}
}
3. 添加 Google 账号
运行 OAuth 登录脚本获取 Access Token:
npm run login
按提示在浏览器中授权,获取的 Token 将自动保存到 data/accounts.json。
数据安全警告
data/accounts.json文件包含您的 Google 账号访问令牌,具有高度敏感性- 请确保该文件权限设置正确 (建议 chmod 600),仅所有者可读写
- 切勿将此文件上传到 GitHub、Gitee 等公开代码仓库
- 切勿与他人分享此文件或将其暴露在公网环境
- 定期检查
.gitignore文件,确保data/目录已被排除- 如发现令牌泄露,请立即在 Google 账号设置中撤销相关应用权限
4. 启动服务
# 生产模式
npm start
# 开发模式 (支持热重载)
npm run dev
服务启动后,访问 http://localhost:8045 进入管理后台。
首次登录提示
- 默认管理密码:
admin123- 登录后请及时在设置页面修改密码以确保安全
🔌 API 使用指南
基础 URL
http://localhost:8045
认证
所有请求需在 Header 中携带 API Key:
Authorization: Bearer <YOUR_API_KEY>
1. 获取模型列表
GET /v1/models
2. 聊天补全
POST /v1/chat/completions
请求示例:
curl http://localhost:8045/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-admin" \
-d '{
"model": "gemini-2.0-flash-exp",
"messages": [{"role": "user", "content": "Hello!"}],
"stream": true
}'
📂 项目结构
.
├── client/ # 前端 React 项目
│ ├── src/
│ │ ├── components/ # UI 组件
│ │ ├── pages/ # 页面组件
│ │ └── ...
│ └── ...
├── data/ # 数据存储目录
│ ├── accounts.json # Google 账号数据
│ ├── keys.json # API Key 数据
│ └── ...
├── src/ # 后端源码
│ ├── server/ # 服务器入口
│ ├── api/ # API 路由处理
│ ├── auth/ # 认证与 Token 管理
│ └── ...
├── scripts/ # 工具脚本
├── config.json # 配置文件
└── package.json
⚖️ 免责声明
本项目 (Antigravity Gateway) 仅供技术学习、研究和交流使用,开发者不对使用本项目产生的任何后果负责。
使用条款
自行承担风险: 使用者在使用本项目时,需完全理解并接受相关风险,包括但不限于:
- Google 账号被暂停、封禁或限制访问
- 违反 Google 服务条款可能导致的法律责任
- 数据泄露、隐私侵犯等安全风险
- 服务不稳定、数据丢失等技术问题
禁止商业用途: 本项目严禁用于任何商业用途,包括但不限于:
- 提供付费 API 代理服务
- 作为商业产品的技术组件
- 任何形式的盈利性活动
合规使用: 使用者需确保:
- 遵守所在地区的法律法规
- 遵守 Google 及相关服务的使用条款
- 不利用本项目进行任何违法或侵权行为
数据安全: 使用者应当:
- 妥善保管账号凭证和敏感数据
- 采取适当的安全措施防止数据泄露
- 对因疏忽导致的安全问题自行负责
无担保声明: 本项目按 "现状" 提供,不提供任何明示或暗示的担保,包括但不限于:
- 适销性担保
- 特定用途适用性担保
- 不侵权担保
- 服务质量或可靠性担保
责任限制
在任何情况下,本项目的开发者、贡献者及相关方均不对以下情况承担责任:
- 因使用或无法使用本项目而产生的任何直接、间接、偶然、特殊或后果性损害
- 数据丢失、业务中断、利润损失或其他经济损失
- 第三方的任何索赔或诉讼
使用本项目即表示您已充分理解并接受上述所有条款。如不同意,请勿使用本项目。
📝 License
MIT License
本许可证授予的权利和义务不影响上述免责声明的效力。