Workflows vs agents
Workflows vs agents 指 Anthropic 在 agent 系统设计里强调的一条核心架构边界:究竟是由开发者预先写好执行路径,还是由模型在运行时根据环境反馈动态决定流程。这个区分的价值不在命名,而在它直接决定系统的可预测性、成本、调试方式和适用任务类型。
workflows是预定义代码路径驱动的系统,模型只在被明确安排好的步骤里完成局部子任务。agents是模型驱动的系统,模型会根据工具结果、环境反馈和阶段性判断来决定下一步行动。- 这两者都属于
agentic systems,但工程含义不同:前者偏确定性编排,后者偏运行时自治。 - workflow 的优点是可预测、易调试、成本更可控,适合任务结构比较稳定、步骤边界比较清晰的场景。
- agent 的优点是能处理开放式任务和不可预先枚举的路径,适合步骤数未知、需要长期探索或需要持续根据世界状态调整策略的场景。
prompt chaining、routing、parallelization、orchestrator-workers、evaluator-optimizer都属于 workflow 家族;它们的共同点是控制结构仍掌握在代码里。- 真正的 agent 则通常表现为“模型 + 工具 + 环境反馈 + 循环”,并带有 stopping condition、checkpoint 和必要的人类升级路径。
- 这个概念和 Agent scaffold 高度相关,因为 scaffold 决定了模型能看到什么工具、能否获得足够 ground truth、以及行动循环被如何约束。
- 它也和 Generator-evaluator loop、Agent teams 相连,因为很多看似“agent” 的系统,实际内部仍大量依赖 workflow 结构来维持质量和可控性。
- 文章背后的更深一层原则是:不要因为“agent” 这个词更高级,就提前把系统推向更高延迟、更高成本和更弱可预测性。
ℹ️ Conflict:
- 在真实产品中,workflow 和 agent 很少是二元对立;更常见的是 workflow 外壳包裹局部 agent,自主性是连续谱而不是开关。
- 更自主的 agent 不一定更强。如果任务本身已经能被固定子步骤稳定分解,那么额外自治只会增加成本和失误空间。
- 反过来,把所有问题都硬塞进 workflow 也会让系统在开放式任务前失去弹性,导致大量脆弱分支逻辑。
- Building effective agents
- Agent scaffold
- Agent teams
- Generator-evaluator loop
- Tool ergonomics for agents
- Agentic engineering
- Anthropic
- Anthropic, “Building effective agents”, 2024-12-19.
- 原文摘录:[llm-wiki/raw/anthropic/Building effective agents](/raw/anthropic/Building effective agents.md)