编排模式:监督者、群体与分层


文档摘要

编排模式:监督者、群体与分层 本节摘要:团队常在真正需要「多智能体」之前就够向它。2026 年的框架里反复出现四种编排模式:监督者-工人(supervisor-worker)——中央路由 LLM 分派给专家 Agent,专家彼此不交谈,所有路由经监督者;群体/对等(swarm/peer-to-peer)——Agent 经共享工具面直接交接,无中央路由,延迟更低但更难推理;分层(hierarchical)——监督者管子监督者再管工人(LangGraph 嵌套子图、CrewAI 嵌套 crew),为大规模 Agent 种群而设,代价是运维复杂度;辩论(debate)——并行提案者 + 迭代交叉批判(第 25 节)。

编排模式:监督者、群体与分层

本节摘要:团队常在真正需要「多智能体」之前就够向它。2026 年的框架里反复出现四种编排模式:监督者-工人(supervisor-worker)——中央路由 LLM 分派给专家 Agent,专家彼此不交谈,所有路由经监督者;群体/对等(swarm/peer-to-peer)——Agent 经共享工具面直接交接,无中央路由,延迟更低但更难推理;分层(hierarchical)——监督者管子监督者再管工人(LangGraph 嵌套子图、CrewAI 嵌套 crew),为大规模 Agent 种群而设,代价是运维复杂度;辩论(debate)——并行提案者 + 迭代交叉批判(第 25 节)。2026 年 LangChain 的建议值得关注:用直接工具调用做监督,而非 create_supervisor 库——这给你更细的上下文工程控制(你精确决定每个专家看到什么)。Anthropic 的指引更是本节的灵魂:「LLM 领域的成功不在于构建最复杂的系统,而在于构建适合你需要的系统。」决策顺序是:① 单 Agent + 工作流模式(第 12 节)从这里开始;② 监督者-工人(2-4 个专家时);③ 群体(延迟比推理清晰更重要时);④ 分层(仅当监督者上下文预算装不下所有专家描述时);⑤ 辩论(准确率比成本更重要时)。本节用标准库在同一个脚本化 LLM 上实现全部四种模式,跑同一个三意图任务,对比轨迹形状与操作数。读完本节,你应能避免「拓扑优先思维、群体里乒乓交接、为凑企业而造假层级」三种陷阱。

对应原课程:Phase 14 · Lesson 28 · orchestration-patterns(原英文 phases/14-agent-engineering/28-orchestration-patterns/docs/en.md)。前置:第 12 节(工作流模式)、第 25 节(多智能体辩论)。

学习目标

阅读完本节,你应当能够:

  1. 说出四种反复出现的编排模式,以及各自适合的场景。
  2. 描述 2026 年 LangChain 建议:基于工具调用的监督 vs 监督者库。
  3. 解释 Anthropic 的「构建对的系统」规则,以及它如何门控拓扑选择。
  4. 复述从单 Agent 到分层的五步决策顺序。
  5. 用标准库在同一个脚本化 LLM 上实现全部四种模式。
  6. 识别三种陷阱:拓扑优先思维、群体乒乓交接、造假层级。

一、问题与直觉

「我们需要多智能体」——这是 2026 年最常见的过早优化。团队在还没想清楚「多智能体到底解决什么问题」之前,就先选了拓扑。结果:加了一层路由的复杂度,却没换来准确率或延迟的收益,反而多了调试噩梦。

正确做法是先命名模式、再按场景选、或干脆跳过拓扑。四种模式各有清晰的适用边界,搞清楚它们,你就能回答「我的问题真需要多智能体吗」。

监督者-工人(Supervisor-worker)

  • 一个中央路由 LLM 分派给专家 Agent。
  • 决策:回到自己、交给专家、终止。
  • 专家彼此不交谈;所有路由经监督者。

框架:LangGraph create_supervisor、Anthropic orchestrator-workers、CrewAI Hierarchical Process。

2026 LangChain 建议:用直接工具调用做监督,而非 create_supervisor 库。给你更细的上下文工程控制——你精确决定每个专家看到什么(呼应第 07 节:上下文是 RAM,谁看什么要显式)。

群体/对等(Swarm / peer-to-peer)

  • Agent 经共享工具面直接交接
  • 无中央路由
  • 比监督者延迟更低(更少跳)。
  • 更难推理(无单一控制点)。

框架:LangGraph swarm 拓扑、OpenAI Agents SDK handoffs(当所有 Agent 都能交接给所有其他 Agent 时)。

分层(Hierarchical)

  • 监督者管子监督者再管工人。
  • LangGraph 里实现为嵌套子图;CrewAI 里为嵌套 crew
  • 为大规模 Agent 种群扩展,代价是运维复杂度。

何时需要:当单个监督者的上下文预算装不下所有专家的描述时——这是第 07 节「上下文溢出」在编排层的体现。

辩论(Debate)

  • 并行提案者 + 迭代交叉批判(第 25 节)。
  • 严格说不算编排——更像验证——但在框架里作为拓扑选项出现。

自主团队 vs 确定性流

CrewAI 把两种部署模式形式化(第 15 节):

  • Flow 用于确定性事件驱动自动化(生产推荐起点)。
  • Crew 用于自主角色制协作。

这与上面四种模式正交,但映射到拓扑:Flow 通常是监督者或分层;Crew 通常是带 LLM 路由的监督者。

Anthropic 的指引

「LLM 领域的成功不在于构建最复杂的系统,而在于构建适合你需要的系统。」

