magpie 意图路由:按任务难度智能分配模型
magpie 在每轮开始用小模型判断意图,把简单问题路由给快而便宜的模型、难任务交给最强模型,兼顾成本与质量。
来源摘录
@RandyJinAI Smart 只决定同一组里账号的先后(额度先重置的先用),不看问题难度。想按难度分配,用意图路由:给路由组加规则(简单→便宜快的模型,难→最强的),再选一个判断模型,每轮开始时由它判断。教程:https://t.co/dVKqWRXwrJ
深度解析
是什么:yetone 回复 RandyJinAI,澄清 magpie 的 Smart 只决定同组账号的先后(额度先重置的先用),想按难度分配模型需用意图路由;外链是 magpie 官方文档,逐条拆解该机制的实现。
核心设计:每轮只做一次决定——用户发言时,magpie 把带编号的意图列表和最新一条消息发给指定的判断模型(如 Groq 上的 Llama 3.1 8B),它回答一个数字;第一条命中的规则把对应模型排到组内第一,其余做故障转移。一轮内的工具往返都沿用该决定,唯一例外是上下文涨到 95% 时只换更大上下文的模型。
关键洞察:不用向量嵌入、关键词表或训练,就是一个普通对话模型读消息选编号;判断失败(超时、报错、答非所问)时优雅降级为普通路由,不会让请求失败;每轮仅一次短调用,延迟通常几百毫秒,回答缓存 10 分钟;规则还可通过 use-effort 同时固定模型与推理强度。
边界与风险:判断只看最新一条消息,追问(如「另一个文件也照这样改」)可能误判;意图重叠会让小模型摇摆,需类别分明、少而宽;判断模型调用占用订阅额度,消息文本(最多 4000 字符)会发给其供应商,隐私敏感场景可用本地模型。整体是一份把「成本-质量」权衡工程化的清晰范例。