主管智能体(Supervisor Agent)
主管智能体是一个持久的协调器,用于管理一个由专业子智能体组成的团队。它读取对话状态,决定下一个应该由哪个专家执行,将消息路由给它,并整合返回的结果以实现目标。与一次性分解器不同,主管智能体在多轮对话中始终保持在控制流中,按能力进行委派并重新规划,直到任务完成或交还给用户。
问题
如果给单个智能体分配过多的工具、指令和领域,它就会失去焦点:其提示词会膨胀,工具选择能力会下降,并且会混淆不相关的关注点。实际的工作流在不同的步骤(研究、编码、计费、合规)中需要不同的专业知识,但没有哪一个单一的扁平智能体能够可靠地在正确的时刻选择正确的能力,或者保持长期的多步骤交互的连贯性。
适用场景
当工作跨越多个不同的、可复用的专家能力,且这些能力必须在多轮对话或循环中进行协作时;当路由决策依赖于不断演变的状态而非固定计划时;以及当您需要一个清晰、集中的地方来执行策略、管理交接并观察哪个智能体执行了什么操作时,请使用主管智能体。它更适合异构的智能体团队,而非统一的并行工作节点。
解决方案
主管智能体拥有控制循环和共享的对话状态。在每一轮中,它会检查最新的消息和目标,然后决定是直接回答、委派给指定的专家,还是结束任务。委派是按能力进行的:每个子智能体都有声明的范围(例如代码智能体、数据智能体、知识智能体),主管智能 whistle 会将相关的上下文切片路由给所选的智能体。专家智能体运行其自身专注的工具循环,并返回结果或澄清请求,主管智能体在决定下一步之前会记录这些内容。
在每个专家轮次之后,控制权都会返回给主管智能体,因此它仍然是唯一的决策点,而不是让智能体之间自由地相互调用。主管智能体整合阶段性结果,解决专家之间的冲突,决定何时满足目标,并决定何时交还给用户。诸如步骤预算、允许的转换规则和显式终止条件等护栏可以防止循环。结构化的交接消息和共享的轨迹使每次委派都可审计,从而使团队能够看到谁被要求做了什么以及原因。
组件
优势
- 专注的专家,拥有更小、更干净的提示词
- 集中式路由和策略执行
- 可以独立演进的模块化智能体
- 清晰的审计轨迹,记录谁做了什么
风险
- 无限或乒乓式的交接循环
- 协调开销增加了延迟和成本
- 主管智能体成为路由瓶颈
- 交接过程中的上下文丢失会降低质量
不适用场景
- 单一能力即可处理整个任务
- 固定的并行扇出更合适(编排器-工作节点模式)
- 延迟或成本预算不允许额外的跳转
技术
示例
- 在计费、技术和账户专家之间进行客户支持路由
- 在编码、测试和文档智能体之间拆分软件任务
- 研究助手委派给搜索、分析和写作智能体
KPI
- 任务成功率 / 目标完成率
- 在无需人工干预的情况下达到预期结果的会话比例;这是主管智能体团队的核心质量指标。
- 每个已解决任务的交接次数
- 完成任务所需的平均委派次数;注意向上漂移的趋势,这通常信号着决策犹豫或路由抖动,而非更丰富的工作内容。
- 协调开销
- 与单个智能体相比,归因于主管智能体的额外 token、调用和延迟;表现良好意味着路由带来的收益超过了其成本。
- 路由准确率
- 首次尝试即发送给正确专家的委派比例,根据标注案例进行评估。
已观测到的失效模式
- 两个智能体在没有进展的情况下反复交接工作,直到预算限制切断循环
- 主管智能体错误地路由到不正确的专家,且再也无法恢复该线程
- 关键上下文在交接中丢失,导致专家解决了错误的问题
- 专家的阶段性结果发生冲突,主管智能体对它们进行了不连贯的合并
经验教训
- 强制执行硬性步骤预算和显式终止条件,以确保循环总能结束
- 使交接结构化,包含意图和范围,而不是原始消息的堆砌
- 保持专家的职责范围狭窄且不重叠,以减少路由歧义
- 对每一次委派进行插桩分析;你无法调试看不见的多智能体循环
常见问题
- 这与编排器-工作者(orchestrator-workers)模式有什么不同?
- 编排器-工作者模式将一个任务分解为并行的、通常是同构的工作者调用并进行合并。而主管智能体是在多轮循环中管理异构专家的持久协调器,它随着状态的演变重新决定路由,而不是执行固定的计划。
- 如何防止无限交接循环?
- 在每个专家轮次结束后将控制权路由回主管智能体,禁止自由的点对点调用,设置步骤或 token 预算,定义允许的转换,并添加显式终止条件,以防止循环无限进行。
- 专家应该在什么时候将控制权交还给主管智能体?
- 每当它完成其范围内的任务、需要其不具备的能力、遇到需要决策的歧义,或者检测到自己不是处理该请求的正确智能体时。然后由主管智能体进行整合并选择下一步。