Agent 编排中模型分流策略:规则路由还是微调路由器的工程取舍
·

在 LLM 应用落地时,企业常面临「端侧小模型 + 云端大模型」的双轨部署选择。一个关键矛盾浮出水面:分流策略应该用规则引擎还是训练专用路由器模型? 本文基于 DeepSeek 技术栈的实践,拆解四类典型场景的工程取舍。
分流特征:规则与模型的对抗实验
- 意图分类硬边界
- 规则优势:客服场景中「查询订单状态」「退货进度」等明确意图,正则表达式 + 关键词匹配可实现 95%+ 准确率(实测 20000 条工单数据)
- 模型劣势:小模型对「我想知道上周买的那件衣服到哪了」等泛化表述存在 10-15% 误判率
- 混合方案:DeepSeek 提供的 few-shot 提示模板可提升小模型泛化能力,实测在电商场景将误判率降低至 7%
- 置信度阈值陷阱
- DeepSeek-V4 的 logit 输出在端侧量化后,需针对业务重标定阈值(如医疗问答要求 ≥0.9 才本地响应)
- 规则系统无法动态适应数据漂移:某电商大促期间「折扣」相关query的语义分布变化导致规则失效
- 模型优势:基于 DeepSeek 微调的路由器模型可自动适应分布变化,A/B测试显示召回率提升 22%
会话一致性的隐藏成本
- 状态同步问题
当用户从端侧模型跳转云端时,需通过以下字段保持上下文连贯(代码示例为 DeepSeek API 封装):def transfer_context(local_session: dict): return { "user_id": local_session["uuid"], "pending_tasks": json.dumps(local_session["active_intents"]), # 结构化当前任务栈 "last_confidence": local_session.get("last_score", 0.8), # 传递置信度元数据 "timezone": local_session["tz"] # 关键时区信息影响时间相关query解析 } - 冷启动延迟
实测显示:云模型接收不完整的会话状态后,平均需要 2-3 轮对话修复意图(客户服务场景 P99 延迟增加 1.8 秒) - 时区陷阱案例
某跨国企业未同步时区信息,导致「我的预约明天几点」在端侧和云端产生 12 小时偏差
成本观测的实践反常识
某金融客户的实际监控看板揭示:
- 规则路由初期节省 60% 大模型调用,但三个月后因规则维护成本(人工标注 + 回归测试)反超模型方案
- 混合方案(规则过滤 + 模型兜底)的 token 消耗公式:
总成本 = 本地模型调用费 + (云端请求量 × 平均 800 tokens/次) × 单价
+ 规则引擎运维人时 × 时薪 - 断点回归分析显示:当日均 query 量 > 5万时,模型路由的边际成本优势开始显现
选型决策树(关键判据)
- 选规则路由当且仅当
- 意图边界清晰可枚举(如 ATM 机语音指令)
- 业务语义变化频率 < 1次/季度
- 运维团队具备实时规则热更新能力
- 必须用模型路由如果
- 存在长尾 query(如开放域客服)
- 需要动态适应新术语(如医疗领域药品名更新)
- 具备持续训练数据管道(每日新增标注 ≥1000 条)
边界案例:何时该放弃双轨架构
- 当端侧设备算力受限(如智能手表),直接全量走云端反而降低整体复杂度
- 强合规场景(如法律咨询),所有输出必须经过大模型安全层审核
- 小语种场景:当端侧小模型缺乏该语种能力时,双轨架构会引入额外延迟
实施检查清单(DeepSeek 技术栈)
- 会话状态必须包含字段:
- 用户唯一标识
- 活跃意图栈(JSON 序列化)
- 时区信息
- 最后置信度得分
- 监控必看指标:
- 双轨请求占比(健康值 3:7 ~ 7:3)
- 状态同步失败率(阈值 <1%)
- 云端冷启动延迟(P95 <2s)
- 安全红线:
- 敏感query必须强制走云端审核
- 本地模型输出需添加「本回答未经完整审核」水印
(注:本文实验数据基于 DeepSeek-V4 的 8K 上下文窗口配置,规则引擎采用 OpenFGA 实现权限控制,时区处理使用 pytz 库标准化)
更多推荐



所有评论(0)