再见Workflows,你好Agentic Workflows!

AI Agents、Agentic AI、Agentic 架构、Agentic 工作流,Agents 无处不在。但它们究竟是什么?它们真的能做些什么吗?
新技术带来了混乱的术语、不切实际的期望以及自封的在线专家。将穿透围绕 AI Agents 的噪音和炒作,解释并阐述 Agentic AI 的一个关键要素:Agentic 工作流(Workflows)
Agents 本身几乎无法完成什么任务。它们需要被赋予角色、目标和结构,才能实现目标。而这就是工作流的用武之地。
什么是 Agentic 工作流?
一般来说,工作流(Workflows)是为实现特定任务或目标而设计的一系列相互关联的步骤。最简单类型的工作流是确定性的,这意味着它们遵循预定义的步骤序列,并且无法适应新信息或变化的条件。例如,一个自动化的费用审批工作流可能如下所示:“如果费用被标记为‘餐饮’且金额低于30美元,则自动批准。”
然而,有些工作流利用了 LLM 或其他机器学习模型或技术。这些通常被称为 AI 工作流可以是 Agentic 或非 Agentic 的。在一个非 Agentic 的工作流中,LLM 通过指令提示生成输出。例如,一个文本摘要工作流会将较长的文本作为输入,提示 LLM 进行摘要,然后简单地返回摘要。然而,仅仅因为一个工作流使用了 LLM,并不一定意味着它是 Agentic 的。
Agentic 工作流是由 Agent 或一系列 Agent 动态执行的一系列相互关联的步骤,以实现特定任务或目标。Agent 被用户授予权限,这使它们能够在现实世界中收集数据、执行任务和做出决策。Agentic 工作流还利用了 Agent 的核心组成部分,包括其推理能力、使用工具与环境交互的能力以及持久记忆,从而将传统工作流完全转变为响应式、适应性和自我进化的流程。
更多信息:《动手设计AI Agents:CrewAI版》、《高级RAG之36技》、新技术实战:Manus+MCP/GRPO+Agent/Lazy-GraphRAG、大模型日报/月报、最新技术热点追踪(GPT4-o/数字人/MCP/Gemini 2.5 Pro)
是什么让工作流变得 Agentic?
当一个或多个 Agent 指导和塑造任务的进展时,AI 工作流就变得 Agentic 了。在现有的非 Agentic 工作流中添加 Agent,会形成一种混合方法,将结构化工作流的可靠性和可预测性与 LLM 的智能和适应性结合起来。Agentic 工作流的定义特征包括:
  • 制定计划:Agentic 工作流从规划开始。LLM 用于通过任务分解将复杂任务分解为更小的子任务,然后确定最佳执行路径。
  • 使用工具执行操作:Agentic 工作流使用一组预定义的工具和权限来完成任务并执行其生成的计划。
  • 反思和迭代:Agent 可以在每个步骤评估结果,如有必要则调整计划,并循环回到上一步,直到结果令人满意。
