智能路由方法
智能路由是 Router One 的核心承诺。这一页写清楚信号、权重、回退规则——包括让路由可预测的边界约束。
最后更新:
路由信号
- 延迟(EWMA)
- 每个 provider × 模型族独立计算最近 50 个请求的指数加权移动平均。窗口足够短,能跟上线上劣化;又足够长,不会被单次慢请求抽飞。
- 错误率
- 5xx 和 gateway 超时率在同窗口里计算。超过阈值时该 provider 临时降权。
- 成本
- 每个候选 provider 在请求模型族上的 token 级成本。作为权重而不是硬排序——高质量 provider 在按延迟权重的项目里依然能赢,即便单价更高。
- 用户自定义权重
- 每个项目可以自己设 (延迟、成本、质量) 权重。生产项目默认偏延迟,开发项目默认偏成本,可在每个项目里覆盖。
Fallback 行为
- 触发条件
- 5xx 响应、网络错误、或响应时间超过该模型的超时预算。
- 仅限同模型族
- 回退只在同模型族 provider 之间发生(GPT → GPT、Claude → Claude、Gemini → Gemini)。Router One 绝不悄悄把请求降级到不同模型。
- 回退延迟
- 端到端回退通常比失败请求多 < 200ms。fallback 链记录在每请求 trace 里,用户能看到全过程。
- 重试次数有界
- 默认每请求最多切 1 次 provider。更高上限可通过项目级配置开启。
Trace 里能看到什么
- 使用的 provider
- 每个请求实际命中的上游 provider 名、模型变体、路由决策。
- Fallback 链
- 如果发生 fallback,失败的 provider 和最终成功的 provider 都在 trace 里,附带失败的错误码和延迟。
- token 与花费
- 输入/输出/缓存输入 token 数,按请求时单价计算的实际花费。
项目级配置
- 权重
- 调延迟、成本、质量的相对权重。默认是合理的;显式覆盖会被尊重。
- 关闭 fallback
- 企业合同可关闭某些项目的 fallback——合规或模型评测场景需要单 provider 行为时用。
- 允许的 provider
- 用户可把项目限制在 provider 子集——数据驻留或厂商治理场景常用。
常见问题
- 我能为某个项目关闭 fallback 吗?
- 可以——企业合同可为需要单一 provider 行为的项目关掉 fallback。按量付费项目使用默认 fallback 配置。
- Router One 会悄悄换模型吗?
- 不会。Fallback 严格限制在同模型族内(GPT → GPT、Claude → Claude)。实际使用的模型变体在每请求 trace 里有记录。
- 路由决策对线上变化的反应有多快?
- 每 provider × 模型族最近 50 个请求的 EWMA——对劣化的反应是秒级的,又不会被单次异常慢请求抽飞。