统一 LLM 网关 · 一个 Key 调 400+ 模型 · 路由机制 · 代码示例 · 定价与选型
正在同时对接 GPT、Claude、Gemini 的开发者与小团队常被「多厂商 Key 管理、SDK 差异、failover 手写逻辑」拖慢上线。本文给出 OpenRouter 统一 LLM API 网关的完整接入路径:一个 Bearer Key 调 70+ 提供商、400+ 模型,端点 https://openrouter.ai/api/v1/chat/completions,OpenAI 兼容、模型命名 vendor/model。含双层路由对照表、OpenRouter vs 直连 API 决策矩阵、六步 Runbook(注册 → Key → 环境变量 → curl → SDK → fallback 链)、Python/Node 全栈代码示例、定价与 25+ 免费模型,并与OpenRouter 排行榜与选型长文互链。
OpenRouter 本质是统一 LLM API 网关(Unified LLM Gateway):你只需维护一把 API Key,即可通过 OpenAI 兼容协议访问 OpenAI、Anthropic、Google、DeepSeek 等厂商模型,无需为每家单独写鉴权与 SDK 适配层。但在决定迁移前,应先认清「直连多厂商」在生产里常见的五类隐性成本 🔧
多 Key 轮换税:GPT、Claude、Gemini 各需独立账号与账单,Key 泄露轮换、配额监控与告警分散在三套控制台,运维面指数膨胀。
SDK 方言税:虽多数支持 OpenAI 格式,但 base_url、Header(如 Anthropic 版本号)、流式字段与 tool call schema 仍有差异,Agent 框架切换模型时要改多处。
Failover 手写税:主模型 429 或宕机时需自写重试链、指数退避与备模型映射;缺统一路由层时,每次加新模型都要改业务代码。
定价对账税:各厂商计价单位、缓存折扣与 batch 规则不同,FinOps 难以在一张表里对比「同一 prompt 换模型贵多少」。
免费额度分散税:各平台免费 tier 规则不一;OpenRouter 聚合 25+ 免费模型并统一配额(未充值 50 次/日,充值 $10 后 1000 次/日,20 次/分钟),但需理解平台费与 BYOK 边界。
认清以上痛点后,再对照下一节的路由机制与对比表,判断 OpenRouter 是否匹配你的延迟、合规与调用量级假设。
OpenRouter 的路由分两层:Model Routing(选哪个模型)与 Provider Routing(同一模型由哪个后端提供商承载)。理解这两层是配置 failover 与成本控制的前提。
| 路由层 | 控制字段 | 行为说明 |
|---|---|---|
| Model Routing | 请求体 model 字段 | 指定具体模型 ID(如 openai/gpt-4o)或 magic 值 openrouter/auto,由平台按任务与价格自动选型 |
| Provider Routing | 请求体 provider 对象 | 在同一模型的多个后端间做价格加权路由;可设 sort: "price"、排除特定 provider、偏好低延迟或特定区域 |
| Auto Failover | 平台内置 + models 数组 | 主模型不可用时自动尝试备选;也可在单次请求中传入 fallback 模型列表 |
| 鉴权 | Authorization: Bearer YOUR_KEY | 统一 Bearer Token;兼容 OpenAI SDK,仅需改 base_url 为 https://openrouter.ai/api/v1 |
一个 Key、一个端点、一种 SDK 方言——Model 层选「谁回答」,Provider 层选「谁承载」。
| 维度 | OpenRouter 统一网关 | 直连 OpenAI / Anthropic / Google |
|---|---|---|
| Key 管理 | 一把 Key 调 400+ 模型 | 每厂商独立 Key 与账单 |
| 协议 | OpenAI 兼容 /v1/chat/completions | 各家原生端点,部分字段不兼容 |
| Failover | 内置 auto failover + 可配 fallback 链 | 需自研重试与备路逻辑 |
| Token 定价 | 按厂商标价,不对 token 加价 | 厂商原价;无中间层 |
| 平台费 | 充值 5.5%(最低 $0.80);crypto 5%;BYOK 前 100 万 req/月免费 | 无网关费;BYOK 不适用 |
| 延迟 | 额外 hop,通常 +10–80ms | 直连最低延迟 |
| 合规与特性 | 数据经第三方路由;难用厂商独占 beta 特性 | 可签企业 DPA;可用最新 vendor-only 功能 |
选型时可结合OpenRouter 真实调用排行榜与模型趋势,把「开发者在用什么」与「路由策略」放在同一张评审表里。
以下六步可在 30 分钟内完成首次调用;每步产出可写入团队 README,便于 onboarding 新成员。
注册账号:访问 openrouter.ai,用 GitHub 或邮箱创建账户。
创建 API Key:进入 Keys 页面生成 Key,立即复制;生产环境勿提交到 Git,用密钥管理服务托管。
设置环境变量:export OPENROUTER_API_KEY="sk-or-...",CI/CD 与本地 .env 保持一致命名。
首次 curl 验证:对 /v1/chat/completions 发 POST,确认 200 与 choices[0].message 结构。
配置 OpenAI SDK:Python/Node 中将 base_url 指向 OpenRouter,可选加 HTTP-Referer 与 X-Title 参与排行榜统计。
测试 fallback 链:用 models 数组或故意指定不可用模型,验证 auto failover 到备模型并记录日志。
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o-mini",
"messages": [{"role": "user", "content": "Hello from OpenRouter"}]
}'
import os, requests
resp = requests.post(
"https://openrouter.ai/api/v1/chat/completions",
headers={
"Authorization": f"Bearer {os.environ['OPENROUTER_API_KEY']}",
"Content-Type": "application/json",
},
json={
"model": "anthropic/claude-sonnet-4",
"messages": [{"role": "user", "content": "Explain Model Routing vs Provider Routing"}],
},
)
print(resp.json()["choices"][0]["message"]["content"])
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.environ["OPENROUTER_API_KEY"],
default_headers={
"HTTP-Referer": "https://your-app.example.com",
"X-Title": "My Agent App",
},
)
completion = client.chat.completions.create(
model="google/gemini-2.5-pro-preview",
messages=[{"role": "user", "content": "Summarize OpenRouter pricing"}],
)
print(completion.choices[0].message.content)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://openrouter.ai/api/v1",
apiKey: process.env.OPENROUTER_API_KEY,
defaultHeaders: {
"HTTP-Referer": "https://your-app.example.com",
"X-Title": "My Agent App",
},
});
const res = await client.chat.completions.create({
model: "openai/gpt-4o",
messages: [{ role: "user", content: "Hello" }],
});
console.log(res.choices[0].message.content);
const stream = await client.chat.completions.create({
model: "anthropic/claude-sonnet-4",
messages: [{ role: "user", content: "Stream this response" }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content || "");
}
{
"model": "openai/gpt-4o",
"models": [
"openai/gpt-4o",
"anthropic/claude-sonnet-4",
"google/gemini-2.5-flash-preview"
],
"messages": [{"role": "user", "content": "If primary fails, try fallbacks"}]
}
curl https://openrouter.ai/api/v1/models \
-H "Authorization: Bearer $OPENROUTER_API_KEY" | jq '.data[] | {id, pricing}'
提示:模型 ID 统一为 vendor/model 格式;用 openrouter/auto 可让平台在能力与价格间自动平衡,适合原型阶段。
OpenRouter 的核心承诺是不对 token 加价——你付的是各模型厂商公开标价,平台通过充值手续费与 BYOK 超额费盈利,而非在 inference 单价上抽成。
延迟敏感:网关 hop 通常带来 10–80ms 额外开销;超低延迟 trading、实时语音应直连。
超高调用量:百万级日调用时 5.5% 充值费 + 路由 hop 可能不如企业直签划算。
强合规:金融、医疗等需数据不经过第三方的场景,应直连并签 DPA。
厂商独占特性:需 Anthropic 最新 beta、OpenAI Assistants v2 等 vendor-only API 时,网关可能滞后或不可用。
注意:免费额度与费率以 OpenRouter 官网为准;上线前用 staging Key 跑 24h 压测验证账单与限流行为。
下列参数可直接引用进技术方案或 README;来源为 OpenRouter 官方文档与平台公开数据(2026 年 7 月)。
vendor/model。若你的 Agent 产品或技术博客需要同时触达中英文开发者,OpenRouter 类 API 文档的 SEO 需注意以下工程实践(而非简单机翻):
hreflang;避免同一 URL 混两种语言导致 Google 判 duplicate。OpenRouter 解决了「多模型 API 统一接入」,但本地开发机在休眠、系统更新与进程被杀时会让 7×24 Agent、cron 与 webhook 回调中断——API Key 再稳定,宿主不稳定仍会导致 failover 链空转。笔记本合盖后 OpenClaw、LangGraph 或自研 daemon 无法保证 SLA;纯 Linux VPS 又缺 Apple Silicon 与 macOS 工具链。对需要长期在线的 AI Agent 与自动化流水线,VpsMesh 的 Mac Mini 云端租赁通常是更优解:专用节点、弹性租期、可审计环境,让 OpenRouter 路由策略跑在真正 7×24 在线的宿主上,而不是赌本地机器今晚不合盖。
模型 token 按各厂商公开价结算,不对 token 加价。平台收入来自充值手续费(5.5%,最低 $0.80)、crypto 5% 与 BYOK 超额 5%。详见价格页了解 Agent 宿主成本如何与 API 账单一并规划。
端点 openrouter.ai 在多数网络下可直接访问;若不稳定可检查 DNS/代理或使用 BYOK。生产环境建议把调用方部署在稳定云端节点,参见帮助中心连通性说明。
聚合 70+ 提供商、400+ 模型,含 GPT、Claude、Gemini、DeepSeek、Llama 等。选型可参考OpenRouter 排行榜与趋势长文。
支持 Bearer 鉴权与 BYOK;数据会经 OpenRouter 路由至各 provider。强合规场景需评估第三方网关是否满足 DPA 要求,必要时直连厂商 API。
OpenRouter 是多厂商统一网关,协议兼容 OpenAI;OpenAI API 仅 OpenAI 自家模型。迁移时改 base_url 与 model 即可,详见上文 Runbook。
平台提供 25+ 免费模型:未充值 50 次/日,充值 $10 后 1000 次/日,限速 20 次/分钟。可用 /v1/models 筛选 pricing.prompt: "0" 条目。
推荐 pip install openai,设置 base_url="https://openrouter.ai/api/v1" 与环境变量 OPENROUTER_API_KEY;或用 requests 直接 POST,见第三节代码块。
不加价。Token 按各模型厂商标价扣款;平台仅收充值费与 BYOK 超额费。大规模调用前建议用仪表盘对比直连总成本(含 5.5% 手续费与 10–80ms 延迟 trade-off)。