← 返回博客
跳至主要内容

什么是 Agentic 工作流?模式、用例、示例等

·21 分钟阅读
Mary Newhauser
Prajjwal Yadav
Leonie Monigatti
Tuana Çelik

What Are Agentic Workflows? Patterns, Use Cases, Examples, and More

人工智能代理。代理型人工智能。代理型架构。代理工作流。代理无处不在。但它们到底是什么?它们真的能做任何事情吗?

新技术带来了令人困惑的术语、狂野的期望和自称的在线专家的大杂烩。 在本文中,我们将消除围绕人工智能代理的噪音和炒作,解释和说明人工智能代理的一个关键要素:代理工作流。

代理完全独自行动时,不能做太多事情。需要赋予它们角色、目标和结构才能实现其目标。 这就是工作流发挥作用的地方。

理解代理工作流可以帮助你理解人工智能代理如何以及为何以它们的方式运作。 为了帮助你理解,我们将介绍人工智能代理的关键组成部分,为你提供代理工作流的简洁定义,解释什么使工作流成为代理型,详细阐述代理工作流中的关键重复模式,详细说明现实世界的示例和用例,并对使用代理工作流的优势和挑战进行诚实的概述。

什么是人工智能代理?

人工智能代理是结合了LLM进行推理和决策以及用于与现实世界交互的工具的系统,使它们能够在有限的人工干预下完成复杂的任务。 代理被分配特定的角色,并被赋予不同程度的自主权来完成其最终目标。 它们还配备了记忆,使其能够从过去的经验中学习并随着时间的推移提高其性能。

有关人工智能代理的更深入解释、其历史以及构建它们的工具,请查看我们最近的博客文章,人工智能代理简化:我们在人工智能领域的含义

为了更好地理解人工智能代理如何适应代理工作流,我们将探讨人工智能代理的核心组成部分。

人工智能代理的组成部分

虽然人工智能代理被设计为半自主决策,但它们依赖于更大的组件框架才能正常运行。 该框架由LLM组成,使代理能够有效地进行推理,工具帮助代理完成其任务,以及记忆,使代理能够从过去的经验中学习并随着时间的推移改进响应。

components-of-ai-agents.jpg

推理

使人工智能代理如此有效的部分是它们进行迭代推理的能力,本质上允许代理在整个问题解决过程中主动“思考”。 人工智能代理的推理能力源于其底层的LLM,并服务于两个主要功能:规划和反思。

规划阶段,代理执行任务分解,即把更复杂的问题分解成更小、可操作的步骤。 这种技术允许代理系统地处理任务,并允许它们对不同的任务使用不同的工具。 它还允许进行查询分解,将复杂的查询分解成更简单的查询,从而提高LLM响应的准确性和可靠性。

代理还通过反思其行动的结果来进行推理。 这使它们能够评估并根据结果和从外部来源提取的数据迭代地调整其行动计划。

工具

LLM 具有静态的参数知识,这意味着它们的理解仅限于训练期间编码的信息。 为了扩展它们超出原始数据集的能力,代理可以利用外部工具,例如网络搜索引擎、API、数据库和计算框架。 这意味着代理可以访问实时外部数据来指导其决策并完成需要它与其他应用程序交互的任务。

工具通常与权限配对,例如查询API、发送消息或访问特定文档或数据库模式的能力。 下表概述了人工智能代理的几个常用工具以及它们执行的任务。

工具任务
互联网搜索检索和总结实时信息。
向量搜索检索和总结外部数据。
代码解释器迭代运行代理生成的代码。
API检索实时信息并使用外部服务和应用程序执行任务。

当LLM选择一个工具来帮助完成任务时,它会进行一种称为函数调用的行为,扩展了其超越简单文本生成的能力,并允许它与现实世界交互。

所选工具的选择可以由最终用户预先确定,也可以留给代理。 让代理动态选择工具可以帮助解决更复杂的任务,但可能会为更简单的工作流程增加不必要的复杂性,在这种情况下,预定义的工具会更有效。

记忆

从过去的经验中学习并记住行动发生的上下文是使代理工作流与纯LLM驱动的工作流区分开来的部分原因。 记忆是使捕获和存储跨多个用户交互和会话的上下文和反馈成为可能的关键组成部分。 代理有两种主要的记忆类型:短期记忆和长期记忆。

