OpenRouter vs LiteLLM:如何选择 LLM 网关
OpenRouter vs LiteLLM: Which LLM Gateway Fits Your Stack?
OpenRouter 是托管在 Cloudflare 边缘的 LLM 网关,无需管理基础设施,收取 5.5% 平台费(前 100 万次请求免费),支持 70+ 提供商和自动故障转移。LiteLLM 是自部署代理(Docker/PostgreSQL/Redis),数据不离开内网,免费开源,但需承担基础设施成本(生产部署约数百美元/月)。当模型月支出超过约 $3,600(基础设施 $200/月)或 $9,100(基础设施 $500/月)时自托管更划算。LiteLLM 提供六种路由策略和自定义 Python 路由;OpenRouter 具备 SOC 2、GDPR 认证和零数据保留选项。两者可串联使用。
OpenRouter 这份官方对比很坦诚,把成本、延迟、合规的权衡掰开了讲,自建 LiteLLM 和托管谁更划算的算术也给清楚了,做 LLM 网关选型的直接看这篇就够了。

如果你正在为生产环境网关在 OpenRouter 和 LiteLLM 之间做选择,那么决策的关键在于路由层应该运行在哪里。
两者都能为你提供跨众多提供商的单一 OpenAI 兼容 API。OpenRouter 替你运行这一层,因此无需运维任何基础设施。LiteLLM 运行在你自己的基础设施内,因此你的数据留在自己的网络中,也无需支付平台费用,代价是你得自己运维 PostgreSQL、Redis 和 Docker。
当数据不能离开你的网络、你需要在自有基础设施内实现基于角色的访问控制,或者你的模型支出高到 5.5% 的平台费用超过自建代理的成本时,就选 LiteLLM。大多数其他情况则更适合托管方案。
决定路由层部署在哪里
OpenRouter 位于你的应用与 70 多家提供商之间,运行在 Cloudflare 的边缘网络上。你的应用调用 https://openrouter.ai/api/v1,OpenRouter 应用路由和故障转移,并将请求转发给上游提供商。你无需管理服务器、数据库或各提供商的凭证。
LiteLLM 是一个由你自己部署的代理,以 Docker 容器或 Kubernetes pod 的形式运行。它在你的网络内暴露同样的 OpenAI 兼容端点,将每个请求改写为提供商的原生格式,然后转发出去。PostgreSQL 存储支出数据和密钥;Redis 在生产环境中处理缓存和速率限制。这三者都由你来运行。
这种差异正是合规团队最先追问的问题。使用 LiteLLM 时,请求数据在到达提供商之前绝不会离开你的网络。而使用 OpenRouter 时,请求会先经过一个托管层,因此有严格数据驻留规定的团队应当审查其提供的路由选项和零数据保留(Zero Data Retention)控制措施。
OpenRouter: app -> OpenRouter (Cloudflare edge) -> provider
LiteLLM: app -> LiteLLM proxy (your infra: Docker + PostgreSQL) -> provider各网关的成本对比
OpenRouter 以 0% 加价将提供商定价原样传递,然后对按需付费的额度购买收取 5.5% 的平台费,每笔购买最低 $0.80。自带密钥(Bring Your Own Key)可将费用降至 5%,且每月前 100 万次请求免费。失败的请求不计费。
LiteLLM 可免费自托管。你改为支付基础设施费用:PostgreSQL 数据库、可选的 Redis 以及算力,生产部署通常每月花费几百美元。LiteLLM Enterprise 增加了 SSO、SCIM、RBAC、审计日志和 Prometheus 指标,定价需通过其销售团队获取。
这个临界点是道算术题。用你的每月基础设施成本除以 5.5% 的费率。当基础设施约为 $200/月时,一旦你的模型支出超过约 $3,600/月,LiteLLM 就更便宜;当基础设施为 $500/月时,这条线移到约 $9,100/月。低于这条线,托管费用比运行该代理所需的工程时间成本更低。
对比路由、故障转移和延迟
OpenRouter 默认就能很好地完成路由。其由 NotDiamond 驱动的 Auto Router会针对每个提示词挑选一个模型,而提供商级别的路由会降低任何在过去 30 秒内出现过故障的提供商的优先级。你可以通过一个 provider 对象来约束路由,按价格、吞吐量、延迟、数据政策、ZDR 和量化进行筛选。
LiteLLM 为你提供更多策略和完全自定义的逻辑。它内置六种路由模式:加权挑选、基于延迟、感知速率限制、最不繁忙、最低成本,以及一种你自行编写 Python 的自定义模式。回退列表让代理在某个模型失败时尝试下一个模型。如果你需要在代理层强制执行按团队或按模型的规则,LiteLLM 为你提供了相应的钩子。
延迟取决于你调优的程度。LiteLLM 报告称,在一个 4 实例、每个实例 4 CPU 和 8 GB 的部署上,针对模拟端点测试,中位开销约为 2ms(P95 为 8ms,P99 为 13ms);降到 2 个实例后,中位开销升至约 12ms(LiteLLM 自行报告的基准测试)。OpenRouter 则在 Cloudflare 的边缘增加了一跳网络,这一跳你无法调优或扩展。一个是你能掌控的旋钮,另一个是你无法改变的常量。
让合规需求匹配正确的网关
OpenRouter 带来第三方认证。它符合 SOC 2 Type 2 标准,完整报告见 trust.openrouter.ai,支持 GDPR,可按请求或按账户提供零数据保留,并能为企业账户通过位于欧盟的提供商进行路由。工作区还在此基础上增加了按团队的组织、预算和成本归属。
LiteLLM 带来数据主权。由于是你自行托管,请求在到达提供商之前绝不会离开你的基础设施,因此你可以实施自己的管控。LiteLLM Enterprise 增加了 RBAC、SSO/JWT 认证、审计日志以及按团队划分的预算。它本身并不持有独立的 SOC 2、ISO 27001 或 HIPAA 认证,因此你的部署需自行负责满足这些标准。
两者兼用,或只需几行代码即可切换
两者并不互斥。LiteLLM 可以将 OpenRouter 作为上游提供商,这样你既能获得 LiteLLM 本地的 RBAC 和日志记录,又能让 OpenRouter 处理多提供商故障转移和模型广度。
model_list:
- model_name: or-claude
litellm_params:
model: openrouter/anthropic/claude-opus-4.6
api_key: "your-openrouter-key"
api_base: "https://openrouter.ai/api/v1"
- model_name: or-gpt4o
litellm_params:
model: openrouter/openai/gpt-4o
api_key: "your-openrouter-key"
api_base: "https://openrouter.ai/api/v1"切换方向只需更改 base URL 和密钥,因为两者都采用 OpenAI 格式。
from openai import OpenAI
# OpenRouter
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="your-openrouter-key",
)
# LiteLLM
client = OpenAI(
base_url="http://your-litellm-host:4000",
api_key="your-litellm-master-key",
)这样就能把两个网关都放在同一个客户端之后。如果你不打算统一使用 OpenAI SDK,OpenRouter 有自己的 SDK(openrouter 用于 Python,@openrouter/sdk 用于 TypeScript),可原生调用 OpenRouter 一侧,无需设置 base URL。
from openrouter import OpenRouter
import os
with OpenRouter(api_key=os.environ["OPENROUTER_API_KEY"]) as client:
response = client.chat.send(
model="anthropic/claude-opus-4.6",
messages=[{"role": "user", "content": "Hello"}],
)如果你在权衡的不止这两家,我们的 LLM 网关对比 涵盖了 Portkey、Helicone、Cloudflare AI Gateway 等。
常见问题
LiteLLM 和 OpenRouter 类似吗?
它们都在众多提供商之上提供兼容 OpenAI 的 API,但构建方式不同。LiteLLM 是一个你自行托管(自托管)的开源代理;OpenRouter 是一个托管网关,运行在你并不运营的基础设施上。这种差异体现在数据驻留、运维开销和费用上。
我可以同时使用 LiteLLM 和 OpenRouter 吗?
可以。LiteLLM 支持将 OpenRouter 作为上游提供商,因此你可以在本地通过 LiteLLM 进行路由以实现 RBAC 和审计日志,同时由 OpenRouter 处理多提供商故障转移和模型广度。
OpenRouter 免费吗?
OpenRouter 提供 20+ 个免费模型供评估使用。付费使用按提供商定价以 0% 加价透传,另在购买额度时收取 5.5% 的平台费。自带密钥(Bring Your Own Key)可将费用降至 5%,且每月前 100 万次请求免收该费用。
OpenRouter 会存储我的提示词吗?
默认情况下不会。OpenRouter 不会保留提示词或响应。零数据保留可通过请求头按请求启用,也可在设置中为整个账户启用。
与 LiteLLM 相比,OpenRouter 的延迟开销是多少?
LiteLLM 报告称,在针对模拟端点测试的、经过调优的 4 实例部署上,中位开销约为 2ms;2 实例配置则升至约 12ms。OpenRouter 在 Cloudflare 边缘增加了一跳网络,而这一跳你无法自行调优或扩展。
来源:OpenRouter:Announcements(RSS) · openrouter.ai