模型网关与模型路由

1. 提出问题

一个内容运营平台上线了多个 AI 功能:标题改写、商品卖点生成、客服回复草稿、合同条款摘要、图片理解和数据分析问答。早期每个功能直接调用一个模型,功能负责自己的 API Key、参数、重试和日志。

半年后问题集中出现:标题改写调用量大,成本失控;合同摘要需要更强模型,延迟却影响审核流程;客服回复偶发超时,没有统一降级;数据分析功能因为模型升级改变了 JSON 格式;财务想知道每个业务线的模型成本,研发只能从散落日志里估算。

这时团队提出“做模型网关”。但网关不是银弹。它需要解决的是生产接入问题,而不是替业务团队决定什么答案是好答案。

分析项具体情况
使用者多个业务线、平台团队、财务、风控和运维
输入文本、图片、结构化业务数据、任务类型、质量等级、租户信息
输出模型响应、结构化结果、错误码、成本延迟指标、审计日志
规模每天数十万到数百万次调用,峰值明显
常见失败供应商超时、模型降级后质量下降、JSON 不稳定、成本无法归因
失败代价业务链路阻塞、预算超支、质量回退不可见、事故无法复盘

网关和路由的核心问题是:当模型不再是单一依赖,而是多供应商、多模型、多任务、多质量等级的生产资源时,如何让接入、选择、降级、观测和成本治理变成统一能力。

2. 分析问题

模型网关处理的不是单个 AI 任务,而是模型调用链路的工程治理。

问题类型适合模型或业务侧判断的部分应由网关处理的部分必须人工或平台确认的部分
分类业务侧标记任务类型和风险等级根据标签选择候选模型高风险任务的模型白名单
生成模型完成摘要、改写、回复和分析统一请求格式、参数、超时和返回质量回退是否可接受
判断业务侧定义质量标准路由规则、A/B、熔断和降级关键业务指标和上线门槛
观测业务侧标注样本好坏成本、延迟、错误、模型版本日志异常阈值和预算策略
执行网关发起模型请求重试、限流、脱敏、供应商适配API Key、数据合规和审计策略

网关适合统一处理横切问题:认证、供应商适配、超时、重试、限流、日志、脱敏、成本归因、模型版本、路由配置和降级策略。它不应该吞掉业务语义,也不应该让所有功能只传一个自由文本 prompt,然后期待网关猜出任务风险和质量要求。

收益来自四个方面:

  • 可靠性:供应商异常时可以熔断、重试、降级或切换。
  • 成本:按功能、租户、模型和调用类型归因,支持预算和配额。
  • 质量:支持灰度、A/B、回放和模型升级评估。
  • 治理:统一 API Key、日志脱敏、审计和合规策略。

风险也很明显:

  • 路由规则过度复杂,业务团队难以理解为什么选了某个模型。
  • 网关只做转发,缺少任务标签和评估,无法真的优化质量。
  • 降级只看可用性,不看业务后果,把高风险任务降到不合适模型。
  • 统一网关成为单点瓶颈,影响所有 AI 功能。
  • 日志记录过细,带来隐私和合规风险。

所以,网关的设计前提是业务侧能给出任务类型、质量要求、风险等级和可接受降级范围。

3. 列举方案

模型接入可以按复杂度逐级升级。

第一层是业务直连单模型。适合原型验证、调用量低、只有一个功能的阶段。它最快,但后续换模型、做观测和成本归因都困难。

第二层是轻量模型客户端。把 API Key、请求格式、错误处理和重试封装成 SDK 或 service。适合单团队、多功能但模型数量少的阶段。

第三层是统一模型访问层。业务侧传入任务类型、模型偏好、预算和超时,访问层统一处理供应商差异、日志和错误码。很多中小团队到这一层已经足够。

第四层是模型网关。网关作为独立服务接收模型请求,统一认证、限流、路由、观测、脱敏和成本归因。适合多团队、多模型、多供应商和高调用量场景。

第五层是规则路由。根据任务类型、租户等级、风险等级、输入长度、模态、语言和预算选择模型。例如“合同摘要必须使用高质量模型”,“标题改写优先低成本模型”,“图片理解走多模态模型”。