短期记忆存储更直接的信息,例如对话历史记录,这有助于代理确定下一步采取哪些步骤来完成其总体目标。 长期记忆存储信息和知识,这些信息和知识是在多个会话中随着时间的推移积累的,从而可以对代理进行个性化设置并随着时间的推移提高其性能。

什么是代理工作流?

一般来说,工作流是一系列连接的步骤,旨在实现特定的任务或目标。 最简单类型的工作流是确定性的,这意味着它们遵循预定义的步骤序列,并且无法适应新的信息或不断变化的情况。 例如,自动费用审批工作流可能如下所示:“如果费用标记为‘餐饮’且低于30美元,则自动批准。”

然而,有些工作流利用LLM或其他机器学习模型或技术。 这些通常被称为人工智能工作流,可以是代理型的或非代理型的。 在非代理型工作流中,LLM会收到指令提示,并生成输出。 例如,文本摘要工作流会将较长的文本段落作为其输入,提示LLM对其进行总结,并简单地返回摘要。 但是,仅仅因为工作流使用LLM,并不一定意味着它是代理型的。

代理工作流是由代理动态执行的一系列连接的步骤,或一系列代理,以实现特定的任务或目标。 代理由其用户授予权限,这赋予它们有限的自主权来收集数据、执行任务和做出在现实世界中执行的决策。 代理工作流还利用人工智能代理的核心组成部分,包括它们进行推理的能力、使用工具与其环境交互的能力以及持久的记忆,从而完全改变传统的工作流,使其成为响应式、自适应和自我进化的过程。

types-of-workflows.jpg

是什么使工作流成为代理型的?

当一个或多个代理指导和塑造任务的进展时,人工智能工作流就会变成代理型。 将代理添加到现有的非代理型工作流中可以创建一种混合方法,将结构化工作流的可靠性和可预测性与LLM的智能和适应性相结合。 代理工作流的定义特征是它们能够

  • 制定计划。 代理工作流从规划开始。 LLM用于通过任务分解将复杂任务分解为更小的子任务,然后确定最佳执行路线。
  • 使用工具执行操作。 代理工作流使用一组预定义的工具和权限来完成任务并执行其生成的计划。
  • 反思和迭代。 代理可以在每个步骤评估结果,如果需要调整计划,然后循环返回,直到结果令人满意为止。

正如你所看到的,我们需要区分三种类型的工作流:传统的非人工智能工作流、非代理型人工智能工作流和代理型工作流。 传统基于规则的工作流与人工智能工作流之间的区别在于使用预定义的步骤与使用人工智能模型来完成任务。 其次,非代理型和代理型人工智能工作流之间的区别在于使用静态人工智能模型与动态人工智能代理。 这使得代理工作流比非代理工作流更具适应性和动态性。

代理架构和工作流之间的区别

随着任何新兴技术的发展,都会涌现出大量新的术语。 虽然有些人可能会互换使用“代理架构”和“代理工作流”这两个术语,但它们实际上具有重要的区别。

一种自主式工作流,是指代理为了实现特定目标而采取的一系列步骤。这些步骤可能包括使用LLM来制定计划、将任务分解为子任务、使用互联网搜索等工具来完成任务,以及使用LLM来反思任务的结果并调整整体计划。

另一方面,一种自主式架构是用于实现给定任务的技术框架和整体系统设计。自主式架构多种多样且富有创意,但始终包含至少一个具有决策和推理能力的代理、代理可以用来实现其目标的工具,以及用于短期和长期记忆的系统。

注意

探索最强大的自主式架构,以视觉方式呈现,以便立即理解。下载免费电子书 这里

自主式工作流中的模式

回想一下,自主式工作流是完成特定任务(也称为最终目标)所采取的结构化步骤序列。因此,当我们谈论自主式工作流时,我们谈论的是使代理能够实现其最终目标的特定行为模式。正如我们之前提到的,AI 代理的核心组件在自主式工作流模式中起着关键作用。代理进行推理的能力促进了规划和反思模式,而它们使用工具与其环境交互的能力则构成了工具使用模式的基础。

规划模式

规划设计模式允许代理自主地将更复杂的任务分解为一系列更小、更简单的任务,这个过程被称为任务分解。任务分解能够带来更好的结果,因为它降低了LLM的认知负荷,提高了推理能力,并最大限度地减少了幻觉和其他不准确之处。

当实现最终目标的方法不明确且问题解决过程中的适应性至关重要时,规划尤其有效。例如,如果一个AI代理被指示修复一个软件错误,它可能会使用规划模式将任务分解为子任务,例如阅读错误报告、识别相关的代码部分、生成潜在原因列表,最后选择特定的调试策略。如果第一次修复错误的尝试失败,代理可以读取执行后的错误消息并调整其策略。

