核心 · Key Idea
一句话:OpenRouter 是LLM 的批发市场 —— 接 OpenAI / Anthropic / Google / Meta / DeepSeek / Mistral / 多家开源托管,同一个 OpenAI 兼容 endpoint。省钱 + 多备份 + 横向比价一站到位。
是什么#
from openai import OpenAI
c = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="sk-or-...",
)
# 直接指定模型
c.chat.completions.create(model="anthropic/claude-3.5-sonnet", messages=[...])
c.chat.completions.create(model="deepseek/deepseek-chat", messages=[...])
c.chat.completions.create(model="meta-llama/llama-3.1-70b-instruct", messages=[...])模型名格式:vendor/model-id。
打个比方#
打个比方 · Analogy
直接接每家 API 像一家家开会员卡:N 家就 N 张卡 + N 套额度。
OpenRouter 像一卡通 —— 一张卡刷遍所有商户,账单合并。
关键能力#
统一计费Unified Billing
所有模型走 OpenRouter 余额,**一份发票**。
自动路由 / 回退Routing / Fallback
models 数组多个候选,主模型挂自动切下一家。
比价透明Per-Model Pricing
/models 接口实时返回每个模型的输入 / 输出价格。
Provider Preference供应商选择
同一开源模型有多家托管(Together / Fireworks / Lepton),可指定偏好。
Stream / Tools / Vision功能透传
原家有的功能多数透传可用。
App 标识HTTP-Referer / X-Title
OpenRouter 用这两个头识别请求来源应用。
怎么工作#
OpenRouter 在中间做鉴权 / 计费 / 路由 / 配额。
实操要点#
-
多模型回退:
{ "models": [ "anthropic/claude-3.5-sonnet", "openai/gpt-4o", "deepseek/deepseek-chat" ] }顺序 fallback。前一家 5xx / 限流自动切。
-
追踪指标:OpenRouter Dashboard 直接看每个模型的成功率 / 延迟 / 花费。
-
数据条款:每家 provider 上传请求会不会被训练,OpenRouter 在模型卡上写得很清楚 —— 敏感数据选
--data-policy strict。 -
Streaming 行为:每家具体差异(reasoning content / tool deltas)OpenRouter 会做适配但不是 100%;接受
metadata字段查看实际后端。 -
限流:OpenRouter 自身有总量限流,再叠加 provider 限流。注意短时间高并发要分散。
-
国内访问:直连 OpenRouter 国内可能慢;通过自建代理 + Cloudflare Tunnel 是常用方案。
易混点#
OpenRouter(聚合)
SaaS,统一计费。
省事但所有调用经过他。
省事但所有调用经过他。
LiteLLM(本地代理)
本地跑的 OpenAI 兼容 proxy。
数据不经第三方,但要自己接每家 key。
数据不经第三方,但要自己接每家 key。