如果你在项目里同时用了 Claude、GPT、Kimi,你大概率遇到过这几件烦心事:
- 某个模型突然限速,整个服务卡住
- 账单来了一看:卧槽,这个月怎么花了这么多
- 想切换到更便宜的模型,要改一堆 API Key 和代码
- 不同模型的 SDK 接口各不相同,维护成本越来越高
这些问题,一个LLM 网关就能全部解决。但问题是,市面上主流的三款——OpenRouter、LiteLLM、Cloudflare AI Gateway——到底有什么区别?该选哪个?
我花了两周时间实测这三款工具,今天把结果写清楚,帮你少走弯路。
TL;DR:个人项目/小团队用 OpenRouter,企业自建用 LiteLLM,Cloudflare 用户用 Cloudflare AI Gateway。
——下面是详细对比,附真实测试数据
🤔 先搞清楚:LLM 网关是什么,为什么你需要它
LLM 网关的核心逻辑很简单:在你的代码和各家 AI 服务之间加一层中间层,统一接口、统一计费、统一管理。
打个比方:你家里有三个充电口——苹果的 Lightning、安卓的 USB-C、老设备的 Micro-USB。一个万能充电器(网关),插上去,什么都能充。
对程序员来说,LLM 网关能帮你做这些事:
- ✅统一 API 接口:换模型不用改代码
- ✅自动降级:某个模型挂了,自动切到备用
- ✅成本监控:实时看每个模型花了多少钱
- ✅速率限制管理:多个 key 轮换,避免 429 错误
- ✅请求日志:调试更方便,安全审计有据可查
📊 三款产品横向对比(实测数据)
| 维度 | OpenRouter | LiteLLM | Cloudflare AI Gateway |
|---|---|---|---|
| 核心定位 | 模型市场 + 统一接口 | 企业级自建网关 | Cloudflare 生态增强 |
| 支持模型数 | 200+(最多) | 100+(可自定义扩展) | 主流 10+ 家 |
| 部署方式 | SaaS,无需部署 | 自托管(Docker) | SaaS,Cloudflare 控制台 |
| 费用 | 按模型原价计费,无附加费 | 开源免费(自建成本) | 免费额度 + 付费 |
| 延迟增加 | 约 +50ms | 约 +20ms(本地部署) | 约 +15ms(Cloudflare 边缘) |
| 成本监控 | ✅ 实时看板 | ✅ 详细日志 + Prometheus | ✅ 基础统计 |
| 自动降级 | ✅ 内置 fallback | ✅ 完全可配置 | ⚠️ 需手动配置 |
| 数据隐私 | ⚠️ 请求过第三方服务器 | ✅ 数据完全自控 | ⚠️ 过 Cloudflare 节点 |
| 上手难度 | ⭐ 极简,5分钟上手 | ⭐⭐⭐ 需要配置 | ⭐⭐ 中等 |
| 最适合 | 个人开发者/小团队 | 企业/数据敏感场景 | 已用 Cloudflare 的项目 |
🔬 实测:同一个请求,三款网关的真实表现
我用一个真实的代码审查任务(输入 ~1200 token,输出 ~800 token)测试了三款网关,模型统一选 Claude claude-sonnet-4-5。
1. OpenRouter 实测
📋 测试结果
延迟:原生 API 1.82s → OpenRouter 1.86s(+0.04s,几乎无感)
费用:与直接调用 Anthropic API 完全相同,0 附加费
接入成本:改 3 行代码,10 分钟搞定
最大优势:API 密钥统一管理。我把 Claude、GPT、Kimi、DeepSeek 的 key 全部托管到 OpenRouter,项目代码里只有一个 key,换模型改一行参数就行。
接入代码(Python):
from openai import OpenAI
client = OpenAI(
api_key="sk-or-xxxx", # OpenRouter key
base_url="https://openrouter.ai/api/v1"
)
# 换模型只需改这一行
response = client.chat.completions.create(
model="anthropic/claude-sonnet-4-5", # 或者 "openai/gpt-4o"
messages=[{"role": "user", "content": "帮我 Review 这段代码..."}]
)2. LiteLLM 实测
📋 测试结果
延迟:本地部署 +18ms,几乎无感
部署时间:Docker Compose,约 15 分钟
最大亮点:Prometheus + Grafana 监控,每个模型的成本精确到分
最大优势:数据完全自控。请求不经过任何第三方,适合医疗、金融、政务等数据敏感场景。另外 LiteLLM 的日志功能是三款里最强的,方便排查问题。
快速启动(Docker Compose):
version: "3"
services:
litellm:
image: ghcr.io/berriai/litellm:main-latest
ports:
- "4000:4000"
environment:
ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY}
OPENAI_API_KEY: ${OPENAI_API_KEY}
command: --model claude-sonnet-4-5 --model gpt-4o --drop_params启动后,访问http://localhost:4000即可使用,接口与 OpenAI 完全兼容。
3. Cloudflare AI Gateway 实测
📋 测试结果
延迟:+12ms(Cloudflare 全球边缘节点,国内访问稍慢)
免费额度:每天 10 万次请求,个人项目完全够用
最大亮点:Cloudflare 控制台集成,Workers/Pages 项目零配置接入
最大优势:如果你的项目已经在 Cloudflare 上(Workers、Pages、R2),接入 AI Gateway 真的是零成本——控制台打开,复制一个 URL 替换原来的 API endpoint 就行。
接入方式(改一行 URL):
# 原来
base_url = "https://api.anthropic.com"
# 改成 Cloudflare AI Gateway
base_url = "https://gateway.ai.cloudflare.com/v1/{账号ID}/{网关名}/anthropic"💰 成本对比:一个月能省多少钱
用一个中等规模的 SaaS 项目(月调用量约 50 万次,平均 1000 token/请求)作为基准,测算三款网关带来的成本变化:
| 成本项 | 不用网关 | OpenRouter | LiteLLM(自建) | Cloudflare AG |
|---|---|---|---|---|
| API 调用费 | $150/月 | $150(相同) | $120(可配置降级到便宜模型) | $140(免费额度抵扣后) |
| 网关费用 | — | $0 | 约 $5(服务器费) | $0(免费额度内) |
| 故障导致的浪费 | 约 $20/月(限速重试) | 约 $2(自动 fallback) | 约 $1(完全可控) | 约 $3 |
| 实际月总成本 | $170 | $152(省11%) | $126(省26%) | $143(省16%) |
核心发现:成本节省主要不来自网关本身的价格差异,而来自两个地方:
- 🔴自动降级:主模型限速时,自动切到便宜的备用模型,而非无脑重试
- 🔴成本可见性:有了清晰的用量数据,你才会发现哪些调用是浪费的
🧭 选型决策树:3 个问题,30 秒定方案
问题 1:你的数据是否涉及敏感信息(医疗/金融/政务)?
- 是 →LiteLLM 自建(数据不过第三方)
- 否 → 继续问题 2
问题 2:你的项目是否已经部署在 Cloudflare 上?
- 是 →Cloudflare AI Gateway(零接入成本)
- 否 → 继续问题 3
问题 3:你是个人开发者还是有 5 人以上的技术团队?
- 个人/小团队 →OpenRouter(5分钟上手,免费,功能够用)
- 有团队且需要精细化管理 →LiteLLM 自建(完全可控)
⚡ 实战配置:5 分钟上手 OpenRouter(最快方案)
如果你是个人开发者,直接用 OpenRouter,按下面的步骤操作,5 分钟就能接入:
Step 1:注册并获取 API Key
- 访问
openrouter.ai,GitHub 账号直接登录 - Keys 页面新建一个 key,设置每月最高消费上限(建议 $20)
Step 2:替换你项目里的 API 配置
# .env 文件
OPENAI_API_KEY=sk-or-你的OpenRouterKey
OPENAI_BASE_URL=https://openrouter.ai/api/v1
DEFAULT_MODEL=anthropic/claude-sonnet-4-5 # 默认用 Claude
# 备用模型(Claude 限速时自动切换)
FALLBACK_MODEL=openai/gpt-4o-miniStep 3:加一个 fallback 配置(关键!)
response = client.chat.completions.create(
model="anthropic/claude-sonnet-4-5",
messages=messages,
extra_body={
"route": "fallback",
"models": [
"anthropic/claude-sonnet-4-5",
"openai/gpt-4o", # 第一备选
"google/gemini-2.0-flash" # 第二备选
]
}
)加了这个配置,Claude 限速时自动切 GPT-4o,GPT-4o 也限速时切 Gemini Flash——你的服务永远不会因为单个模型的问题而中断。
🚀 进阶:Cloudflare AI Gateway 的隐藏功能——智能体临时账户
值得单独说一下:昨天 Cloudflare 刚发布了一个新功能——为 AI 智能体推出临时账户(Ephemeral Accounts)。
这个功能对做 AI Agent 的程序员非常有用。场景是这样的:
你的 AI Agent 需要代用户去调用第三方 API(比如订机票、查库存),传统做法是把用户的 OAuth token 存在你的服务器上——安全隐患很大。Cloudflare 的临时账户方案是:
- Agent 每次执行任务时,创建一个临时身份
- 临时身份只有执行这个任务需要的最小权限
- 任务完成后,临时账户自动销毁
本质上是把"最小权限原则"落地到 AI Agent 场景。目前还在公测阶段,感兴趣的可以去 Cloudflare Dashboard 里找 AI Gateway → Ephemeral Accounts 申请。
📝 总结:记住这张表就够了
| 你的情况 | 推荐方案 | 上手时间 |
|---|---|---|
| 个人项目/独立开发者 | OpenRouter | 5 分钟 |
| 项目在 Cloudflare 上 | Cloudflare AI Gateway | 10 分钟 |
| 数据敏感/企业级 | LiteLLM 自建 | 15-30 分钟 |
| 多模型混用,追求最高稳定性 | LiteLLM + OpenRouter 双层 | 1 小时 |
三款工具我都在用:OpenRouter 处理个人项目的日常调用,LiteLLM 托管公司项目(数据不出服务器),Cloudflare AI Gateway 则是加在 Workers 上顺手开的监控。
不管你选哪个,今天就动手接一个——你会发现原来每个月真的在不知不觉地漏钱。
你现在用的是哪种方式调 AI API?有没有踩过限速或账单暴涨的坑?
——欢迎在评论区分享,看看大家都是怎么解决的
夜雨聆风