虽然规划可以帮助代理更好地处理更复杂的任务,但它也可能导致比更确定性的工作流更不可预测的结果。因此,最好只将规划模式用于需要深入问题解决和多跳推理的任务。

planning-pattern.jpg

工具使用模式

生成式LLM的一个重要限制是它们依赖于预先存在的训练数据,这意味着它们无法检索实时信息或验证超出其先前学习范围的事实。因此,它们可能会生成不真实的响应或在不知道答案时“猜测”。检索增强生成 (RAG) 通过向LLM提供相关的、实时的外部数据来帮助减轻这种限制,从而实现更准确和更具上下文关联的响应。

然而,工具使用超越了朴素的RAG,它允许LLM动态地与真实世界交互,而不仅仅是从中检索数据。在自主式工作流中,工具使用模式通过允许代理与外部资源和应用程序、实时数据或其他计算资源交互来扩展代理的能力。

常见的工具包括API、信息检索(例如向量搜索)、网络浏览器、机器学习模型和代码解释器。这些工具用于执行特定任务,例如搜索网络、从外部数据库检索数据或读取或发送电子邮件,从而帮助代理实现其目标。

tool-use-pattern.jpg

反思模式

反思是一种强大的自主式设计模式,它相对容易实现,并且可以显著提高自主式工作流的改进。反思模式是一种自我反馈机制,代理在最终确定响应或采取进一步行动之前,会迭代地评估其输出或决策的质量。这些批评然后用于完善代理的方法、纠正错误并改进未来的响应或决策。

当代理不太可能在第一次尝试中成功完成其目标时,反思尤其有用,例如编写代码。在这种情况下,代理可以生成一个代码片段,在沙盒或执行环境中运行它,并迭代地将错误反馈到LLM中,并指示其完善代码,直到它成功执行为止。

反思的力量在于代理批判性地评估其自身输出并动态地将这些见解整合到工作流中的能力,从而实现持续改进,而无需直接的人工反馈。这些反思可以编码在代理的记忆中,从而在当前用户会话期间实现更高效的问题解决,并通过适应用户偏好来个性化并改进未来的交互。

reflection-pattern.jpg

自主式工作流用例

原子设计模式,例如规划和工具使用,可以以创造性的方式组合起来,有效地利用自主式AI来完成跨不同领域的各种任务。除了组合设计模式外,还可以向AI代理提供不同的工具组合,甚至授予它们根据需要动态选择工具的权限。它们还可以与人类反馈循环集成,并赋予不同的自主性和决策权级别。

这些多样化的配置允许自主式工作流针对跨行业的各种任务进行定制。为了证明这一点,我们概述了两个特别强大的用例:自主式RAG和自主式研究助手。

自主式RAG

检索增强生成 (RAG) 是一种通过从外部数据源检索相关数据来增强LLM知识的框架。自主式RAG 将一个或多个代理合并到RAG管道中。

在规划阶段,代理可以将复杂的查询分解为较小的子查询,或者确定是否需要向用户询问更多信息以完成请求。

AI代理还可以用于评估检索到的数据和响应的相关性和准确性,然后再将其传递给用户。如果响应不令人满意,代理可以重新制定查询、重新访问查询分解步骤,甚至为响应查询创建一个新计划。

agentic-search-workflow.jpg

注意

像这样的自主式工作流可以使用不同的自主式架构来构建。如果您对上述工作流的潜在架构感到好奇,请下载我们的 免费电子书,了解自主式架构!

自主式研究助手

自主式研究助手,也被一些AI公司称为“深度研究”,通过搜索网络和各种外部数据来生成关于复杂主题的深入报告和详细见解。它们利用自主式RAG来响应用户查询从网络和其他外部来源检索信息。然而,这些助手与传统的RAG的区别在于它们能够综合和分析信息,而不仅仅是从外部来源检索相关数据来增强LLM生成的输出。

这种独特的能力归功于一些特性。首先,自主式研究助手通常使用专门针对网络浏览、任务分解和动态规划进行微调的LLM。其次,这些工作流中的代理会主动寻求用户指导,请求更多信息或澄清以更好地理解最终目标。第三,这些代理能够根据它们检索到的信息调整其计划并改变方向。这意味着当综合新的信息时,它们可以追求新的、有趣的角度,并连续查询多个数据源,直到获得必要的数据。

