标准回答
需求与目标
为多业务方提供统一入口调用多家 LLM,集中做路由、限流、计费、缓存、可观测与故障切换,降低接入与治理成本。核心指标:路由命中合理性、成本节省、可用性(故障切换成功率)、P99 延迟。
整体架构
统一 API 网关层对外暴露 OpenAI 兼容接口;内部经鉴权与限流→路由层选模型→适配器把请求翻译成各供应商协议→调用并聚合返回。横切面挂缓存、计费、可观测与护栏。
关键模块
路由:按任务类型、提示复杂度、成本/能力/延迟权衡选模型,简单请求走小模型、难任务走强模型;限流计费:按租户/API Key 做 QPS 与配额限制,按输入输出 Token 计量并归集成本;缓存:相同/语义相近请求命中缓存直接返回,省调用费;可观测:记录每次调用的模型、Token、延迟、成本与错误。
评估
灰度对比不同路由策略的成本与质量;监控各模型成功率、延迟分位与单位请求成本。
上线与监控
主模型超时或报错时按优先级故障切换(failover)到备用模型/备用供应商;熔断异常模型;全链路追踪(trace)便于排障与成本归因,配额告警防止超支。
常见误区
⚠️ 常见踩坑
把所有请求都路由到最强(最贵)模型,浪费成本——应按任务难度分级路由;以及缺少故障切换与限流,单一供应商抖动就拖垮全部业务,或被某个租户打满额度影响他人。
追问
追问 1:路由策略怎么设计?凭什么决定用哪个模型?
多维权衡:先按任务类型/难度分级(分类、改写等简单任务走小模型,复杂推理走强模型),可用轻量分类器或规则判断难度;再叠加成本、延迟 SLO、各模型实时健康度与配额。可做级联路由——先用小模型尝试,置信度不足再升级到大模型,兼顾成本与质量。策略需用线上数据持续评估调优。
追问 2:Token 计费和配额如何实现?
网关在请求返回后解析各供应商的 usage(输入/输出 Token),按模型单价换算成本,归集到对应租户/API Key;配额用计数器(如 Redis)按时间窗维护已用量,超限拒绝或降级。需注意流式响应要在结束时统计 Token,并对失败请求做正确计费处理,配额接近上限时提前告警。
追问 3:某个上游模型故障时如何保证可用性?
配置故障切换:为每类请求设主备模型/供应商优先级,主模型超时、限流或报错时自动重试到备用模型;对持续异常的上游做熔断,暂时摘除并定期探活恢复。配合超时控制、重试退避与幂等,避免重复扣费;可观测告警快速发现上游劣化,必要时人工切流。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。