正如你所看到的,我们需要区分三种类型的工作流:传统非 AI 工作流、非 Agentic AI 工作流和 Agentic 工作流。传统基于规则的工作流与 AI 工作流之间的区别在于使用预定义步骤与使用 AI 模型来完成任务。其次,非 Agentic 和 Agentic AI 工作流之间的区别在于使用静态 AI 模型与动态 AI Agent。这使得 Agentic 工作流比非 Agentic 工作流更具适应性和动态性。
Agentic 架构与工作流的区别
随着任何新兴技术的出现,都会涌现出大量新术语。尽管有些人可能会将“Agentic 架构”和“Agentic 工作流”这两个术语互换使用,但它们实际上有一个重要的区别。
Agentic 工作流是 Agent 为实现特定目标所采取的一系列步骤。这些步骤可能包括使用 LLM 制定计划、将任务分解为子任务、使用互联网搜索等工具完成任务,以及使用 LLM 反思任务结果并调整其总体计划。
另一方面,Agentic 架构是用于实现给定任务的技术框架和整体系统设计。Agentic 架构多种多样且富有创造力,但总是至少包含一个具有决策和推理能力的 Agent、Agent 可以使用的工具以及短期和长期记忆系统。
Agentic工作流中的模式
回顾一下,Agentic工作流是为完成特定任务(也称为最终目标)而采取的一系列结构化步骤。因此,当我们谈论Agentic工作流时,我们实际上是在讨论使 Agent 能够实现其最终目标的特定行为模式。正如我们之前提到的,AI Agent 的核心组成部分在代理型工作流模式中起着关键作用。Agent 的推理能力促进了规划和反思模式,而它们使用工具与环境交互的能力则构成了工具使用模式的基础。
规划模式(Planning Pattern)
规划设计模式允许 Agent 自主地将更复杂的任务分解为一系列更小、更简单的任务,这一过程被称为任务分解。任务分解能够带来更好的结果,因为它减轻了 LLM 的认知负担,提高了推理能力,并减少了幻觉和其他不准确性的出现。
当实现最终目标的方法不明确且解决问题过程中的适应性至关重要时,规划尤其有效。例如,一个被指示修复软件漏洞的 AI Agent 可能会使用规划模式将任务分解为子任务,如阅读漏洞报告、识别相关代码部分、生成潜在原因列表,最后选择特定的调试策略。如果第一次尝试修复漏洞失败,Agent 可以在执行后阅读错误信息并调整其策略。
尽管规划可以帮助 Agent 更好地应对复杂任务,但它也可能导致结果不如更确定性的工作流那样可预测。因此,最好仅在需要深度问题解决和多步推理的任务中使用规划模式。
工具使用模式(Tool Use Pattern)
生成式 LLM 的一个重要限制是它们依赖于预先存在的训练数据,这意味着它们无法检索实时信息或验证超出其已学知识范围的事实。因此,它们可能会生成不准确的响应或在不知道答案时进行“猜测”。检索增强生成(RAG)通过为 LLM 提供相关且实时的外部数据来缓解这一限制,从而使其能够生成更准确且更具上下文基础的响应。
然而,工具使用模式不仅限于简单的 RAG,它还允许 LLM 动态地与现实世界交互,而不仅仅是从中检索数据。在代理型工作流中,工具使用模式通过允许 Agent 与外部资源和应用程序、实时数据或其他计算资源进行交互,扩展了 Agent 的能力。
常见的工具包括 API、信息检索(例如向量搜索)、网络浏览器、机器学习模型和代码解释器。这些工具用于执行特定任务,如搜索网络、从外部数据库检索数据或读取或发送电子邮件,以帮助 Agent 实现其目标。
反思模式(Reflection Pattern)
反思是一种强大的代理型设计模式,相对容易实现,并且可以显著提升代理型工作流的性能。反思模式是一种自我反馈机制,Agent 在最终确定响应或采取进一步行动之前,会迭代评估其输出或决策的质量。这些评估随后被用来优化 Agent 的方法,纠正错误,并改进未来的响应或决策。
当 Agent 在第一次尝试中不太可能成功完成其目标时,例如编写代码,反思模式尤其有用。在这种情况下,Agent 可能会生成一个代码片段,在沙盒或执行环境中运行它,并将错误迭代反馈给 LLM,指示其优化代码,直到代码成功执行。
反思的力量在于 Agent 能够批评自己的输出,并将这些见解动态地整合到工作流中,从而在没有直接人类反馈的情况下实现持续改进。这些反思可以被编码到 Agent 的记忆中,使其在当前用户会话中更高效地解决问题,并通过适应用户偏好来优化未来的交互。
Agentic工作流的用例
原子设计模式(如规划和工具使用)可以通过创造性的方式组合起来,有效地利用代理型 AI 完成各种任务,涵盖多个领域。除了组合设计模式外,AI Agent 还可以被提供不同组合的工具,并被授予根据需要动态选择工具的能力。它们还可以与人类反馈循环集成,并被赋予不同程度的自主性和决策权。
这些多样化的配置使得代理型工作流能够针对各行业的广泛任务进行定制。为了展示这一点,我们概述了两个特别强大的用例:代理型 RAG 和代理型研究助手。
Agentic RAG
检索增强生成(RAG)是一种通过从外部数据源检索相关数据来增强 LLM 知识的框架。代理型 RAG 将一个或多个 Agent 整合到 RAG 流程中。
在规划阶段,Agent 可以通过查询分解将复杂查询分解为更小的子查询,或者确定是否需要向用户请求额外信息以完成请求。
AI Agent 还可以用于评估检索到的数据和响应的相关性和准确性,然后将其传递给用户。如果响应不满意,Agent 可以重新制定查询,重新访问查询分解步骤,甚至为响应查询制定新的计划。
Agentic 研究助手(Research Assistants)
Agentic研究助手(也被一些 AI 公司称为“深度研究”)通过搜索网络和各种外部数据来生成复杂主题的深度报告和详细见解。这些助手利用代理型 RAG 从网络和其他外部数据源检索信息以响应用户查询。然而,与传统 RAG 不同的是,它们能够对信息进行综合和分析,而不仅仅是从外部数据源检索相关数据以增强 LLM 的输出,OpenAI、Perplexity 和 Google 都已经公开发布了其版本的深度研究工具。

(文:PaperAgent)

发表评论