五种 workflow 模式
确定性编排的五种结构各适合什么场景,以及何时才该升级到自主 agent
核心要点:
- workflow 路径由代码预定,可预测可定位
- 串链:串行子步骤,可插 gate 阻断
- 路由:分类后分发到专门链
- 并行:分段(独立子任务)或投票(同任务多跑)
- 编排者-工人 / 评估-优化 应对动态与迭代
本文讲确定性 workflow 的五种模式。自主 agent loop 与"何时该用 agent 而非 workflow"见 02-单agent-loop。
确定性 workflow 和 agent loop 有什么不同?
核心问题:同样是多步骤,workflow 凭什么"可预测"?
workflow 的控制流由代码预先编排,路径固定、失败可定位[1]。与 02-单agent-loop 中 LLM 掌控制流相反,workflow 把"下一步走哪"写进代码,只让 LLM 完成每个节点内的具体工作。
这一确定性是 workflow 的核心价值:路径可预测、出错能定位到具体节点、成本可估算。框架如 LangGraph 把 workflow 具象成有向图 DSL(节点 + 边 + 编译),静态结构支持检查与 checkpoint。下面五种模式是 Anthropic 归纳的可复用 workflow 骨架,结构对比见 。
串链和路由怎么用?
核心问题:最基础的两种 workflow 长什么样?
串链把任务拆成顺序子步骤,路由把输入分发到专门处理链[1]。两者是最常用的入门模式。
- prompt chaining(串链):每步输出喂入下一步,可在步骤间插入 gate 检查、阻断错误向后传播。适合能清晰拆成固定顺序子任务的场景(如"先生成大纲、再写正文")。
- routing(路由):用一个分类器把输入分到不同的专门化链,并按复杂度匹配模型成本(简单问题走 Haiku,复杂走 Opus)。适合输入类别明确、各类处理方式不同的场景。
可借鉴的判断:任务步骤固定就串链,输入类型分化就路由。
并行有哪两种形态?
核心问题:让多个 LLM 调用同时跑,目的是什么?
并行分两种:分段(独立子任务并发)和投票(同任务多次独立运行)[1]。两者目的不同。
- 分段(sectioning):把任务切成互相独立的子任务并发执行,延迟由最慢分支决定。适合子任务彼此无依赖(如同时翻译多段)。
- 投票(voting):同一任务跑多次,聚合结果提升可靠性或覆盖率(如多次跑找 bug,取并集)。适合单次结果不够可靠的场景。
并行的收益是墙钟时间或质量,代价是 token 翻倍。这与多 agent fan-out 相关但更轻——并行是同一编排内的并发调用,不涉及独立 agent 上下文(见 03-多agent-fanout)。
编排者-工人和评估-优化解决什么?
核心问题:子任务结构事先不知道、或一次做不好,该用哪种模式?
编排者-工人应对运行时才确定的子任务,评估-优化应对需迭代打磨的输出[1]。两者比前三种更动态。
- orchestrator-workers(编排者-工人):中央 LLM 动态分解任务并分发给 worker,子任务的数量和结构在运行时决定(区别于固定的并行分段)。它的并发 fan-out 细节见 03-多agent-fanout。
- evaluator-optimizer(评估-优化):生成与评估交替迭代,一个 LLM 产出、另一个按标准评判并要求改进,直到达标。需要明确的评估标准和迭代上限,否则会无限循环。
这两种模式引入了有限的动态性,但仍由代码框定边界——不同于完全交给 LLM 的自主 agent。
怎么选模式?
核心问题:五种模式摆在面前,从哪个开始?
从最简单的串链起步,按任务特征逐步升级,能不引入动态性就不引入[1]。Anthropic 的核心建议贯穿始终:优先选最简方案。
升级路径可概括为:固定顺序→串链;输入分化→路由;子任务独立→并行分段;结果不可靠→投票;子任务结构未知→编排者-工人;输出需打磨→评估-优化;以上都不够开放→才上自主 agent(见 02-单agent-loop)。复杂度只在确有必要时加。
Takeaway
| 知识点 | 核心结论 |
|---|---|
| workflow 本质 | 控制流由代码预定,路径可预测、失败可定位 |
| 串链 / 路由 | 固定顺序用串链;输入分化用路由 + 按复杂度配模型 |
| 并行 | 分段(独立子任务)/ 投票(同任务多跑),代价 token 翻倍 |
| 编排者-工人 | 子任务运行时动态分解,fan-out 细节见 03 |
| 评估-优化 | 生成-评判迭代,需明确标准 + 迭代上限 |
| 选型 | 从最简起步,复杂度按需加,能不上 agent 就不上 |
参考资料
- Anthropic. Building effective agents. 2024. https://www.anthropic.com/engineering/building-effective-agents
延伸阅读
- 02-单agent-loop — 何时该跳出 workflow 用自主 agent
- 03-多agent-fanout — 编排者-工人的多 agent 并行展开