Skill = Agent + Workflow
2024 年 12 月 19 日,Anthropic 发表了一篇文章《Building effective agents》。
这篇文章把 Agentic System 分成了两类 Workflow(工作流)和 Agent(智能体),文章中还明确了这两种技术路径的使用场景:
- Workflow:为定义明确的任务提供可预测性和一致性。
- Agent:用于难以预测或无法预测所需步骤数,且无法预先设定固定路径的开放式问题。
当时正值 n8n 和 dify 此类工具的爆发期间,文中列举的五大 Workflow 模式,与当时这些工具的应用场景形成了完美共振。
从文章的内容来看,它明确将这两种技术路径分开,并且肯定了 Agent 构建模式的简单强大。
两个月后,Anthropic 发布了 Claude Code。
之后的一段时间里 Agent 虽然大行其道,但是 Workflow 的开发思想并没有消亡,反而和 Agent 融合成为了 Anthropic 提出的下一个概念:Skill。
关于 Skill 的核心思想(详见我 12 月 28 日的帖子),我暂不展开,今天主要带大家一起回顾一下 Anthropic 这篇文章中所论述的 Workflow 使用场景,读完你会发现,这些正是编写 Skill 时不可或缺的底层逻辑。
1. Prompt Chaining(提示词链)
思想:把任务拆成连续步骤,每步的输出成为下一步的输入。
适用于:任何可以清晰分解成固定子任务的时候。
应用场景:先生成营销文案,再翻译成其他语言;先写文档大纲,检查大纲是否符合要求,再根据大纲写正文。
2. Routing(路由)
思想:对输入分类,分发到不同的专门任务。
适用于:明确的分类类别,不同类别需要不同处理方式。
应用场景:客服系统把一般问题、退款请求、技术支持分到不同流程。
3. Parallelization(并行化)
思想:把任务拆成独立的子任务同时跑和同一个任务跑多次,汇总结果。
适用于:子任务可以并行加速,或者需要多个视角提高准确率。
应用场景:代码审查时多个提示词从不同角度检查漏洞;一个模型处理用户查询,另一个同时筛查不当内容。
4. Orchestrator-Workers(编排者-工人)
思想:中心 LLM 动态拆解任务,分配给 Worker LLM,再汇总结果。
适用于:无法预测需要哪些子任务的复杂任务。
应用场景:代码修改,要改多个文件,每次改动的文件数和内容都不确定。
5. Evaluator-Optimizer(评估者-优化者)
思想:一个 LLM 生成结果,另一个评估并反馈,循环优化。
适用于:有明确评估标准,迭代能带来明显改进。
应用场景:文学翻译的细节打磨;复杂搜索任务需要多轮搜索和分析。
这篇文章发布的十个月后,Claude Code 中的 Skill 正式发布。
从中我们窥见 Workflow 的开发思想并没有被 Agent 淘汰,它只是内化了。
Workflow 提供了约束,Agent 提供了推理,二者合二为一变成了人人都可以构建的 Skill。
工具在变,但拆解复杂世界的逻辑,永不过时。
