VPS 自建 AI API 网关完整教程:One-API、New-API、VoAPI 三方案对比
前段时间我同时在用 Claude API、DeepSeek、还有硅基流动上的 Qwen。每次在 OpenClaw 里换模型,要改 baseURL、改 API Key;Cherry Studio 那边也要单独维护一套配置;哪天突然想在 Open WebUI 里试个新模型,又得重新填一遍。
朋友问我:「你就没想过搞个统一的接口,所有工具都走一个地方?」
我当时想着这不就是多一层转发、徒增延迟嘛——后来真搭起来发现想多了,延迟基本感觉不到,但管理方便程度差了一个量级。换模型不用动客户端,加 Key 不用挨个软件改,还顺带有了 token 消耗统计。
这东西解决什么问题
就一件事:你的 API Key 只存一个地方,所有 AI 工具共用一个 baseURL。
顺带来的好处:
- 配多个上游渠道,某家挂了或者限速,自动换备用,不用手动切
- 能看每天用了多少 token,哪个模型最费钱
- 可以给朋友开账号,设额度上限,一个 Key 多人用
有一点要说清楚:如果你用的是 Claude、ChatGPT,但手上根本没有付费 API Key,只有账号——那是另一回事,CLIProxyAPI 走的是账号权限转发,不需要 Key。下面说的这三个都是「有 Key 但懒得管」的场景。
三个方案
One-API
最老的一个,2023 年就出来了,GitHub 是 songquanpeng/one-api。Go 写的,单二进制,SQLite 默认,512MB 内存的机子都能跑。
支持的渠道挺全:OpenAI、Azure、Claude(含 AWS Claude)、Gemini、DeepSeek、豆包、文心、通义、星火、混元、Moonshot、Minimax、Groq、Ollama、硅基流动、xAI……官方列表 20 多个,还能自己接第三方代理。失败重试、负载均衡都有。
缺点是界面老,没有格式互转,统计比较粗糙。但如果只是自己用,这些都不是大问题。
New-API
GitHub 是 QuantumNous/new-api,从 One-API 演化来的,数据库完全兼容,已经有 One-API 的直接迁过来就行。
比 One-API 多了不少东西。几个我觉得实用的:
- Midjourney 和 Suno 接口支持,不只是文本模型
- OpenAI Realtime API(实时语音对话那个)
- 推理力度可以直接在模型名后面加后缀——o 系列加
-high/-medium/-low,Claude 加-thinking开思考模式,省得每次手动改参数 - 有数据看板,调用量和 token 消耗能看图表
部署一样简单,Docker 一行,SQLite 默认跑,界面比 One-API 好看一点。
VoAPI
GitHub 是 VoAPI/VoAPI,不是从 One-API fork 的,全新写的,界面是三个里最好看的。
社区版就已经有不少东西:JS 规则引擎(可以自己写逻辑)、5 层用户等级、渠道熔断和自动恢复、实时 RPM/TPM 监控、渠道走代理(HTTP/SOCKS5 都行)、一键从 One-API/New-API 迁数据。Pro 版加了在线支付、实名认证、工单、MCP 服务分发这些,更偏商业运营方向。
麻烦的地方是:必须先有 MySQL 和 Redis 才能跑,还要手写 config.yml。自己用嫌太重,做分发站给多人用就比较合适。
快速对比
安装难度
One-API ✅ 一行 Docker
New-API ✅ 一行 Docker
VoAPI ⚠️ 要先搭 MySQL + Redis,手写配置
界面
One-API ❌ 老,凑合用
New-API ✅ 中等,有图表
VoAPI ✅✅ 最好看
统计
One-API ❌ 简单额度明细
New-API ✅ 图表看板
VoAPI ✅✅ 实时 RPM/TPM,最详细
特殊接口(Midjourney/Suno/Realtime)
One-API ✅ 绘图接口
New-API ✅✅ MJ + Suno + Realtime
VoAPI ✅ 规则引擎扩展
多用户
One-API ✅ 基础
New-API ✅ 分组权限
VoAPI ✅✅ 等级体系 + 分组限额
资源占用
One-API ✅✅ 最轻
New-API ✅ 较轻
VoAPI ⚠️ MySQL + Redis 一起算,比较重
装 New-API
VPS 装好 Docker,开 3000 端口,一行命令:
docker run --name new-api -d --restart always \
-p 3000:3000 \
-e TZ=Asia/Shanghai \
-v ./data:/data \
calciumion/new-api:latest数据存在 ./data/,SQLite,不用额外数据库。跑起来访问 http://你的IP:3000。
默认账号 root 密码 123456,进去第一件事改密码,别忘。
加渠道
「渠道」→「添加渠道」。以硅基流动为例(DeepSeek、Qwen 都有,注册送 14 元代金券):
- 类型:「硅基流动」或「OpenAI 兼容」
- BaseURL:
https://api.siliconflow.cn - 密钥:你的硅基流动 Key
- 模型:
deepseek-ai/DeepSeek-V3,Qwen/Qwen2.5-72B-Instruct这样填
Claude 的话类型选「Anthropic」,baseURL 留空,填 Key 就行。
建令牌
「令牌」→「添加令牌」,设好名字和额度上限,生成之后把这个 Token 复制好,后面所有客户端填这个。
到这里网关就好了,两个信息记下来:
- baseURL:
http://你的IP:3000/v1 - Key:刚才那个令牌
有条件的话套个 Nginx + HTTPS,裸 HTTP 放 Key 不太好。
接进 OpenClaw
我现在 OpenClaw 就是这么用的,配一次之后换模型只改网关后台,本地不用动。
在 openclaw.json 的 models.providers 加一段:
{
"models": {
"providers": {
"mygateway": {
"type": "openai",
"baseUrl": "http://你的IP:3000/v1",
"apiKey": "sk-你的令牌"
}
}
}
}然后切模型:
openclaw models set mygateway/deepseek-ai/DeepSeek-V3对话里临时换:/model mygateway/claude-3-5-sonnet
网关后台加了新渠道,OpenClaw 这边直接用,不用改配置。完整的模型切换用法看这篇,国内网络问题看这篇。
装 VoAPI
想要界面好看或者要多人用,试 VoAPI。先把 MySQL 和 Redis 跑起来,这是硬要求。
git clone https://github.com/VoAPI/VoAPI.git
cd VoAPI
cp config.yml.example config.yml
nano config.yml # 填 MySQL 连接信息
docker-compose up -d跑起来访问 http://你的IP:6800,第一个注册的账号是管理员,没有默认 root,直接注册就行。
甲骨文 ARM 机把镜像换成 voapi/voapi-linux-arm64。社区版免费,Pro 版多了支付、工单这些,对外运营才需要。
选哪个
- 自己用,顺便给几个工具共享 Key → New-API,一行 Docker,够了
- 要做多人分发站,界面和统计要好看 → VoAPI 社区版
- VPS 只有 512MB 内存,追求最轻 → One-API
- 没有付费 API Key,用的是 Claude/ChatGPT 账号额度 → 去看 CLIProxyAPI 那篇
VPS 一直在吃灰的话,跑个 New-API 是个不错的用途。没 VPS 的可以看看免费资源汇总,还有几个能用的。
Member discussion