动态路由使你能够通过可视化界面或基于 JSON 的配置创建请求路由流程。不必硬编码单一模型,使用动态路由你可以组合一个小型流程来评估条件、强制执行配额,并选择带回退的模型。你可以在不改动应用代码的情况下迭代——发布新的路由版本即可。借助动态路由,你可以轻松实现以下高级用例:
- 将不同细分(付费/非付费用户)定向到不同模型
- 使用预算/速率限制约束每个用户/项目/团队
- A/B 测试与渐进式发布
同时让开发人员和非技术人员都能使用。
- Route(路由):一个具名、带版本的流程(例如 dynamic/support),可在请求中代替模型名称使用。
- Nodes
- Start(开始):路由的入口点。
- Conditional(条件):基于引用请求正文、标头或元数据的表达式进行 If/Else 分支(例如 user_plan == "paid")。
- Percentage(百分比):按概率将请求路由到多个输出,适用于 A/B 测试和渐进式发布。
- Model(模型):使用请求参数调用提供商/模型
- Rate Limit(速率限制):强制执行请求数量配额(按你的密钥、按周期),超出时切换到回退。
- Budget Limit(预算限制):强制执行费用配额(按你的密钥、按周期),超出时切换到回退。
- End(结束):终止流程并返回最终模型响应。
- Metadata(元数据):附加到请求的任意键值上下文(例如 userId、orgId、plan)。你可以从应用传递这些数据,以便规则引用。
- Versions(版本):每次更改都会产生新的草稿。部署后即可生效,并支持即时回滚。
- 创建路由。
- 前往 (选择你的 gateway) > Dynamic Routes(动态路由) > Add Route(添加路由),并为其命名(例如
support)。 - 打开 Editor(编辑器)。
- 前往 (选择你的 gateway) > Dynamic Routes(动态路由) > Add Route(添加路由),并为其命名(例如
- 定义条件、限制和其他设置。
- 你可以在条件中使用自定义元数据。
- 配置模型节点。
- 示例:
- 节点 A:提供商 OpenAI,模型
o4-mini-high - 节点 B:提供商 OpenAI,模型
gpt-4.1
- 节点 A:提供商 OpenAI,模型
- 示例:
- 保存版本。
- 点击 Save(保存) 保存状态。你始终可以从 Versions(版本) 回滚到更早的版本。
- 部署该版本以使其生效。
- 从代码调用该路由。
- 使用 OpenAI 兼容 端点,并用路由名称代替模型,例如
dynamic/support。
- 使用 OpenAI 兼容 端点,并用路由名称代替模型,例如