核心结论

Workflow 适合「已知路径」的任务,自主规划适合「未知路径」的任务。
实际工程中,两者通常混合使用:用 Workflow 约束关键环节,用自主规划处理不确定性。


一、使用 Workflow 的场景

Workflow 的核心特征是:流程预先定义、步骤固定有序、分支可穷举

维度适用条件
任务确定性任务的目标、步骤、输入输出格式都明确且稳定
合规要求流程需要可审计、可追溯(如金融审批、医疗诊断辅助)
错误代价高一旦出错损失巨大,不能依赖 Agent 试错(如支付、权限变更)
重复性高同一类任务反复执行,流程优化后收益明显
多系统编排需要按固定顺序调用多个外部 API / 工具
人工审核节点流程中存在必须人工介入的审批环节
可解释性需要向非技术人员清晰解释每一步做了什么、为什么这样做

典型场景举例

  • 客服工单处理:用户提交工单 → 意图识别 → 查询知识库 → 生成回复 → 人工审核 → 发送
  • 代码 CI/CD 流水线:构建 → 测试 → 安全扫描 → 部署 → 健康检查
  • 数据 ETL 管道:抽取 → 清洗 → 转换 → 加载 → 校验
  • 审批流:请假申请 → 直属领导审批 → HR 备案
  • RAG 问答:检索 → 重排序 → 上下文拼接 → 生成回答

二、使用自主规划的场景

自主规划的核心特征是:Agent 根据目标和环境自行决定下一步做什么,路径不预设

维度适用条件
目标开放用户只描述了「想要什么」,没说「怎么做」(如"帮我分析竞品")
环境动态中间结果不可预测,每一步的产出决定下一步的方向
需要探索解决方案不唯一,需要 Agent 自行尝试、比较、选择
任务低频异质几乎每次任务都不一样,不值得为每种情况建 Workflow
创造性工作需要发散思维、头脑风暴、设计方案等
信息不完备Agent 需要主动搜集信息、逐步收敛不确定性

典型场景举例

  • 代码生成与调试:分析需求 → 阅读代码库 → 生成方案 → 编码 → 遇到报错 → 自主定位修复
  • 深度调研:"调研一下 AIGC 领域的最新进展" → 搜索 → 阅读 → 筛选 → 总结 → 发现新方向继续深挖
  • 复杂问题拆解:将模糊需求拆成子任务,动态调整子任务优先级和依赖
  • 博弈/对抗场景:需要实时感知对手策略并调整自身行为
  • 自主软件工程:如 SWE-bench 类任务,Agent 独立完成 bug 修复的全过程

三、对比总结

对比维度Workflow自主规划
控制方式预定义 DAG / 状态机LLM 动态决策(ReAct / Plan-Execute)
可靠性,路径可控中等,存在幻觉和偏离风险
灵活性低,改流程需改代码/配置,自然语言即可调整目标
可预测性,耗时和成本可预估低,Token 消耗和步骤数不确定
开发成本前期需梳理流程、编码前期只需写好 Prompt 和工具
维护成本流程变更需要修改定义修改 Prompt 即可,但效果需持续调优
调试难度,每步输入输出明确高,决策链路黑盒
效果天花板受限于流程设计者的先验知识理论上可超越预定义路径

四、混合架构(推荐)

实际系统中,很少有纯 Workflow 或纯自主规划的 Agent,通常是分层混合

┌─────────────────────────────────────────┐
│              编排层 (Workflow)            │
│  定义主干流程、关键决策点、安全边界         │
│                                          │
│   ┌──────────┐  ┌──────────┐            │
│   │ 自主规划   │  │ 自主规划   │  ...      │
│   │ Agent A   │  │ Agent B   │            │
│   │ (子任务1)  │  │ (子任务2)  │            │
│   └──────────┘  └──────────┘            │
└─────────────────────────────────────────┘

混合原则

  1. 主干用 Workflow:确定性的、不可跳过的步骤用 Workflow 串联
  2. 叶子用自主规划:每个步骤内部的具体执行交给 Agent 自主决策
  3. 安全边界用 Workflow:涉及权限、资金、数据变更等危险操作,必须走审批节点
  4. 兜底策略:自主规划 Agent 加超时、步数上限、结果校验等约束
  5. 渐进式演进:对高频自主规划任务,分析其成功路径,逐步沉淀为 Workflow

五、决策框架

面对一个新任务,可以按以下顺序判断:

  1. 能不能穷举所有路径? → 能 → Workflow
  2. 出错后能否承受后果? → 不能 → Workflow(即使路径不完全确定,也要加人工兜底)
  3. 任务是否每次都不一样? → 是 → 自主规划
  4. 用户是否只给了目标没给步骤? → 是 → 自主规划
  5. 以上都模糊? → 混合架构,先让自主规划 Agent 跑,观察成熟后固化 Workflow

六、常见误区

误区正确认知
"Workflow 比较落后,自主规划才是 AI Native"Workflow 是工程化手段,解决的是可靠性问题,两者不矛盾
"给了 Agent 足够好的 Prompt,就不需要 Workflow"Prompt 无法替代流程约束,Agent 仍可能做出意外行为
"所有流程都应该固化为 Workflow"过度工程化会导致系统僵化,失去 Agent 的核心价值
"自主规划就是随便跑,不用管"自主规划也需要观测、评估、约束和兜底机制

一句话总结:Workflow 是对已知最佳实践的编码,自主规划是对未知空间的探索。让确定性归 Workflow,不确定性归 Agent。

 

更多推荐