Lesson 0004 · 约 15 分钟

编排、Workflow 与多 Agent

本课训练架构取舍:什么时候应该用确定性 workflow,什么时候用单 Agent,什么时候才值得拆成多个 Agent。

先问“为什么动态”

Agent 架构不是自主性越高越先进。先把任务拆成三类问题:

  1. 路径是否已知?如果步骤、规则和输出格式稳定,优先写成 workflow。
  2. 下一步是否需要根据观察动态选择?如果是,单 Agent 往往足够。
  3. 是否存在清晰的上下文、权限或并行边界?只有这时才考虑多 Agent。
最小充分自主性:只给系统完成任务所需的动态决策权,不把本来可以确定的控制流交给模型。

Anthropic 将 prompt chaining、routing、parallelization、orchestrator-workers、evaluator-optimizer 和 agents 视为不同的组合模式,并建议从最简单的方案开始。阅读原文

六种模式如何区别

Prompt chaining

固定的模型步骤串联。适合“抽取 → 校验 → 改写”这类路径明确的任务。

Routing

先分类,再选择路径、工具或专长 Agent。分类错误需要明确的 fallback。

Parallelization

独立子任务同时执行,最后汇总。要定义部分失败、超时和结果冲突。

Orchestrator-workers

中央 Agent 动态拆分任务,worker 返回结构化局部结果。

Evaluator-optimizer

生成与评估交替,适合有明确质量标准且允许多轮修正的产物。

Handoff

当前 Agent 把控制权交给另一个 Agent;交接的是任务所有权,不是随意复制全部上下文。

PegaFlow 故障调查 Agent

调查 KV transfer timeout 时,可以把“收集事实”写成 workflow,再让一个诊断 Agent 动态判断下一步。只有在日志、代码和配置分析确实需要独立上下文或权限时,才拆 worker。

固定入口创建 incident、锁定时间范围、读取节点状态
诊断 Agent根据观察选择日志、代码或配置检查
路由与预算限制并发、工具权限、调用轮次和成本
专长 worker必要时并行分析 trace、代码符号和运行配置
汇总与升级合并证据,给出结论或交给人工处理

确定性入口包围动态诊断;多 Agent 只出现在有真实边界的局部

多 Agent 的四种边界

  1. 上下文边界:worker 只获得完成子任务所需的证据,避免共享无关历史。
  2. 权限边界:worker 只能使用自己的工具和数据,不能通过 handoff 绕过审批。
  3. 状态边界:一个组件拥有事实状态,其他 Agent 返回建议或带来源的结果。
  4. 生命周期边界:每个 Agent 有清晰的输入、输出、超时、预算和失败协议。

OpenAI Agents SDK 的 handoff 把控制权转移和输入过滤显式化;这正是多 Agent 设计应关注的协议,而不是仅仅创建更多模型实例。查看 handoff 文档

选择题:先选最小架构

问题 1:步骤和规则都已知的“抽取 → 校验 → 输出”最适合什么?

问题 2:多个独立子任务需要同时运行,优先考虑哪种模式?

问题 3:决定是否增加 Agent,最先需要确认什么?

本课主阅读

Anthropic: Building Effective Agents。阅读时比较 workflow 与 agents 两节:每个模式带来了什么能力,又引入了什么新的失败面?

完成后,请为一个你熟悉的任务选择 workflow、单 Agent 或多 Agent,并说明:动态性在哪里,边界在哪里,失败如何回收。