决策顺序:

  1. 单 Agent + 工作流模式(第 12 节)——从这里开始。
  2. 监督者-工人——当你有 2-4 个专家。
  3. 群体——当延迟比推理清晰更重要。
  4. 分层——仅当监督者上下文预算失败。
  5. 辩论——当准确率比成本更重要。

⚠️ 三种陷阱:① 拓扑优先思维——「我们需要多智能体」在没识别出多智能体解决什么问题之前。② 群体里乒乓交接——A→B→A→B;用跳数计数器(第 16 节)。③ 造假层级——因为「企业感」而堆三层,实际只有两个团队;塌缩它。

二、从零实现

原课程 code/main.py 在同一个脚本化 LLM 上实现全部四种模式:

  • Supervisor——中央路由。
  • Swarm——对等直接交接。
  • Hierarchical——监督者的监督者。
  • Debate——并行提案者 + 批判。

每种处理同一个三意图任务(退款 / bug / 销售)。轨迹形状各异。

Step 1:监督者-工人(中央路由)

class Supervisor: def __init__(self, specialists): self.specialists = specialists def run(self, task): for _ in range(MAX_ITERS): decision = router_llm(task, self.specialist_descripts()) if decision == "done": return task.result task = self.specialists[decision].run(task) # 专家干活 return task.result

Step 2:群体(对等直接交接)

class Swarm: def __init__(self, agents): self.agents = agents def run(self, task, hops=0): if hops > MAX_HOPS: raise Bouncing() # 防乒乓 agent = self.pick_by_task(task) outcome = agent.run(task) if outcome.handoff: # 直接交给同伴 return self.run(outcome.next_task, hops+1) return outcome.result

Step 3:分层(嵌套监督者)

class Hierarchical: def run(self, task): top = Supervisor(self.divisions) # 顶层:选哪个分部 div = top.route(task) mid = Supervisor(div.teams) # 中层:选哪个团队 team = mid.route(task) return Worker(team.specialist).run(task) # 底层:干活

Step 4:辩论(并行提案 + 批判)

class Debate: def run(self, question): proposals = [a.propose(question) for a in self.proposers] # 并行 for r in range(ROUNDS): proposals = [critique_and_update(p, [o for o in proposals if o is not p]) for p in proposals] return aggregate(proposals)

运行 python3 code/main.py 会输出每模式的轨迹 + 操作数:监督者最干净;群体最短;分层最深;辩论最贵

💡 设计要点:Anthropic 的「构建对的系统」是本节最重要的心法——复杂度是税,不是美德。每加一层拓扑,就加一层路由 LLM 的成本、加一层调试难度、加一层失败模式(第 26 节)。先用单 Agent + 工作流模式(第 12 节)榨干能力,只有在它真的不够时才上拓扑。这与第 12 节「先工作流后 Agent」、第 15 节「先 Flow 后 Crew」一脉相承。

三、框架对比

模式 LangGraph OpenAI Agents SDK CrewAI 适合
监督者-工人 create_supervisor/工具调用 handoffs 即工具 Hierarchical Process 2-4 专家、要清晰路由
群体 swarm 拓扑 全互联 handoffs 延迟优先
分层 嵌套子图 嵌套 crew 大规模、监督者上下文装不下
辩论 自定义节点 来回 handoff 准确率 > 成本
自主团队 Crew 探索性协作
确定性流 状态机 Flow 生产、要审计

四、可复用产物

原课程 outputs/skill-orchestration-picker.md:为给定任务选拓扑并实现,含「先单 Agent」硬拒绝规则、跳数计数器、层级塌缩检查。

五、练习

  1. (Easy) 把监督者-工人改成群体:移除路由器。什么坏了?什么变好了?
  2. (Medium) 给群体加跳数计数器:3 次交接后拒绝。它能抓住 A→B→A 乒乓吗?
  3. (Medium) 为一个 12 专家领域建一个两层分层系统。不嵌套时上下文预算在哪失败?
  4. (Hard) 在一个生产形态的工作负载上给四种模式做性能分析。哪个在哪个指标(延迟、成本、准确率、可调试性)上赢?
  5. (Hard) 读 Anthropic 的「Building Effective Agents」。把你的每个生产流映射到四种之一。有哪个映射不干净吗?

本节要点回顾

  1. 四种编排模式:监督者-工人、群体/对等、分层、辩论——2026 框架里反复出现。
  2. 监督者-工人:中央路由分派,专家彼此不交谈;LangChain 建议用直接工具调用而非 create_supervisor(更细的上下文控制)。
  3. 群体:对等直接交接,无中央路由,延迟低但难推理。
  4. 分层:监督者管子监督者,为大规模种群,代价是运维复杂;仅当监督者上下文装不下所有专家时才用。
  5. 辩论:并行提案 + 交叉批判,更像验证而非编排(第 25 节)。
  6. 自主团队 vs 确定性流:CrewAI 的 Crew/Flow 与四种模式正交,Flow 生产优先。
  7. Anthropic 心法:构建对的系统,不是最复杂的——复杂度是税不是美德。
  8. 五步决策:单 Agent+工作流 → 监督者(2-4 专家)→ 群体(延迟优先)→ 分层(上下文不够)→ 辩论(准确率优先)。
  9. 三种陷阱:拓扑优先思维、群体乒乓交接(加跳数计数器)、造假层级(塌缩)。
  10. 一脉相承:与第 12 节「先工作流后 Agent」、第 15 节「先 Flow 后 Crew」同源——先榨干简单方案再上复杂度。

下一节,我们进入生产运行时——把编排模式、记忆、工具、安全、可观测性整合成一个可部署、可水平扩展、能扛流量的 Agent 服务,以及它带来的运维新挑战。


发布者: 作者: Rohit Gupta 转发
评论区 (0)
U