用置信度阈值做模型分级路由:降本的正确姿势不是「换便宜模型」

降本最容易被误用的办法,是把主力模型整体换成便宜模型。更稳的做法是:让便宜模型自己决定什么时候不该由它来答。
OpenRouter 发布指南:让廉价模型通过结构化输出返回 0–1 的置信度字段,低置信请求再升级到强模型。文中强调置信分是模型自报、不是校准概率,应基于自己流量的分数段错误率来设定阈值,并在上线后监控分数分布、升级率与未升级答案的错误率持续调整。
三步落地
- 让轻量模型输出结构化置信度:用 JSON schema 约束返回值,例如
{"answer": "...", "confidence": 0.0}。没有结构化输出,这个字段就无法可靠解析。 - 用自己流量定阈值,不用别人的经验值:把历史请求按置信度分桶,统计每桶的实际错误率,找到「错误率开始明显上升」的那个分位点。这是校准,不是拍脑袋。
- 上线后盯住三个指标:置信度分布是否漂移、升级率是否失控、未升级答案的错误率是否上升。
四个常见坑
- 把自报置信度当概率用。模型说 0.9,不代表 90% 正确。
- 阈值定死不动。流量一变(新用户、新场景),分布就漂移了。
- 只监控成本,不监控未升级部分的质量。省了钱但答错了,是最贵的结果。
- 升级链路没有超时与降级策略。强模型抖动时,请求会一起变慢。
对读者的实际影响
- 小团队:这是在不牺牲体验的前提下,把推理成本压低 30%–60% 的少数可靠手段之一。
- 做 Agent 的:把「是否升级」当成可观测的决策点,日志里必须留下分数与决策,否则没法调优。
- 别急着上:先把评测集建起来。没有评测集,就无法验证阈值定得对不对,这个方案会退化成盲赌。
结论:分级路由的本质是用可测量的不确定性来分配算力——先能量化,再谈省钱。