核心用法
llm-eval-router 是一套生产级的影子评估与自动路由系统。它将每一个任务同时派发给本地 Ollama 模型(候选)与云端基线模型(Claude Sonnet 等,真值),利用分层验证与多裁判 ensemble 对本地输出打分。经过 200+ 次运行后,若某模型在特定任务上的滚动平均分达到 0.95,则自动晋升为生产路由目标;若质量下滑至 7 天滚动通过率 < 0.92,则自动降级。
评估体系
- L1+L2 免费层:JSON 合法性、必填字段、漂移检测(零成本,100% 覆盖)
- 裁判采样层(15%):Claude Sonnet + GPT-4o-mini 独立评分,分歧 ≥0.20 时 Gemini 2.5-flash 仲裁
- 六维评分:结构(25%)、语义(25%)、事实(20%)、完成度(15%)、工具使用(10%)、延迟(5%)
关键实现
Router类在 burn-in 阶段使用轮询,晋升后切换为置信度加权路由ConfidenceTracker持久化每对 (model, task_type) 的分数序列,支持自动晋升/降级判定- 控制基线模型(如 phi4)防止「矮子里拔将军」的虚假晋升
显著优点
1. 证据驱动的成本优化:不凭猜测切换模型,而是用统计显著性证明本地模型与云端等效
2. 渐进式部署:影子模式确保生产零风险,评估期间流量仍走云端
3. 分层成本控制:85% 的运行仅需免费验证器,15% 采样裁判,避免评估成本超过节省收益
4. 自动运维:晋升/降级完全自动化,无需人工介入模型选型
5. 可观测性集成:原生支持 Langfuse,输出完整评分看板与成本热力图
潜在缺点与局限性
- 硬件门槛:需 Mac/Linux,每模型 8GB+ 内存,>9GB 模型在 24GB 统一内存上会出现 39 秒+ 延迟
- 延迟敏感场景不适用:本地 CPU 推理通常 >2 秒,无法满足实时需求
- 安全高敏任务:医疗、法律等高风险场景仍强制使用云端安全过滤器
- 前期投入周期:首次晋升需 1-2 天(200 次运行),完整稳定层需 1-2 周
- 幻觉模型处理:需手动剥离 CoT 模型的推理标记块(如
<think>),否则漂移检测误报
适合人群
- 已有 Ollama 本地部署能力,希望将 Claude/GPT API 调用量削减 80%+ 的团队
- 具备定义明确任务类型(摘要、分类、抽取、格式化、RAG 等)的 LLM 应用架构师
- 拥有 Python 3.10+ 环境、能接受 1-2 周 burn-in 周期的工程团队
常规风险
- 数据污染风险:若本地模型在 burn-in 阶段意外接触到生产流量中的 PII,需确保 Ollama 实例隔离
- 评估偏差:15% 采样率下,边缘 case 可能未被裁判覆盖,导致晋升后偶发质量滑坡
- 基线漂移:云端真值模型自身更新可能导致历史分数不可比,需定期重校准
- 成本失控:若误将 100% 采样率部署,裁判 API 费用将超过节省的云端推理成本