Skip to main content
  1. Blogs/
  2. 前端开发/
  3. AI 实践/

搞懂 Agent 和 Workflow 高效构建代理系统

·129 words·1 min
Table of Contents

前言
#

这篇是我转向 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 往往需要更多的成本,并提供护栏机制避免无限循环,或者触碰到系统边界。