因此,自主式研究助手能够获得更深入的见解、识别随时间变化的趋势,并编译关于主题的完整报告,而不仅仅是检索现有知识。截至撰写本文时,OpenAIPerplexityGoogle 都公开提供了各自版本的深度研究。

自主式编码助手

自主式编码助手可以在最少的人工干预下生成、重构、完善和调试代码。非自主式编码助手,例如GitHub Copilot的第一个版本,由针对生成代码进行微调的生成式LLM提供支持,但仅限于执行此操作——生成代码。

是什么让编码助手具有代理性?是它通过执行生成的代码与环境交互,并根据执行结果、错误或反馈进行迭代细化的能力。这些助手还可以被赋予权限,通过创建提交和 PR 来更改现有的代码库,例如 Anthropic 的 Claude Code,这是自动化软件开发过程中的重要一步。具有代理性的编码助手还可以用来建议终端命令和其他代码更改和补充,并在执行前等待明确的人工批准,例如 Cursor 的 Agent,从而让人类可以完全控制代理。此外,重要的是,具有代理性的编码助手可以通过将错误编码到长期记忆中来从错误中学习,使其能够随着时间的推移变得更加智能。

代理性工作流示例

既然我们已经概述了一些代理性工作流的用例,我们将更详细地研究两个真实代理的工作流的各个步骤:ClaygentServiceNow AI Agents。每个工作流都使用其自身独特的模式和工具组合,赋予其代理不同的自主性和决策能力,并依赖于不同程度的人工反馈和参与。

Claygent (Clay)

潜在客户研究和数据丰富可能对于增长和销售团队来说是一项繁琐的任务。Clay 是一家数据丰富和外联自动化公司,通过 Claygent——一个由人工智能驱动的研究代理,它可以持续扫描网络和内部数据库,以提供实时、可操作的见解,从而简化此过程。

假设您想使用 Claygent 根据姓名和电子邮件地址列表丰富 LinkedIn 个人资料,然后发送个性化的介绍消息。首先,您指定您正在寻找的数据字段(例如工作经验、教育程度、技能),这些字段将被注入到预配置的提示模板中。代理的 LLM 处理查询,使用网络抓取工具在网络上搜索 LinkedIn URL,并从 LinkedIn 个人资料中提取所需的数据。然后,可以将此数据发送到另一个 LLM,您可以指示它以您想要的方式总结或分析丰富的数据。相同的 LLM(或不同的 LLM)然后可以用来为每个个人资料创建个性化的外联消息。

Claygent 是一个相对灵活的代理性工作流示例,可以通过预配置的提示模板为特定任务提供指导,同时也可以进行创造性的自定义。

ServiceNow AI Agents

ServiceNow 是一个基于云的平台,可简化和自动化 IT、运营、人力资源和客户服务的各个领域的工作流程。他们的 ServiceNow 平台现在包括对 AI 代理的访问,旨在自动化重复性任务和预先存在的工作流程,同时仍然让人类完全控制决策。

以下是一个代理性工作流如何帮助解决技术支持案例的示例。当客户提交技术支持工单时,工作流被触发。工单中的信息然后传递给一个或多个代理,这些代理对内部 IT 支持知识库执行 RAG。代理总结发现,分析类似案例,并为 IT 支持专家生成摘要。最后,它生成一个关于如何处理的建议,专家可以批准或拒绝。

ServiceNow AI Agents 代表了一种创新但更谨慎的方法,用于在生产环境中部署代理,赋予它们严格的角色和任务,并且几乎没有自主权来做出影响最终用户或客户的决策。

注意

想构建您自己的代理性工作流吗?请查看 使用 Inngest 构建代理性工作流,在那里我们展示了如何创建一个代理性晚餐计划器。

代理性工作流的优势和局限性

人工智能代理已经迅速从机器学习社区发展到主流。鉴于围绕代理性人工智能的所有兴奋、期待和期望,很难将炒作与现实区分开来,并了解其真正的能力和局限性。在本节中,我们为您提供代理性工作流的优势、挑战和局限性的平衡观点。

代理性工作流的优势

代理性工作流超越了传统的自动化,使人工智能代理能够计划、适应和随着时间的推移而改进。与遵循固定规则的确定性工作流不同,代理性工作流可以动态响应复杂性,通过反馈完善其方法,并扩展以处理更高级的任务。这种适应性使其在需要灵活性、学习和决策能力的情况下特别有价值。

