按延迟、成本、质量智能路由每一次模型调用
写死一个模型,就要承受它的所有坏日子:延迟飙升、限流、区域故障。智能路由把模型阵列当作候选集,用实时信号而非静态配置为每个请求做选择。Router One 在一个 OpenAI 兼容端点背后路由 25+ 个模型,并把每次决策记入请求 Trace——路由永远不是黑盒。
每次决策背后的信号
EWMA 延迟
对每个供应商最近 50 个请求做指数加权移动平均,按模型族独立计算。近期请求权重更高,路由能在数秒内对真实退化做出反应,又不会被单个慢请求带偏。
错误率
同一滚动窗口内的 5xx 与网关超时率。超过配置阈值的供应商会被临时降权,恢复后重新参与。
公示成本
候选线路在该模型族下的 token 级成本。成本是权重而非硬排序——延迟优先的项目里,更贵的线路依然可能胜出。
你的权重
每个项目可设置自己的延迟/成本/质量平衡。生产偏延迟、开发偏成本,也可按请求覆盖。
指定模型或 model="auto"
指定具体模型,网关直接调用,完全确定;发送 model="auto",网关按你的权重为候选打分并选择最优。
同模型族故障转移
选中线路返回 5xx、超时或网络错误时,请求在同模型族内故障转移——通常只增加 200ms 以内,Trace 同时记录两次尝试。
可预期是设计出来的
路由要可信才有价值。三条约束保证可预期:故障转移绝不跨模型族(GPT 请求由 GPT 族线路响应,Claude 请求由 Claude 族线路响应);每条 Trace 都显示由哪条线路处理、为什么,包括失败的尝试;企业合同可为合规或评测场景按项目完全关闭故障转移。
用 model="auto" 发起一次路由请求
在请求体里带上候选与权重。任何时候需要确定的模型,直接指定模型 id 即可——路由按请求级别可选。
# POST https://api.router.one/v1/chat/completions { "model": "auto", "messages": [{"role": "user", "content": "Hello"}], "router": { "candidates": ["claude-3-5-sonnet", "gpt-4o", "deepseek-chat"], "weights": {"latency": 0.4, "cost": 0.4, "quality": 0.2} } }
常见问题
智能路由如何决定用哪条线路?
每个候选按最近 50 个请求的 EWMA 延迟、公示 token 成本和滚动 5xx/超时率打分,再用项目的延迟/成本/质量权重合成。得分最高的健康线路获得请求,决策写入 Trace。
可以一直只用某个模型吗?
可以。指定模型 id,网关直接调用,不做候选选择。只有发送 model="auto" 或附带路由配置时,智能路由才会介入。
供应商退化时会发生什么?
错误率越过阈值的线路会被临时降权;进行中的失败会触发同模型族故障转移,通常只增加 200ms 以内。Trace 会显示失败尝试、错误码和最终完成请求的线路。
路由会切到别的模型族吗?
不会。故障转移严格限制在同模型族内——GPT 到 GPT,Claude 到 Claude。实际响应的具体型号记录在 Trace 中。
可以关闭故障转移吗?
企业合同可以为需要单供应商行为的项目关闭故障转移;按量付费项目使用默认故障转移配置。
在哪里看路由决策?
每个请求都会出现在面板里,带完整 Trace:模型、线路、Token、成本、延迟、状态,以及路由或故障转移决策。信号背后的方法论见路由方法论页。
相关页面
别再为单一供应商的坏日子买单。
免费开始