Lesson 0004 · 约 15 分钟
编排、Workflow 与多 Agent
本课训练架构取舍:什么时候应该用确定性 workflow,什么时候用单 Agent,什么时候才值得拆成多个 Agent。
先问“为什么动态”
Agent 架构不是自主性越高越先进。先把任务拆成三类问题:
- 路径是否已知?如果步骤、规则和输出格式稳定,优先写成 workflow。
- 下一步是否需要根据观察动态选择?如果是,单 Agent 往往足够。
- 是否存在清晰的上下文、权限或并行边界?只有这时才考虑多 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。
确定性入口包围动态诊断;多 Agent 只出现在有真实边界的局部
多 Agent 的四种边界
- 上下文边界:worker 只获得完成子任务所需的证据,避免共享无关历史。
- 权限边界:worker 只能使用自己的工具和数据,不能通过 handoff 绕过审批。
- 状态边界:一个组件拥有事实状态,其他 Agent 返回建议或带来源的结果。
- 生命周期边界:每个 Agent 有清晰的输入、输出、超时、预算和失败协议。
OpenAI Agents SDK 的 handoff 把控制权转移和输入过滤显式化;这正是多 Agent 设计应关注的协议,而不是仅仅创建更多模型实例。查看 handoff 文档。
选择题:先选最小架构
问题 1:步骤和规则都已知的“抽取 → 校验 → 输出”最适合什么?
问题 2:多个独立子任务需要同时运行,优先考虑哪种模式?
问题 3:决定是否增加 Agent,最先需要确认什么?
本课主阅读
Anthropic: Building Effective Agents。阅读时比较 workflow 与 agents 两节:每个模式带来了什么能力,又引入了什么新的失败面?
完成后,请为一个你熟悉的任务选择 workflow、单 Agent 或多 Agent,并说明:动态性在哪里,边界在哪里,失败如何回收。