web2api
多引擎号池,统一成 OpenAI 兼容 API
web2api 把 Gemini 网页号、AI Studio 号、订阅制工具账号和第三方 Key 的接入、调度、Key 分发与用量统计放在一个 Go 服务里。客户端只需要配置一个 Base URL 和一个 sk- Key,就能用熟悉的 OpenAI SDK 调用文本、流式聊天和视频任务。
路由只按一条规则:谁声明谁接。模型在哪个账号的目录里就交给那个引擎,没有任何账号声明就返回 404 model_not_found,不猜、不兜底。
你可以用它做什么
OpenAI 兼容
沿用 Chat Completions、Bearer Key 和 SSE 流式响应,已有 SDK 基本无需改造。
多引擎号池
网页号、AI Studio、订阅号与第三方 Key 统一管理,自动轮询、冷却和故障切换。
可视化管理
管理台负责账号、Key、模型、用量和系统状态,运行时加号无需重启。
三步开始
- 启动服务并打开
/admin,完成管理员和 Redis 初始化。 - 在管理台添加账号,创建一个客户端
sk-Key。 - 将 SDK 的
base_url指向http://你的地址:8800/v1。
python
from openai import OpenAI
client = OpenAI(
api_key="sk-从管理台创建",
base_url="http://localhost:8800/v1",
)
response = client.chat.completions.create(
model="gemini-2.5-flash",
messages=[{"role": "user", "content": "你好,介绍一下 web2api"}],
)
print(response.choices[0].message.content)文档入口
| 内容 | 适合谁 | 入口 |
|---|---|---|
| 项目介绍 | 想了解架构、引擎和数据流 | 项目介绍 |
| 快速开始 | 第一次部署和调用 | 快速开始 |
| v1 接口 | 接入客户端或编写 SDK | v1 API 总览 |
| OpenAPI JSON | 导入 Postman、Insomnia 或 Swagger UI | /v1/docs |
| 管理 API | 自动化管理账号和 Key | README 管理 API |
项目状态
- 服务端:Go 单体服务,SQLite 保存业务数据,Redis 保存管理会话。
- 协议:OpenAI Chat Completions 兼容,OpenAPI 3.1 描述对外 v1 接口。
- 部署:Windows、Linux、macOS 二进制,以及 Docker Compose。
- 开源协议:MIT。