热闻岛
返回全网热点

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人

4天前16 阅读
智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图
开篇:不是所有问题都该走同一条路 上一章讲提示链。提示链像流水线:第一步做完,再交给第二步。它适合路径固定的任务。 但真实业务不是这样。用户的问题五花八门。有人查订单,有人问退款,有人问产品,有人投诉。你不能把所有问题都丢给同一个大模型。
智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

开篇:不是所有问题都该走同一条路

上一章讲提示链。提示链像流水线:第一步做完,再交给第二步。它适合路径固定的任务。

但真实业务不是这样。用户的问题五花八门。有人查订单,有人问退款,有人问产品,有人投诉。你不能把所有问题都丢给同一个大模型。

这时就需要路由。

路由的本质很简单:先判断问题属于哪一类,再交给最合适的工具、知识库、子流程或子 Agent。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

1. 什么是路由模式

路由模式,就是给 Agent 加一个“分诊台”。

它不急着回答。它先判断。

这个问题是订单问题,还是技术问题?是普通咨询,还是高风险投诉?要查数据库,还是查知识库?要自动处理,还是转人工?

判断清楚之后,再走对应路径。

《智能体设计模式》里把路由定义为一种动态决策能力:系统根据用户输入、环境状态或上一步结果,在多个动作之间选择合适的路径。

• 用户问“订单到哪里了” → 查订单系统。

• 用户问“这个产品怎么用” → 查产品知识库。

• 用户问“我要投诉” → 判断风险等级,必要时转人工。

• 用户问题不清楚 → 不硬答,先追问。

2. 路由和提示链有什么区别

提示链解决的是“按步骤做”。路由解决的是“该走哪条路”。

一个是流水线,一个是十字路口。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

提示链适合路径明确的任务,比如:提取信息、总结内容、生成报告、优化文案。

路由适合路径不固定的任务,比如:客服分流、工具选择、模型选择、知识库选择、多 Agent 调度。

复杂系统里,两者通常一起用:先路由到某条路径,再在这条路径内部用提示链分步骤执行。

3. 路由的核心流程

一个合格的路由器,不能只返回一句“我觉得是订单问题”。它应该输出结构化结果。

至少包含三类信息:route、confidence、entities。

route 表示要走哪条路径。confidence 表示模型有多确定。entities 表示下游系统需要的参数,比如订单号、商品名、时间范围。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

• 输入清洗:去掉噪声,补齐必要上下文。

• 意图识别:判断用户到底想做什么。

• 置信度判断:不确定就追问,不要硬走。

• 路径选择:把任务交给工具、RAG、子 Agent 或人工。

• 结果汇总:执行后统一组织答案。

• 日志评估:记录每一次路由是否正确。

4. 四种常见路由方式

工程里做路由,不是只有“让大模型判断”这一种方法。

越靠近生产环境,越要考虑稳定性、成本、延迟和可解释性。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

规则路由最简单。比如命中“退款”“退货”“售后”,就走退款流程。它快、便宜、可控,但不够灵活。

LLM 路由最灵活。它可以理解复杂自然语言,但成本更高,也需要约束输出格式。

向量路由适合知识域很多的场景。先把问题变成向量,再找最相似的能力、工具或知识库。

分类器路由适合高频稳定业务。等积累了足够样本,再训练一个轻量分类模型,成本会更低。

5. 典型案例:智能客服路由

智能客服是最容易理解的路由场景。

用户不会按照系统菜单提问。他只会说一句自然语言。系统必须先判断意图,再决定查哪个系统。

比如用户问:“我买的东西还没到,能退吗?”

这里面可能同时包含订单状态和退款诉求。路由器不能只看关键词。它要结合上下文判断:先查订单,再判断是否满足退款条件。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

• 订单类:查订单库,返回物流和状态。

• 退款类:查支付系统和售后规则。

• 商品类:查商品知识库或产品说明。

• 技术类:进入故障排查链。

• 投诉类:判断严重程度,必要时转人工。

• 不明确:先追问,不要乱答。

6. 框架里路由怎么跑

不用先背框架 API。先看运行时逻辑。

路由本质上就是:读状态,做判断,写结果,跳到下一个节点。

在 LangChain 里,RunnableBranch 的逻辑接近 if-elif-else:条件从上到下判断,命中哪个条件,就执行对应分支;如果都不命中,就走默认分支。

在 LangGraph 里,路由更像状态机。每个节点读写 State,conditional edge 根据当前 State 选择下一个节点。这样适合多轮、有状态、需要回退的 Agent。

在 OpenAI Agents SDK 里,Handoff 可以让一个 Agent 把任务转交给另一个专门 Agent。客服场景里,前台 triage agent 可以把任务转给退款 Agent、订单 Agent 或 FAQ Agent。

在 Google ADK 里,多智能体可以由一个协调者组织多个子 Agent,适合做“一个入口,多个专业处理器”的系统。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

真正落地时,路由输出最好是固定结构,比如:

• route:order_status / refund / faq / tech_support / clarify / human

• confidence:0 到 1 之间的置信度。

• entities:订单号、商品名、时间、用户 ID 等下游参数。

• reason:简短原因,方便日志排查。

7. 什么时候应该用路由

不要为了炫技而路由。问题很简单时,一条提示链就够了。

出现下面几种情况,再考虑路由。

• 用户问题类型很多,不同类型要走不同处理逻辑。

• 系统有多个工具,需要判断该调用哪个。

• 系统有多个知识库,需要判断查哪个库。

• 系统有多个模型,需要按成本和复杂度分流。

• 有高风险场景,需要自动转人工或审批。

• 多 Agent 协作时,需要一个协调者分配任务。

8. 路由最容易踩的坑

• 只靠关键词:用户说“退不了吗”,不一定只是退款,也可能是投诉。

• 不做置信度:模型不确定时还硬走,最容易答错方向。

• 输出不结构化:路由器输出一段话,下游很难解析。

• 没有默认路径:遇到未知问题直接崩。

• 没有评估集:你不知道路由到底准不准。

• 没有日志:出了问题无法定位是分类错、参数错,还是下游工具错。

• 过度路由:本来一个模型能处理的小问题,拆成十几个分支,系统复杂度反而失控。

智能体设计模式:路由 Routing,让 Agent 学会把问题交给对的人配图

9. 一个好路由器的标准

第一,输出稳定。必须返回固定枚举,不能今天叫 order,明天叫 order_status。

第二,能处理不确定。置信度低就追问,不要装懂。

第三,能解释。日志里要看得出为什么走这条路。

第四,能评估。每类样本要有命中率,不能靠感觉。

第五,能扩展。新增一个业务,不应该改一堆老逻辑。

第六,能兜底。没有命中路线,也要有安全默认路径。

总结

提示链让 Agent 会按步骤做事。

路由让 Agent 会做选择。

没有路由,复杂 Agent 很容易变成一个“大杂烩模型”:什么都管,什么都管不好。

有了路由,系统可以把不同问题交给不同能力处理。订单查订单库,知识问知识库,复杂问题交给专家 Agent,高风险问题转人工。

路由不是越复杂越好。真正好的路由,是简单、稳定、可解释、可评估。

下一章,我们继续讲并行化:当多个任务可以同时做时,如何让 Agent 不排队,直接并发执行。

要点速读

开篇:不是所有问题都该走同一条路 上一章讲提示链。提示链像流水线:第一步做完,再交给第二步。它适合路径固定的任务。 但真

  • 开篇:不是所有问题都该走同一条路 上一章讲提示链
  • 提示链像流水线:第一步做完,再交给第二步
  • 它适合路径固定的任务