AI Agents,Agentic AI,Agentic Architectures,Agentic Workflows......
Agents 无处不在,但它们到底是什么?它们真的能做什么吗?
新技术总是带来一堆让人困惑的术语、过高的期望和一些自称专家的人。在这篇文章中,我们将抛开 AI Agents 的各种噪音和炒作,解释并阐明 Agentic AI 的一个重要概念:Agentic Workflows.
Agents 如果仅靠自身能做的比较有限。它们需要被赋予角色(Role)、目标(Goals)和结构(Structure)来实现它们的目标。这就是 Workflows 的用武之地。
理解 Agentic Workflows 可以帮助你理解 Agents 是如何运作的以及为什么是这么运作的。
因此,我们将介绍 AI Agents 的关键组成部分,给出 Agentic Workflows 的简明定义,解释是什么使一个 Workflow 变得 Agentic,详细阐述 Agentic Workflows 中的关键循环模式,详述真实的用户案例,并诚实地概述使用 Agentic Workflows 的好处和挑战。
AI Agents 是结合了大模型进行推理和决策以及包含现实世界交互工具的系统,能够在少量人工参与下完成复杂任务。AI Agents 被赋予特定角色,并拥有不同程度的自主权以实现其最终目标。它们还配备了记忆功能,使它们能够从过去的经验中学习,并随着时间的推移提高性能。
为了更好地理解 Agents 如何融入 Agentic Workflows,我们将探讨 AI Agents 的核心组件。
尽管 AI Agents 被设计用于半自主决策,但它们依赖于一个更大的组件框架来正常运行。这个框架包括使 AI Agents 能够有效推理的大模型、帮助 AI Agents 完成任务的工具,以及让 AI Agents 从过去的经验中学习并随着时间的推移改进响应的记忆。
AI Agents 之所以如此有效,部分原因在于它们具备迭代推理的能力,这本质上使 AI Agents 能够在整个问题解决过程中主动 “思考”。AI Agents 的推理能力源自其底层的大模型,并具有两个主要功能:规划(Planning)和反思(Reflecting)。
在规划阶段,AI Agents 执行任务分解,即将更复杂的问题拆分为更小、可操作的步骤。这种技术使 AI Agents 能够系统性地处理任务,并允许它们为不同任务使用不同的工具。它还允许进行查询分解,即将复杂查询拆分为更简单的查询,从而提高大模型响应的准确性和可靠性。
AI Agents 还通过反思其行动的结果来进行推理。这使它们能够根据从外部来源获取的结果和数据,评估并迭代调整其行动计划。
大模型拥有静态的参数化知识,这意味着它们的理解仅限于训练期间先验的信息。为了扩展其能力,使其超越原始数据范畴,AI Agents 可以利用外部工具,如网络搜索引擎、API、数据库和其他计算框架。这意味着 AI Agents 可以实时访问外部数据,以指导其决策并完成需要与其他应用交互的任务。
工具通常与权限配对,例如查询 API、发送消息或访问特定文档或数据库模式的能力。下表列出了几种常见的 AI Agents 工具及其执行的任务。
当大模型选择一个工具来帮助完成任务时,它会进行一种称为函数调用(Function Call)的行为,这扩展了其能力,使其不再局限于简单的文本生成,而是能够与现实世界进行交互。
使用哪个工具的选择可以由最终用户预先确定,也可以交给 AI Agents 来决定。让 AI Agents 动态选择工具可能有助于解决更复杂的任务,但对于较简单的工作流程,使用预定义的工具可能更为高效,而动态选择工具则可能增加不必要的复杂性。
从过去的经验中学习并记住行动发生的背景,是使 Agentic Workflow 与纯粹由大模型驱动的工作流不同的部分原因。记忆是一个关键组件,能够跨多个用户交互和会话,获取和存储上下文和反馈。AI Agents 有两种主要类型的记忆:短期记忆(short-term memory)和长期记忆(long-term memory)。
短期记忆存储更即时的信息,如历史对话,这有助于 AI Agents 确定下一步该采取什么行动来完成其总体目标。长期记忆存储随着时间的推移在多个会话中积累的信息和知识,使得 AI Agents 能够个性化,并随着时间的推移提高性能。
一般来说,Workflow 是一系列相互连接的步骤,旨在完成特定的任务或目标。最简单的工作流是确定性的,意味着它们遵循预定义的步骤序列,无法适应新的信息或变化的条件。例如,一个自动化的费用审批工作流可能是这样的:“如果费用被标记为‘餐饮’且金额低于 30 美元,则自动批准。”
然而,有些工作流会利用大模型或其他 AI 技术。这些通常被称为 AI Workflows,可以是 Agentic 或非 Agentic 的。在非 Agentic 工作流中,大模型会根据指令生成输出。例如,文本摘要工作流会将一段较长的文本作为输入,给一定的提示词让大模型进行摘要,并简单地返回摘要结果。但是,仅仅因为一个工作流程使用了大模型,并不一定意味着它是 Agentic 的。
Agentic Workflow 是由单个 AI Agent 或几个 AI Agents 动态执行的一系列连接步骤,以实现特定任务或目标。AI Agents 被用户授予权限,使其在有限的自主权下收集数据、执行任务并做出决策,这些决策将在现实世界中执行。Agentic Workflow 还利用了 Agents 的核心组件,包括其推理能力、通过工具与环境交互的能力以及持久的记忆,从而将传统工作流彻底转变为响应式、自适应和自我进化的过程。
当一项 AI Workflows 由一个或多个 AI Agents 引导和影响任务进展时,它便成为 Agentic Workflow。在现有的非 Agentic 工作流中加入 Agents ,可以创建一种混合方法,将结构化工作流的可靠性和可预测性,与大模型的智能性和适应性相结合。
Agentic Workflows 的特点在于它们能够:
1. 制定计划。Agentic Workflow 从规划开始。大模型通过任务分解将复杂任务拆分为较小的子任务,然后确定最佳的执行路径。
2. 使用工具执行操作。 Agentic Workflows 使用一组预定义的工具,并结合权限来完成任务并执行生成的计划。
3. 反思与迭代。Agents 可以在每个步骤评估结果,根据需要调整计划,并循环往复,直到结果令人满意。
如你所见,我们需要区分三种类型的工作流程:传统的非 AI Workflows、非 Agentic AI Workflows 和 Agentic Workflows。
传统的基于规则的 Workflows 与 AI Workflows 的区别在于,前者使用预定义的步骤,而后者使用 AI 模型来完成任务。
其次,非 Agentic 和 Agentic AI Workflows 的区别在于,前者使用静态的 AI 模型,而后者使用动态的 AI Agents。这使得 Agentic Workflow 比非 Agentic Workflow 更具适应性和动态性。
随着任何新兴技术的出现,都会涌现出大量新术语。虽然有些人可能会将 “Agentic 架构( Agentic Architectures)” 和 “Agentic Workflows” 这两个术语混合使用,但它们实际上有一个重要的区别。Agentic Workflow 是指 AI Agents 为实现特定目标而采取的一系列步骤。这些步骤可能包括使用大模型制定计划、将任务分解为子任务、使用互联网搜索等工具完成任务,以及使用大模型反思任务结果并调整整体计划。
与此同时,Agentic Architecture 是用于实现给定任务的技术框架和整体系统设计。Agentic Architecture 多种多样且富有创意,但始终包含至少一个具有决策和推理能力的 Agents、用于实现目标的工具,以及短期和长期记忆系统。
回想一下,Agentic Workflow 是完成特定任务(也称为最终目标)所采取的结构化步骤序列。因此,当我们谈论 Agentic Workflow 时,我们谈论的是使 AI Agents 能够实现其最终目标的特定行为模式。
正如我们之前提到的,AI Agents 的核心组件在 Agentic Workflow 模式中起着关键作用。AI Agents 的推理能力促进了规划和反思模式,而它们使用工具与环境交互的能力则构成了工具使用模式的基础。
规划设计模式允许 AI Agents 自主地将更复杂的任务分解为一系列更小、更简单的任务,这一过程被称为任务分解。任务分解能够带来更好的结果,因为它减少了大模型的认知负担,提高了推理能力,并最小化了幻觉和其他不准确性。
当实现最终目标的方法不明确,并且在问题解决过程中的适应性至关重要时,规划尤其有效。例如,一个被指示修复软件漏洞的 AI Agents 可能会使用规划模式将任务分解为子任务,如阅读漏洞报告、识别相关代码部分、生成潜在原因列表,最后选择特定的调试策略。如果第一次修复漏洞的尝试不成功,AI Agents 可以在执行后读取错误信息并调整其策略。
虽然规划可以帮助 AI Agents 更好地处理更复杂的任务,但与更确定性的 Workflow 相比,它也可能导致结果不那么可预测。因此,最好只在需要深入问题解决和多步推理的任务中使用规划模式。
生成式大模型的一个显著限制是它们依赖于预训练数据,这意味着它们无法检索实时信息或验证超出其先前学习范围的事实。因此,当它们不知道答案时,可能会生成不真实的回答或 “猜测”,即产生幻觉。检索增强生成(RAG)通过为大模型提供相关的实时外部数据,帮助缓解这一限制,从而生成更准确且基于上下文的回答。
然而,工具使用超越了一般的 RAG,它允许大模型与现实世界进行动态交互,而不仅仅是从中检索数据。在 Agentic Workflow 中,工具使用模式通过允许 AI Agents 与外部资源和应用程序、实时数据或其他计算资源进行交互,扩展了 AI Agents 的能力。
常用工具包括 API、信息检索(例如向量搜索)、网络浏览器、机器学习模型和代码解释器。这些工具用于执行特定任务,如搜索网页、从外部数据库检索数据或读取或发送电子邮件,以帮助 AI Agents 实现其目标。
反思是一种强大的 AI Agents 设计模式,相对容易实现,并且可以显著提升 Agentic Workflows 的改进效果。反思模式是一种自我反馈机制,AI Agents 在最终确定响应或采取进一步行动之前,会迭代评估其输出或决策的质量。这些评估结果随后被用来优化 AI Agents 的方法,纠正错误,并改进未来的响应或决策。
当 AI Agents 不太可能在第一次尝试中就成功实现其目标时(例如编写代码),反思尤其有用。在这种情况下,AI Agents 可能会生成一段代码,在沙盒或执行环境中运行它,并将错误信息迭代反馈给大模型,同时提供改进代码的指令,直到代码成功执行为止。
反思的力量在于 AI Agents 能够评估自己的输出,并将这些洞察动态地整合到工作流中,从而在没有直接人类反馈的情况下实现持续改进。这些反思可以被编码到 AI Agents 的记忆中,从而在当前用户会话中能够更高效地解决问题,并通过适应用户偏好来实现个性化,从而改善未来的交互体验。
原子设计模式(Atomic design patterns),如规划和工具的使用,可以通过创造性的方式组合,以有效利用 Agentic AI 在多个领域中完成各种任务。除了组合设计模式外,还可以为 AI Agents 提供不同的工具组合,甚至赋予它们根据需要动态选择工具的能力。它们还可以与人类反馈循环集成,并赋予不同水平的自主权和决策权。
这些多样化的配置使得 AI Agents 工作流能够针对各行业的广泛任务进行定制。为了展示这一点,我们概述了两个特别强大的用例:Agentic RAG 和 Agentic Research Assistants.
检索增强生成(RAG) 是一个通过从外部数据源检索相关数据来增强大模型知识的框架。Agentic RAG 则在 RAG 流程中引入了一个或多个 AI Agents 。
在规划阶段,AI Agents 可以通过查询分解将复杂查询拆分为较小的子查询,或者确定是否需要向用户请求更多信息以完成请求。
AI Agents 还可以用于评估检索到的数据和响应的相关性和准确性,然后再将其传递给用户。如果响应没达到用户预期,AI Agents 可以重新制定查询,重新进行查询分解步骤,甚至创建一个新的响应计划。
AI Agents 研究助手,也被一些 AI 公司称为 “Deep Research”,通过浏览网络和各种外部数据生成关于复杂主题的深度报告和详细见解。这些助手利用 Agentic RAG 从网络和其他外部来源检索信息以响应用户查询。然而,这些助手与传统 RAG 的不同之处在于它们能够整合和分析信息,而不仅仅是从外部来源检索相关数据来增强大模型生成的输出。
这种独特的能力归功于几个特点。首先,AI Agents 研究助手通常使用专门针对网页浏览、任务分解和动态规划进行微调过的大模型。
其次,这些工作流中的 AI Agents 会主动寻求用户指导,请求更多信息或澄清以更好地理解最终目标。
第三,这些 AI Agents 能够根据检索到的信息调整计划并改变方向。这意味着在合成新信息时,它们可以追求新的、有趣的角度,并连续查询多个数据源,直到获得必要的数据。因此,AI Agents 研究助手能够获得更深入的洞察,识别随时间变化的趋势,并编写完整的主题报告,而不仅仅是检索现有知识。
AI Agents 编程助手可以在最少人工干预的情况下生成、重构、优化和调试代码。非 AI Agents 编程助手,如第一版的 GitHub Copilot,由经过微调的生成式大模型驱动,专门用于生成代码,但其功能仅限于此 —— 生成代码。
使编程助手具备 AI Agents 特性的,是其能够通过执行生成的代码与环境交互,并根据执行结果、错误或反馈进行迭代优化的能力。这些助手还可以被授予权限,通过创建提交和 PR 来对现有代码库进行更改,例如 Anthropic 的 Claude Code,这是自动化软件开发过程中的重要一步。
AI Agents 编程助手还可以用于建议终端命令以及其他代码的修改和添加,并在执行前等待明确的人工批准,例如 Cursor 的 Agent,这使得人类能够完全控制 AI Agents。此外重要的是,AI Agents 编程助手能够通过将错误编码到长期记忆中,从错误中学习,从而随着时间的推移变得更聪明。
既然我们已经概述了 Agentic Workflow 的一些应用场景,接下来我们将更详细地了解两个实际 AI Agents 的工作流中的各个步骤:Claygent 和 ServiceNow AI Agents。
潜在客户研究和数据丰富对于增长和销售团队来说可能是一项繁琐的任务。Clay 是一家数据丰富和外展自动化公司,通过 Claygent 简化了这一流程。Claygent 是一个由人工智能驱动的研究 AI Agents ,持续扫描网络和内部数据库,以提供实时的、可操作的见解。
假设你想使用 Claygent 根据一系列姓名和电子邮件地址来丰富 LinkedIn 个人资料,然后发送个性化的介绍信息。首先,你需要指定你想要查找的数据字段(例如工作经验、教育背景、技能),这些字段会被注入到一个预配置的提示模板中。AI Agents 会处理查询,使用网络爬虫工具在网络上搜索 LinkedIn 的 URL,并从 LinkedIn 个人资料中提取所需的数据。然后,这些数据可以被发送到另一个大模型,你可以指示它以你希望的方式总结或分析这些丰富的数据。接着,可以使用同一个大模型(或另一个)为每个个人资料创建个性化的联系信息。
Claygent 是一个相对灵活的 Agentic Workflow 示例,它可以以创造性的方式进行定制,同时仍然通过为特定任务预配置的提示模板为 AI Agents 提供指导。
ServiceNow 是一个旨在简化和自动化跨 IT、运营、人力资源和客户服务领域的工作流程。他们的 ServiceNow 平台现在集成了 AI Agents ,旨在自动化重复性任务和现有工作流,同时仍由人类完全掌控决策权。
这是一个关于 Agentic Workflow 如何帮助解决技术支持案例的示例。当客户提交技术支持工单时,该工作流被触发。工单中的信息随后传递给一个或多个 AI Agents ,这些 AI Agents 在内部 IT 支持知识库上执行 RAG。AI Agents 总结发现的内容,分析类似案例,并为 IT 支持专家生成摘要。最后,它生成关于如何继续进行的建议,专家可以批准或拒绝该建议。
ServiceNow AI Agents 代表了一种在生产环境中部署 AI Agents 的创新但更为谨慎的方法,赋予它们严格的角色和任务,并在影响最终用户或客户的决策上给予有限(如果有的话)的自主权。
Agentic Workflows 通过使 AI Agents 能够规划、适应并随时间迭代,超越了传统的自动化。与遵循固定规则的确定性工作流不同,Agentic Workflows 能够动态应对复杂性,通过反馈优化其方法,并扩展以处理更高级的任务。这种适应性使它们在需要灵活性、学习和决策的场景中尤为有价值。
1. 灵活性、适应性和可定制性。静态的确定性工作流难以适应不断变化的情况和意外困难。而 Agentic Workflows 则提供了根据任务难度进行调整和演变的灵活性,确保它们始终保持相关性并提供最佳解决方案。它们还可以通过组合不同的模式进行定制,实现模块化设计,从而在需求和复杂性增长时进行迭代升级。
2. 在复杂任务上的性能提升。通过将复杂任务分解为更小、可管理的步骤(通过任务分解和规划),Agentic Workflow 显著优于确定性的零样本方法。
3. 自我纠正和持续学习。反思模式使 Agentic Workflow 能够评估自身行为,完善自身策略,并随着时间的推移迭代自身。通过利用短期和长期记忆,它们从过去的经验中学习,在每次迭代中变得更有效和个性化。
4. 操作效率和可扩展性。Agentic Workflow 可以高精度地自动化重复任务(如果构建得当),在特定场景中减少人工操作和运营成本。它们还可以轻松扩展,使其成为处理更大工作量或复杂系统的理想选择。
AI Agents 仍然是一项新兴技术,随着研究人员和用户发现将 AI Agents 融入 Workflow 的新方法,这些优势很可能会继续扩展。
尽管 AI Agents 具有诸多优势和创新特性,但它们也带来了一些挑战和局限。由于其概率性本质,AI Agents 天生会增加工作流的复杂性。而且,尽管 AI Agents 可以用于自动化流程,并不意味着在它们在任何情况下都应该被使用。以下是 Agentic Workflows 中最显著的挑战和局限:
1. 简单任务的过度复杂化。在处理诸如表单填写或基本数据提取等直接工作流时,AI Agents 可能会增加额外开销。在确定性、基于规则的自动化已经足够的情况下,引入 AI Agents 可能会导致效率低下、成本增加,甚至可能降低性能。
2. 自主性增加导致可靠性降低。随着 AI Agents 在工作流中获得更多决策权,其概率性本质可能引入不可预测性,使得输出结果可靠性降低且更难控制。为 AI Agents 实施并积极维护防护措施,并持续审查其被授予的权限至关重要。
3. 伦理道德和实际考量。并非所有决策都应委托给 AI 系统。在高风险或敏感领域使用 AI Agents 需要谨慎监督,以确保负责任地部署并防止意外后果。
鉴于这些限制,我们建议花时间反思在特定工作流程中使用 AI Agents 是否真正必要。以下问题可能有助于您做出判断:
1. 任务是否足够复杂,需要适应性决策,还是确定性方法就足够了?
2. 更简单的 AI 辅助工具(如不带 AI Agents 的 RAG)能否达到相同效果?
3. 工作流是否涉及不确定性、变化的条件或多步推理,AI Agents 能否更有效地处理?
4. 赋予 AI Agents 自主性会带来哪些风险,是否可以减轻?
Agentic Workflows 是强大的工具,能够帮助自动化完成需要决策和推理的复杂任务。在本文中,我们回顾了 AI Agents 的核心组成部分,包括记忆、工具和推理能力,以及它们如何为 Agentic Workflows 做出贡献。我们还讨论了常见的工作流模式,如规划、工具使用和反思,这些模式可以单独或组合使用,以创建动态的工作流。
此外,我们概述了两个特别有效的用例,Agentic RAG 和 Agentic Research Agents,并描述了市场上已有的两个 AI Agents ——Clay 的 Claygent 和 ServiceNow 的 AI Agents 的工作流。最后,我们探讨了 Agentic Workflows 的优势,以及它们的局限性和挑战。AI Agents 背后的技术以及我们对它们的理解都在不断发展。
文章来自于“特工宇宙”,作者“宇宙编辑部”。
【开源免费】n8n是一个可以自定义工作流的AI项目,它提供了200个工作节点来帮助用户实现工作流的编排。
项目地址:https://github.com/n8n-io/n8n
在线使用:https://n8n.io/(付费)
【开源免费】DB-GPT是一个AI原生数据应用开发框架,它提供开发多模型管理(SMMF)、Text2SQL效果优化、RAG框架以及优化、Multi-Agents框架协作、AWEL(智能体工作流编排)等多种技术能力,让围绕数据库构建大模型应用更简单、更方便。
项目地址:https://github.com/eosphoros-ai/DB-GPT?tab=readme-ov-file
【开源免费】VectorVein是一个不需要任何编程基础,任何人都能用的AI工作流编辑工具。你可以将复杂的工作分解成多个步骤,并通过VectorVein固定并让AI依次完成。VectorVein是字节coze的平替产品。
项目地址:https://github.com/AndersonBY/vector-vein?tab=readme-ov-file
在线使用:https://vectorvein.ai/(付费)
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【开源免费】ScrapeGraphAI是一个爬虫Python库,它利用大型语言模型和直接图逻辑来增强爬虫能力,让原来复杂繁琐的规则定义被AI取代,让爬虫可以更智能地理解和解析网页内容,减少了对复杂规则的依赖。
项目地址:https://github.com/ScrapeGraphAI/Scrapegraph-ai
【开源免费】FASTGPT是基于LLM的知识库开源项目,提供开箱即用的数据处理、模型调用等能力。整体功能和“Dify”“RAGFlow”项目类似。很多接入微信,飞书的AI项目都基于该项目二次开发。
项目地址:https://github.com/labring/FastGPT
【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。
项目地址:https://github.com/microsoft/graphrag
【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。
项目地址:https://github.com/langgenius/dify
【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。
项目地址:https://github.com/infiniflow/ragflow/tree/main
【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目
项目地址:https://github.com/phidatahq/phidata
【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。
项目地址:https://github.com/TaskingAI/TaskingAI
【开源免费】MindSearch是一个模仿人类思考方式的AI搜索引擎框架,其性能可与 Perplexity和ChatGPT-Web相媲美。
项目地址:https://github.com/InternLM/MindSearch
在线使用:https://mindsearch.openxlab.org.cn/
【开源免费】Morphic是一个由AI驱动的搜索引擎。该项目开源免费,搜索结果包含文本,图片,视频等各种AI搜索所需要的必备功能。相对于其他开源AI搜索项目,测试搜索结果最好。
项目地址:https://github.com/miurla/morphic/tree/main
在线使用:https://www.morphic.sh/
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0