定义
真实生产系统很少是单一模式。它们将流水线、并行、交接、评审、人在回路、黑板和协议层组合到一个业务流程中。
类别:组合
结构
适用场景
企业级 Agent 平台、编码 Agent 、客服 Agent 、研究 Agent——任何对稳定交付有要求的场景。
不适用场景
在单一模式未经验证之前。组合的复杂性会迅速膨胀。
实现方法
- 先确定主流程:工作流 / 图。
- 在特定节点插入模式:并行检索、交接、评审、审批。
- 所有模式共享一个状态模型、事件模型和任务注册表。
- 在每个组合边界定义输入/输出 schema。
- 先交付 P0 路径;后续迭代添加高级模式。
最小化伪代码
TypeScript
const workflow = graph()
.node("plan", planner)
.node("parallel_research", fanout([searchA, searchB]))
.node("draft", writer)
.node("review", critic)
.edge("review", s => s.review.pass ? "final" : "draft");
return workflow.run(userTask);
推荐的追踪事件
composite.workflow.startedcomposite.pattern.entercomposite.pattern.exitcomposite.workflow.completed
常见失败模式
- 组合后无法判断哪个模式导致了问题。
- 状态模型不一致。
- 每个模式有自己的追踪,没有统一的关联手段。
实现检查清单
- 触发和退出条件已定义。
- 输入/输出 schema 已定义。
- 权限、预算、超时和重试策略已定义。
- 追踪事件已定义。
- 降级或人工接管策略已定义。