让我们更详细地了解代理性工作流的优势

  • 灵活性、适应性和可定制性。 静态的确定性工作流难以适应不断变化的情况和意外的困难。另一方面,代理性工作流提供了根据任务难度进行调整和演化的灵活性,确保它们始终保持相关性并提供最佳解决方案。它们还可以通过组合不同的模式进行自定义,从而实现模块化设计,允许随着需求和复杂性的增长进行迭代升级。
  • 在复杂任务上的改进性能。 通过将复杂任务分解为更小的可管理步骤(通过任务分解和规划),代理性工作流明显优于确定性、零样本方法。
  • 自我纠正和持续学习。 反思模式允许代理性工作流评估自己的行动,完善策略,并随着时间的推移改进结果。利用短期和长期记忆,它们从过去的经验中学习,每次迭代都变得更加有效和个性化。
  • 运营效率和可扩展性。 代理性工作流可以以高精度自动化重复性任务(如果构建正确),从而减少特定场景下的手动工作和运营成本。它们还可以轻松扩展,使其成为处理更大的工作负载或复杂系统的理想选择。

请记住,人工智能代理仍然是一项新兴技术,并且随着研究人员和用户发现将代理融入工作流的新方法,此优势列表可能会扩展。

代理性工作流的挑战和局限性

尽管具有优势和创新功能,人工智能代理也伴随着许多挑战和局限性。由于其概率性质,人工智能代理本质上会增加工作流程的复杂性。而且,仅仅因为代理可以用于自动化流程,并不意味着应该使用它们。以下是一些代理性工作流最值得注意的挑战和局限性

  • 对于简单任务而言,不必要的复杂性。 当用于简单的工作流程(例如表单输入或基本数据提取)时,人工智能代理会增加开销。在确定性、基于规则的自动化足以满足需求的情况下,引入代理可能会导致效率低下、额外费用和可能降低性能。
  • 由于自主性增加而导致的可靠性降低。 随着代理在工作流程中获得更多的决策权,其概率性质会引入不可预测性,使输出不太可靠且难以控制。实施和积极维护代理的护栏以及持续审查其授予的权限至关重要。
  • 伦理和实际考虑因素。 并非所有决策都应该委托给人工智能系统。在高度敏感或敏感领域使用代理需要仔细监督,以确保负责任的部署并防止意外后果。

鉴于这些局限性,我们建议花时间反思在给定工作流程中使用代理是否真的必要。一些可以帮助您确定此问题的问题包括

  • 任务是否足够复杂,需要自适应决策,或者确定性方法是否足够?
  • 更简单的 AI 辅助工具(例如,没有代理的 RAG)是否可以实现相同的结果?
  • 工作流程是否涉及不确定性、不断变化的情况或多步骤推理,代理可以更有效地处理这些情况?
  • 赋予代理自主权相关的风险是什么,可以减轻这些风险吗?

总结

代理性工作流是帮助自动化需要决策和推理的复杂任务完成的强大工具。在本文中,我们回顾了人工智能代理的核心组件,包括记忆、工具和推理能力,以及它们如何为代理性工作流做出贡献。我们还讨论了常见的流程模式,例如规划、工具使用和反思,这些模式可以单独或组合使用以创建动态流程。此外,我们概述了两个特别有效的用例,代理性 RAG 和代理性研究代理,并描述了已经上市的两个代理的工作流程,即 Clay 的 Claygent 和 ServiceNow 的 AI Agents。最后,我们讨论了代理性工作流的优势以及它们的局限性和挑战。

人工智能代理背后的技术不断发展,我们对它们的理解也在不断发展。本文旨在为您提供关于人工智能代理在工作流程中如何运作的基本理解,但绝不是对该主题的详尽探讨。

要更详细地了解和解释特定的代理性架构,请下载我们的免费 电子书

Alt Text

资源指南

📃 基于大型语言模型代理的记忆机制调查 (arXiv 论文)

📃 代理设计模式目录:基于基础模型代理的架构模式集合 (arXiv 论文)

🎬 使用 RAG 的高级人工智能代理 (YouTube)

📝 什么是代理性 RAG

📝 代理设计模式第二部分,反思 (博客文章)

准备开始构建了吗?

请查看 快速入门教程,或使用 Weaviate Cloud (WCD) 的免费试用版构建令人惊叹的应用程序。

不想错过另一篇博文?

注册我们的双周时事通讯以保持更新!


提交后,我同意 服务条款 隐私政策.