第六层是质量 / 成本感知路由。结合历史评估、线上反馈、延迟、价格和供应商健康状态动态选择模型。这里要谨慎,不能只优化成本而忽略业务质量。

第七层是灰度、回放和评估。模型升级前,用真实样本回放比较质量、结构化稳定性、延迟和成本;上线后灰度监控关键指标。

第八层是 Ops 治理。包括预算、配额、告警、审计、密钥轮换、日志脱敏、区域合规、模型版本生命周期和事故复盘。

简单客户端足够的条件是:模型少、功能少、成本可接受、没有跨团队治理需求。prompt 不再足够、直连不再足够的信号是:多个功能重复写接入逻辑、供应商异常影响范围大、成本无法归因、模型升级不可控、需要统一审计或合规。

4. 决策判断

场景条件推荐方案不推荐方案判断理由额外成本
原型或低频内部工具业务直连 + 基础日志独立网关接入成本应优先低,先验证价值少量错误处理
单团队多个功能轻量模型客户端每个功能各写一套调用复用重试、错误和参数管理SDK 维护
多团队共享模型能力统一模型访问层业务散落 API Key需要认证、日志和成本归因接入规范
多供应商和高并发模型网关业务直连供应商需要限流、熔断、降级和观测服务运维
任务质量差异明显规则路由单模型打所有任务不同任务对质量、成本、延迟要求不同任务标签和路由配置
成本压力大但质量可评估成本感知路由 + 回放评估直接切最便宜模型降本必须证明质量不回退评估集、灰度
高风险场景模型白名单 + 人工评估自动降级到未知模型质量和合规优先于可用性审批、审计

设计模型网关时,最重要的不是“支持多少供应商”,而是请求契约是否表达了业务意图。一个好的网关请求不应该只有 prompt,还应该包含任务类型、输入规模、风险等级、期望输出格式、超时预算、租户或业务线、是否允许降级等信息。

路由策略通常从确定性规则开始,而不是一开始就做复杂动态路由。可解释的规则更容易上线和复盘:先按任务类型、风险等级和模态选择模型,再根据供应商健康状态和预算做降级。

降级必须有边界。标题改写超时可以降到便宜模型或返回模板;合同摘要、医疗建议、财务解释这类高风险任务不应该自动降到未评估模型,宁可转人工或提示稍后重试。

常见反模式:

  • 业务只传 prompt,网关被迫猜任务类型和风险等级。
  • 路由只按价格排序,忽略结构化输出稳定性、幻觉率和人工返工成本。
  • 把网关当质量保证层,却没有评估集、样本回放和业务反馈。
  • 所有错误都重试,导致延迟放大和成本翻倍。
  • 日志完整保存用户输入和模型输出,没有脱敏、保留周期和访问控制。
  • 模型升级直接全量切换,没有灰度、回放和回滚。

5. 结论收束

模型网关适合解决生产接入和治理问题:统一模型调用、路由、降级、成本、日志和合规。它不能替代业务侧的场景定义,也不能在没有评估的情况下证明某个模型更好。

最低可上线版本可以是一个统一模型访问层:封装供应商、错误码、超时、重试、日志和成本标签。当调用量、团队数量、供应商数量或合规要求上升,再演进成独立网关和路由系统。

上线前检查项:

  • 场景边界:哪些业务功能接入网关,是否有任务类型和风险等级。
  • 请求契约:是否包含任务类型、输出格式、超时、预算、租户和降级策略。
  • 模型配置:模型名、版本、参数、上下文限制、价格和能力是否可配置。
  • 路由规则:是否按任务、风险、模态、输入长度和成本做可解释选择。
  • 降级策略:哪些任务允许降级,哪些必须失败、转人工或排队。
  • 重试限流:是否有超时、重试上限、退避、熔断和配额。
  • 成本归因:是否按业务线、租户、功能、模型和请求类型统计。
  • 质量评估:是否有样本集、回放、A/B、灰度和业务反馈。
  • 日志合规:是否做脱敏、访问控制、保留周期和审计。
  • 运维恢复:供应商异常、模型升级失败、网关故障时是否可回滚。