关键特征
- 路由器分解查询
- 零个或多个专业智能体被并行调用
- 结果被合成为连贯的响应
何时使用
当你有不同的垂直领域(需要各自专属智能体的独立知识域)、需要并行查询多个来源、并且想要将结果合成为组合响应时,使用路由器模式。基本实现
路由器对查询进行分类,并将其定向到适当的智能体。使用Command 进行单智能体路由,或使用 Send 并行扇出到多个智能体。
- 单个智能体
- 多个智能体(并行)
使用
Command 路由到单个专业智能体:教程:使用路由构建多源知识库
构建一个路由器,并行查询 GitHub、Notion 和 Slack,然后将结果合成为连贯的答案。涵盖状态定义、专业智能体、使用
Send 进行并行执行和结果合成。无状态 vs 有状态
两种方法:无状态
每个请求被独立路由——调用之间没有记忆。如需多轮对话,请参阅有状态路由器。有状态
对于多轮对话,你需要跨调用维护上下文。工具包装
最简单的方法:将无状态路由器包装为会话智能体可以调用的工具。会话智能体处理记忆和上下文;路由器保持无状态。这避免了跨多个并行智能体管理对话历史的复杂性。完整持久化
如果你需要路由器本身维护状态,使用持久化来存储消息历史。当路由到智能体时,从状态中获取先前的消息,并选择性地将它们包含在智能体的上下文中——这是上下文工程的一个杠杆。连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。

