前言#
这篇是我转向 AI Engineer 的学习笔记,非常愿意分享给有同样目标的小伙伴们。
不过我也是新人,如果你希望更专业的学习,可以点击这里 Building Effective Agents 查看原文。
Agent 和 Workflow 的区别#
每天都听到 Agent 这个词,但 Agent 到底是什么?它和 Workflow 有什么区别?
Agent 字面意思就是“代理人”,通常有如下几种定义:
- 一个自主系统,可以独立运行,并可以自己用各种工具来完成复杂任务。
- 可以根据预设的规则,完成符合用户意图的任务。
在 Anthropic 里,将这些 代理系统 根据 workflow 和 agent 划分为两种不同的设计架构:
- Workflow:系统的模型按照设定编排好的路径,一步步执行任务。
- Agent:系统的模型根据反馈结果动态选择他们认为合适的工具,并完成任务。
架构基础 The augmented LLM#
首先,我们为一个代理系统 agentic system 其提供检索 retrieval、工具 tools、记忆 memory 核心能力,这样就成为一个增强的大模型 augmented LLM。

在这个地基上,我们的代理系统将可以自己查询资料,调用合适的工具能力,并记录反馈和历史记录来调整自己的行为。
Workflow: Prompt chaining#
Prompt chaining 是 Workflow 的一种工作模式,它通过将多个 prompt 链接在一起,形成一个有序的任务流。

我们可以在一次生成后设定 Gate 检查,判断是否满足要求,如果不满足,则继续生成,直到满足要求为止。
适合场景:对于一个任务可以被拆解的非常清楚,并且每个步骤的输出可以被准确评估的情况。
Workflow: Routing#
Routing 就是先判断输入属于哪一类,再把它交给对应的专门流程处理。

比如你要提工单,系统会根据你的问题判断属于哪一类,再把它交给对应的专门流程处理。
┌──> 售前 Agent
用户问题 → Router 分类 ─┤──> 退款 Agent
└──> 技术支持 Agent适合场景:对于一个复杂任务可以根据分类等方式被拆解的非常清楚,并且每个步骤的输出可以被准确评估的情况。
Workflow: Parallelization#
模型通常会按照不同视角同时处理不同任务,最后将所有的结果合并起来。

适合场景:这种并行子任务的处理方式,可以大幅提高处理效率。你可以按照不同目的进行任务分配,并行执行后将加快回答效率。同时也可以多视角跑完后将结果合并,得到更全面的结果。
简单来说:同时执行缩短等待时间,多角度分析,得到更全面的结果。
Workflow: Orchestrator-workers#
设立一个主模型,负责调度其他子模型执行任务,最后合并他们的结果。

它和 Parallelization 的区别是:Parallelization 是同时执行多个子任务,而 Orchestrator-workers 是设立一个主模型,负责调度其他子模型执行任务,最后合并他们的结果。
类似我们 Vibe Coding 时,往往一个任务,通常会同时修改不同职责的文件,最后再合并起来。
Workflow: Evaluator-optimizer#
Evaluator-optimizer(评估与优化)就是一个 LLM 调用生成结果,另一个调用评价并给出反馈,再根据反馈修改,形成循环。

Agents#
看了那么多 Workflow 的工作模式,我们终于可以来看看 Agent 了。
它是怎么工作的呢?

当用户提出问题后,Agent 开始工作,他会理解问题,并决定使用什么工具来完成任务,然后根据结果进行调整,直到完成任务,Agent 再停止。
对于开放问题,Agent 通常需要足够的权限,这样他们选择工具后将得到预期反馈,由于无法预测执行次数,Agent 往往需要更多的成本,并提供护栏机制避免无限循环,或者触碰到系统边界。
