
一个 Agent 能够独立完成一项任务,而一条横跨检索、起草、核对、交付的工作流,也能拆分给几个 Agent 分担。一旦这样拆分,困难可能出现在交接环节,上下文在传递中丢失、步骤被重复执行、早期的一处小误差可能逐级放大到最终结果。文章围绕一条多 Agent 工作流如何搭建展开,分析哪些模式能让步骤保持有序、团队应留意哪些容易出问题的环节,以及 Syfo 这类人机协作工作空间如何让每一次交接与复核在共享 Channel 中保持可见。
快速结论
多 Agent 工作流指一项任务由几个 Agent 共同完成,每个 Agent 承担一个角色,在约定的节点把工作交给下一环。设计这样一条工作流,落在四个部件上,即各自的角色、彼此之间的交接、一份供读写的共享记录,以及成员可核对结果的复核点。困难有很大一部分出现在交接处,上下文可能在此丢失、某一步可能重复、早期的差错可能向下游传递。当工作能拆分为可独立推进的部分时,这种结构较为适用;当它仍是一条连贯的主线时,单个 Agent 更稳妥。
多 Agent 工作流是什么
先拆开这两个词。工作流指一项任务从开始到得出结果所经过的有序路径。多 Agent 表示几个 Agent 共享这条路径,各自有明确的角色,在彼此之间传递工作。合起来看,多 Agent 工作流是一项被拆分给多个 Agent 的工作,它经过一组 Agent,每个做好自己那部分再向下传递。
这与「agentic AI」(即自主式 AI)是不同的概念。agentic 描述的是一种能力,即软件能朝目标规划下一步、调用工具,并随输入变化而调整。单个 Agent 本身也能是自主式的,而一条多 Agent 工作流既能由自主式 Agent 搭建,也能由更简单的 Agent 组成。因此两个词回答的是不同问题,agentic 关乎一个 Agent 能做什么,多 Agent 关乎有多少个 Agent 分担工作、工作在它们之间如何传递。
多 Agent 工作流的组成部件
在选择模式之前,先理清每条多 Agent 工作流由哪些部件搭成会有帮助。设计包括四类部件,另有一个协调决定统领全局。
角色
每个 Agent 被赋予一个角色,也就是任务中一块界定清楚、带有自身指令与工具的切片。角色能够是检索、起草、核对、排版,或工作拆出的任何一步。清晰的角色让每个 Agent 专注于它被配置来做的那件事。
交接
交接是一个 Agent 的产出成为下一个 Agent 输入的那个点。它承载着下一步所依赖的材料。当双方对传递内容达成一致,即格式、内容,以及怎样算完成,交接就顺利。宽松的交接,正是上下文容易丢失之处。
共享记录
相互传递工作的 Agent,需要有一处读取共享状态,例如任务目标、目前已收集的来源,以及先前步骤的产出。共享记录保存这些,让后面的 Agent 无需重新拼凑此前发生了什么。
复核点
复核点是成员可在一份结果继续向下之前、或在它成为最终产出之前加以核对的位置。工作在 Agent 之间传递时,复核点是团队对质量保持掌控的地方。
协调决定
需要有某种机制决定哪个 Agent 先跑、结果接下来流向何处。在简单的工作流里,这一顺序事先固定;在更复杂的工作流里,某一步会依据情形选择下一步动作。这个协调决定属于工作流本身的设计,也正是下面这些模式所要安排的对象。
让步骤保持有序的设计模式
以下模式把这些部件安排成可运转的顺序。每种适合不同形态的工作,因此重点在于让模式匹配手头的工作流,无意给它们排出高下。
顺序流水线
几个 Agent 按固定顺序运行,各自把产出交给下一个,例如先检索、再起草、再核对、再排版。当各步骤确实相互依赖、且顺序事先已知时,流水线较为适用。它的弱点在于早期的一处小错会沿链条向下传递,因此复核点放得越靠后,需要它兜住的就越多。
管理者与工作者
一个 Agent 承担协调角色,把任务拆成若干部分,分派给工作者 Agent,再把返回的结果汇拢。当工作能拆成可同时推进的部分、且需要有成员来分派与重组时,这种模式较为适用。它增加了对管理者如何拆分工作这一判断的依赖。
并行分发再汇合
几个 Agent 同时处理彼此独立的部分,随后由一步把它们的产出汇合。当各部分互不依赖、且提早完成值得那一步汇合时,这种模式较为适用。若各部分实际存在重叠,汇合就要做协调,从而增加工作量。
复核或评审步
一个 Agent 负责产出,另一个在结果向下传递前,对照目标或来源加以核对。当一处差错的代价足以值得一道专门检查时,这种模式较为适用。它增加了一步和一些延时,换来更早发现错误。
一个示例
以一条从检索到交付的工作流为例。目标是依据几个来源做一份简短简报。
- 一个 Agent 收集来源并写入共享记录。
- 第二个据此起草简报。
- 第三个把草稿与来源核对,标出无法溯源的表述。
- 第四个把结果整理成可交付的形态。
它们之间的每一条连线均代表一次交接,收集者把来源交给起草者,起草者把草稿交给核对者,依此类推。核对之后设一个复核点,成员在此先读标出的表述,随后简报交付出去。
同一条工作流也能以流水线运行,或把收集这一步分发给几个 Agent 再汇合,视材料多少而定。
多 Agent 工作流会在哪里失效
失效点集中在交接与协调周围,每一处均有对应的化解办法。
- 交接处丢失上下文。 当一次交接传递的内容少于下一步所需,那一步就在信息不全的情况下工作。就每次交接承载什么达成一致,并把共享状态写入双方均可读取的记录,能减少这种情况。
- 某一步重复劳动。 当两个 Agent 对某步由谁负责不明确,就可能重复彼此的工作。为每一步指定一个负责角色,有助于减少重复投入。
- 早期差错向下游传递。 早期一处小差错可能原样到达最终结果。放在高代价步骤之前的复核点,比放在末尾的复核点可在更早阶段发现更多这类差错。
- 某一步没有明确负责方。 当一部分工作悬在角色之间,就可能被漏掉。指明每一步由哪个角色负责,有助于补上这一缺口。
- 缺少复核点。 当没有任何环节在结果向下之前加以核对,差错就可能以完成品的面目通过。在工作易手处设一个复核点,让成员有机会复核。
- 过度拆分。 当一条工作流被拆到超出各部分能独立运行的程度,交接与协调的代价可能高于拆分省下的。仅在某部分确能独立运行处拆分、不再更细,可能降低这一代价。
如何搭建一条多 Agent 工作流
团队能照做的有序步骤如下。
- 从完整的工作流出发,把它写成单个 Agent 会走的那些步骤。
- 标出无需等待其他步骤即可推进的步骤,它们是可拆分的候选。
- 为每个拆出的步骤配一个角色,带上自身的指令与工具。
- 界定每一次交接,即一步向下一步传递什么、以何种形式、怎样算完成。
- 定下顺序,选一种与步骤间依赖关系相匹配的模式(流水线、管理者与工作者、并行汇合)。
- 在结果易手处或高代价步骤之前,加入复核点。
- 用真实输入跑一遍,盯住交接处,因为工作流往往从那里开始出问题。
让多 Agent 工作流保持可见与可复核
- 记录可见,复核不用反推路径。选定的工作、交接与复核记录在共享 Channel 中对成员和 Agent 同时可见,成员照记录复核运行过程,不必从结果倒推它如何得来。
- 状态与归属清楚,下一步不悬空。每项工作在 Task 上带状态与负责方,谁在做、到哪一步、由谁接手,团队一眼看清。
- 产出按标准评估。某一步的结果可表示为交付物,由成员打开并按团队书面标准评估。
- 关键动作有人把关。对事先指定的高风险或对外动作,Agent 或团队能把该动作准备为 Action Card,交由有权限的成员以本人身份审阅并提交。
- 上下文跨会话延续。对话轮次与多次会话之间,相关上下文保持连续,交接时不从头再来。
工作流设计覆盖的是步骤的形态,即哪个 Agent 何时运行、每一步接收到什么、结果如何往下传。它覆盖较弱的是运行的中段,也就是一位 Agent 的产出交给下一位、而一处安静的偏差由此传开的地方。
多 Agent 工作流里代价较大的失效,出在交接点上。一位 Agent 交出一份不完整或略有偏差的结果,下一位把它当作定论,偏差往往浮出水面时已隔了好几步,而那时线索已经断了。Syfo 给这些交接点留下可供成员读取的记录,围绕一次运行的其余能力见下文。
- 跨 Agent 的步骤留下记录。 每一次交接都落在团队读得到的地方,一条停滞的工作流因此显示出停在哪一处。
- 状态带着负责方。 团队采用自己命名的任务状态,每一步写清由谁持有、推进到哪一处。
- 每份结果按交付物评估。 成员打开交回的结果,对照团队写下的标准来读。
- 上下文随交接延续。 多轮与多次会话之间保持连贯,后一步不会建立在猜测前一步产出了什么之上。
当设计里需要一个人来做决定,这一步可准备为由获授权的成员以本人身份复核并提交,判断因此留在人这一侧,即使它放在一条自动运行的流程里。工作流本身仍决定并执行各个步骤。
问题与回答
多 Agent 工作流与 agentic AI 是一回事吗? 不是。agentic AI 描述的是一种能力,即软件朝目标规划、行动并调整。多 Agent 工作流描述的是一种结构,即几个 Agent 分担一项任务、在彼此之间传递工作。多 Agent 工作流能由自主式 Agent 搭建,单个自主式 Agent 也能独立工作,因此两个词回答的是不同问题。
能给出一个多 Agent 工作流的例子吗? 一个例子是从检索到交付的工作流,一个 Agent 收集来源,第二个据此起草,第三个把草稿与来源核对,第四个把结果整理成形。每一步是一个角色,工作在一次界定清楚的交接上从一环传向下一环。
如何搭建一条多 Agent 工作流? 先把整条工作流按单个 Agent 会怎么跑写出来,标出能独立推进的步骤,为每一步配一个带自身工具的角色,界定每次交接传递什么,选一种与步骤依赖关系相匹配的顺序,并在结果易手处加入复核点。随后用真实输入跑一遍,盯住交接处。
是什么导致多 Agent 工作流失效? 失效点往往落在交接与协调处,例如交接传得太少导致上下文丢失、由谁负责不清导致步骤重复、早期差错向下游传递,或工作流拆得过细、协调代价高于省下的。清晰的交接、每步一个负责方,以及在工作易手处设复核点,能减少这些情况。
从何处起步
先按单个 Agent 会走的方式把工作流梳理出来,再拆出那些能自立的步骤。在搭建之前就界定每一次交接,因为交接正是多 Agent 工作流容易失效之处;并在任何结果易手的地方设一个复核点。从小处起步,观察各部件之间如何传递工作,随工作的形态给出理由再增加 Agent。