LLM实现RPA

“PROAGENT: 从机器人流程自动化到代理流程自动化”
这篇论文有几个创新点是比较有意思的:
1.通过描述方式生成执行链,执行链通过代码方式生成保证执行链的稳健、可约束
2.对执行过程抽取出数据结构,数据结构也通过代码生成方式来约束
3.整个过程其实是让agent带上来RPA建模的约束让agent可控,但同时又充分的利用LLM能力让模型在约束框架内工作,减少人力投入
RPA部分抽象其实我在前面一篇文章有介绍,抽象出了BOM、SOP、柔性链3个概念;并用金融营销文案生成为例子,具体描述了实际问题如何用这一套思路框架来解决。当然这还只是在业务层面对问题建模抽象,在后面的一篇文章也有介绍如何通过langchain的keypoint来构建一个软件层面的框架实现软件层面架构。当然这个例子只是抽取了BOM、SOP框架和用LLM在里面单点解决一些问题点(比如RAG检索、知识图谱构建、信息整合生成文案、文案排序…);“PROAGENT: 从机器人流程自动化到代理流程自动化”做的更透彻大胆的尝试,直接让LLM生成执行链路SOP、并且直接让LLM模型整合BOM结构。并且给出来描述到代码生成,给出了agent生成不太稳定一个解决方案。
营销文案流水线化生产——agent llm
langchain知识点(上)
Langchain知识点(下)

当然现在这个思维框架也并非完全没有问题,但是这个解决框架是很有意思和可扩展性很高的。现在一个问题在于如何保证LLM生成链路是符合业务建模的,虽然抽取出了一个控制变量让业务同学可以参与进来控制生成RPA链路更符合业务需求,但是这个控制量还是不够精准和有效的。还有一个问题就是如何让BOM可以较好的让LLM直接生成符合真实世界的需求,现在虽然也可以通过LLM预训练+promt方式加以控制,但是这个精准度可控度也还是不够的。

摘要:

  • 自动化技术的发展:从古代的水车到机器人流程自动化(RPA),自动化技术在历史上不断进化,解放人类从繁重的任务中。然而,RPA在需要人类智能的任务上面临困难,尤其是在复杂的工作流构建和工作流执行中的动态决策。随着大型语言模型(LLM)展现出人类智能,本文介绍了一种使用基于LLM的代理进行高级自动化的创新自动化范式,称为代理流程自动化(APA),通过将构建和执行的人力工作转移给代理。
  • 代理模型的例子:本文提出了一个基于LLM的代理,名为PROAGENT,它可以根据人类的指令制定工作流,并通过协调专门的代理来进行复杂的决策。实证实验展示了它的工作流构建和执行过程,证明了APA的可行性,揭示了一种由代理驱动的自动化新范式的可能性。
  • 代码和数据公开:我们的代码和数据公开在 https://github.com/OpenBMB/ProAgent.

image.png** 图1**:机器人流程自动化和代理流程自动化的比较。

1 引言:

自动化,旨在减少人工干预和提高效率,历史上经历了一系列的演化阶段。从早期农业时代的水车灌溉系统到工业时代的蒸汽机,人类一直在不断地追求将人力劳动转移给自主系统,从而解放自己。进入信息时代,以数字技术为基础的经济快速取代传统工业,软件被广泛使用,因为它是信息处理、存储和通信的基础。机器人流程自动化(RPA)(Ivancˇic ́ et al., 2019; Wewerka & Reichert, 2020; Agostinelli et al., 2020; Fer- reira et al., 2020)是目前主流的自动化技术,它通过将几个软件按照人工制定的规则编排成一个固定的工作流,实现高效的执行(Zapier; n8n; unipath)。尽管如此,机器人流程自动化仅仅是替代了简单和机械的人力劳动,而需要人类智能的流程仍然需要人力劳动。首先,如图1所示,虽然RPA工作流可以自动执行流程,但它们的构建仍然需要人类智能进行精心设计。其次,许多人类执行的任务以其灵活和复杂的特性为特征,而工作流则局限于机械地复制人类行为过程,这给自动化那些需要在执行过程中进行动态决策的复杂流程带来了挑战。<br />随着大型语言模型(LLM)(OpenAI, 2022; 2023)的快速发展,LLM展现出了以前只有人类才具有的智能(Wei et al., 2022)。最近,基于LLM的代理引起了研究界的广泛关注(Xi et al., 2023; Wang et al., 2023b; Yao et al., 2022b; Shinn et al., 2023; Sumers et al., 2023; Qin et al., 2023c; Ye et al., 2023)。基于LLM的代理展示了一定程度的人类智能,能够像人类一样使用工具(Schick et al., 2023; Qin et al., 2023b;c)、创建工具(Qian et al., 2023b; Cai et al., 2023)、玩游戏(Wang et al., 2023a; Chen et al., 2023)、浏览网站(Nakano et al., 2021; Qin et al., 2023a; Yao et al., 2022a)、开发软件(Qian et al., 2023a)。因此,一个有意义的问题自然产生了:基于LLM的代理能否在需要人类智能的流程中推进自动化,进一步解放人类?<br />在本文中,我们提出了代理流程自动化(APA),一种新的流程自动化范式,它克服了自动化的两个前述局限性。(**1)代理工作流构建:在收到人类的需求或指令后,基于LLM的代理代替人类精心构建相应的工作流。如果一个流程涉及动态决策,代理应该识别出这个流程中哪些部分需要动态决策,然后将代理编排到工作流中。(2)代理工作流执行:工作流应该由代理监控,一旦工作流在动态部分执行,代理就会介入处理动态决策。**<br />![image.png](https://intranetproxy.alipay.com/skylark/lark/0/2023/png/284872/1699930248339-1c0136a4-b2f0-4ccd-9563-c956e96bfad4.png#clientId=ua2cb32f1-71a1-4&from=paste&height=180&id=u26dac8c6&originHeight=408&originWidth=1760&originalType=binary&ratio=2&rotation=0&showTitle=false&size=84550&status=done&style=none&taskId=u0ce48b47-f5a7-44c3-b3b0-1e5c20e1ce1&title=&width=777)<br />                             表1:根据效率和灵活性的标准,对机器人过程自动化和主体过程自动化进行的比较<br />为了探索APA的可行性,我们实例化了PROAGENT,一个基于LLM的代理,它在一个统一的框架中**集成了代理工作流构建和代理工作流执行**。对于代理工作流构建,为了使基于LLM的代理理解和生成工作流,我们设计了基于JSON结构和Python代码的代理工作流描述语言,这源于LLM是在编码语料库上进行预训练的。具体来说,它采用JSON结构来组织每个软件的输入和输出数据以实现数据标准化,并使用Python代码来实现流程控制逻辑以编排软件(见图2)。在接收到特定任务后,PROAGENT能够生成相应的工作流语言,以便于构建所需的工作流。对于代理工作流执行,工作流中的动态决策包括两个方面:<br />1)数据流:复杂的数据处理(例如,编写数据分析报告)通常超出了基于规则的系统的能力,因此代理必须介入以有效地管理这些复杂的流程。 <br />2)控制流:复杂的任务可能涉及复杂的条件分支和循环,这超出了规则的表达能力。在这种情况下,代理需要作为控制器来动态地确定后续的行动。因此,我们设计了两种类型的动态决策代理:<br />DataAgent作为数据处理来动态地处理复杂的数据流程,<br />ControlAgent作为条件表达式,使得可以动态地确定后续的执行分支。<br />面对需要智能的复杂任务,PROAGENT可以在构建过程中将这两个代理编排到工作流中,并在执行过程中有目的地处理复杂的情况,从而减轻智能劳动(见表1)。<br />为了实证验证我们的方法,我们进行了概念验证实验,展示了PROAGENT能够根据人类的指示构建工作流,并通过在工作流中使用代理来处理流程的动态决策部分。我们进一步讨论了PROAGENT与现有研究领域的关系,包括工具学习(Qin et al., 2023b;c),流程挖掘(Tiwari et al., 2008; Van Der Aalst, 2012; Turner et al., 2012),安全性(Cummings, 2004)等。我们的贡献如下: <br />• 我们提出了代理流程自动化,一种新的流程自动化范式,集成了基于LLM的代理,进一步减轻了人类的智能劳动。 <br />• 我们实例化了PROAGENT,其中设计了代理工作流描述语言,供基于LLM的代理构建工作流,而DataAgent和ControlAgent被编排到工作流中,有目的地处理动态决策过程部分。 <br />• 我们通过概念验证案例分析和探索代理流程自动化在各种研究领域(包括工具学习,流程挖掘,安全性等)的潜力和机会,展示了我们的PROAGENT的可行性。

2 方法论

工作流在RPA中被广泛使用,通过软件调用图来固化流程,其中节点代表软件操作,边表示执行过程的拓扑。为了实现固化,数据流和控制流被涉及到工作流中。数据流描述了如何在一系列软件中传递和处理数据,控制流描述了软件执行的顺序。在本节中,我们首先介绍代理工作流描述语言,以表达数据流和控制流,然后我们详细说明如何将代理集成到工作流中,以便为工作流带来灵活性。最后,我们详细介绍了工作流构建和执行过程,以及PROAGENT的工作方式。
image.png
图2:Agentic工作流描述语言的插图

2.1 代理工作流描述语言

主动工作流描述语言:工作流是一种基于图形的表示方法,用于将RPA固化为过程,但它不适合LLM来理解和生成工作流。因此,我们根据编码预训练的特点,精心设计了主动工作流描述语言,方便LLM-agent固化工作流。具体来说,我们采用JSON结构来描述数据流,采用Python代码来描述控制流。图2给出了主动工作流描述语言的示例。
数据流的JSON结构:为了固化工作流,需要对软件之间的数据格式进行标准化,以确保自动化的数据处理,避免不必要的agent干预。我们采用JSON结构来组织工作流中所有动作的输入/输出数据。如图2所示,输入数据被格式化为一个键值对的字典。每个数据都应该分配一个特定的键,便于解析和操作。在不同软件之间传输数据时,JSON结构方便索引特定的数据字段。只有当所有软件的输入和输出都严格标准化,保持工作流中不同软件的一致性,才能减少数据解释错误或差异的可能性。
控制流的Python代码:对于复杂的任务,相应的工作流通常涉及复杂的控制逻辑,包括条件分支、循环或子工作流执行。传统的RPA方法通常设计基于图形的表示方法,供人类开发者描述控制流(Zapier; n8n; unipath),但其对复杂工作流的表达能力有限,也不适合基于LLM的agent理解和生成。由于Python编程语言支持复杂的控制逻辑,而且更重要的是它在预训练阶段被LLM学习,我们使用Python来描述控制流。作为一种高级编程语言,Python提供了丰富的原语和特性,提供了更强的表达能力来描述复杂的控制逻辑。一个工作流由一个Python文件组成,每个软件操作对应一个Python函数,称为动作。相应的输入/输出数据被映射到函数的参数和返回值中。因此,一系列的动作(即软件)被描述为Python中的顺序函数调用。Python中的if-else语句和for/while语句可以用来实现复杂的逻辑控制流。最后,工作流被封装在一个主Python函数中(即mainWorkflow)。此外,由于Python支持嵌套函数调用,不同的工作流也可以通过调用工作流函数来组合在一起,构建一个复杂的工作流。在工作流执行过程中,我们使用一个Python执行器,从主工作流函数(mainWorkflow)作为入口点开始,依次执行每个函数,最终完成整个工作流的执行。
image.png
图3:使用DataAgent和ControlAgent的代理工作流描述语言的示意图

2.2 集成代理的工作流

集成代理的工作流:由于许多具有灵活性和复杂性特征的实际任务涉及动态决策过程,我们设计了DataAgent和ControlAgent,它们可以被编排到工作流中,以处理执行过程中的动态部分。图3给出了示例。
DataAgent:为了实现复杂的数据处理,我们设计了DataAgent,它作为一个由基于LLM的代理操作的动作。如图3所示,它支持输入一个基于自然语言的任务描述,然后根据代理的智能自主完成这个任务。执行过程中,这个函数会启动一个基于ReACT的代理(Yao et al., 2022b)来完成任务。
output ← DataAgent(task, input) (1)
尽管这个函数实际上是由代理操作的,但它的输入/输出数据仍然由JSON组织,使得它可以被编排到现有的工作流中,与其他动作连接。通过引入DataAgent,工作流提供了对数据流增强的灵活性的支持,使得能够处理复杂的数据处理需求。
ControlAgent:除了作为动作,代理还可以进一步参与到控制流中,来调度执行逻辑。我们将ControlAgent引入到控制流中,使其可以替代选择表达式。如图3所示,ControlAgent包含一个基于自然语言的预生成的判断标准和几个执行分支候选项。
opt ← ControlAgent(task, input, [opt1, opt2, · · · , optn]) (2)
执行过程中,代理可以根据输入数据做出决策,决定接下来执行哪个分支,从而影响工作流的控制流。

2.3 工作流构建:

由于工作流是以JSON结构和Python代码表示的,所以工作流构建被形式化为一个代码生成任务。如图4所示,工作流构建过程包含四个迭代操作:

  • 动作定义:确定将哪个动作添加到工作流中。
  • 动作实现:首先通过确定其在JSON结构中的输入/输出数据格式将动作转化为Python函数,然后在Python代码中实现数据处理程序。
  • 工作流实现:由于工作流被表示为mainWorkflow函数,此操作是为其提供实现,以编排整个工作流。
  • 任务提交:用于表示工作流构建的终止。

在实践中,我们使用OpenAI GPT-4作为PROAGENT的主干,以生成工作流语言,并进一步结合了几种技术来增强工作流生成能力:

  • 构建时测试:在构建过程中,PROAGENT倾向于测试每个函数或整个工作流,这确保了在执行前对构建的工作流进行验证。
  • 函数调用:上述四个操作被定义为GPT-4中的函数,以使用函数调用来明确控制整个构建过程,有利于可控制的生成。
  • 思维链:在实现每个函数时,PROAGENT需要提供一个注释(解释这个函数的目的)和一个计划(指示接下来应该做什么操作),这有助于提高工作流代码生成的性能。

2.4 工作流执行:

工作流执行过程基于Python解释器。给定一个工作流语言,一旦这个工作流被触发,其对应的mainWorkflow函数被选为入口点开始执行过程。执行过程遵循Python代码执行规则,即按行顺序顺序执行。一旦mainWorkflow函数返回,工作流执行就成功完成。
image.png
图4:PROAGENT工作流构建过程的示意图。

3 概念验证实验:

为了验证代理流程自动化的可行性,我们基于n8n进行了概念验证实验,n8n是一个开源的工作流平台。n8n平台中的每个APP(即软件)在工作流中被封装为一个动作,因此工作流构建的核心是将这些APP编排起来完成某些任务。我们基于GPT-4实现了我们提出的PROAGENT。我们构建了一个关于商业场景的案例,详细解释了我们的PROAGENT是如何工作的。

3.1 任务构建

:::success
任务:
当我通过网络发送一份业务线工作表时,根据每个业务线所属的类型进行处理。

  1. 对客户:向Slack发送消息,报告业务线的利润。
  2. 对业务:编写一份报告,对数据进行分析并给出一些建议,然后将其发送到相应经理的Gmail。
    :::
    我们展示了一个典型的商业场景,其中一个业务部门经理希望从Google Sheets中提取各种业务线数据。在识别业务线是To-Customer时,会向Slack频道发送一条消息。如果业务线是To-Business,会向相应的经理发送一封电子邮件,包括对业务线的评估和对其盈利能力的简洁概述。这展示了通过集成工作流和代理可以实现的功能:
  • 鉴于Google Sheets中内容的格式相似,这个任务具有很高的可重用性,适用于具有类似需求的各种业务部门。
  • 仅根据其描述来区分业务线是To-Customer还是To-Business是一项复杂的任务,不容易通过基于规则的判断来处理。代理集成对于动态分支至关重要。

3.2 工作流构建

图5给出了PROAGENT构建的工作流的可视化。PROAGENT为这个案例构建了一个包含七个节点的工作流,包括一个DataAgent节点和一个ControlAgent节点。
image.png
图5:PROAGENT用于案例分析的工作流构建过程的示意图。
当用户表示将通过Web发送数据时,PROAGENT决定定义一个名为WebhookTrigger的动作作为工作流的触发器。然后,根据用户的描述,它实现了GoogleSheetRead动作来从Google Sheets读取数据。由于根据业务线属于To-Business还是To-Customer,它应执行不同的动作,需要理解每个业务线的含义,PROAGENT定义了一个ControlAgent,其目标是判断业务线是toC还是toB,以决定下一步执行什么动作。
如果业务线属于To-Customer,根据用户描述,PROAGENT实现了Slack动作,该动作将相应的利润发送到Slack。如果业务线属于To-Business,它需要撰写详细的报告,分析Google Sheets中的具体数据并提出建议。因此,PROAGENT实现了一个DataAgent WriteEmail,其任务是编写一封电子邮件,包括有关利润的业务线以及您的建议。然后,实现了一个Gmail应用程序,用于将生成的电子邮件发送给相应的经理。由于Google Sheets中可能存在多个To-Business数据,PROAGENT进一步在工作流中添加了一个循环来迭代处理这些数据。
最后,当工作流完全构建时,PROAGENT通过数据迭代操作任务提交,以结束构建过程。
image.png
图6:PROAGENT用于案例分析的工作流执行过程的示意图。

3.3 工作流执行

图6展示了构建的工作流的两种执行情况。这两种情况分别演示了To-Customer和To-Business两条业务线。显然,ControlAgent成功区分了这两种业务线的类型。对于第一种情况,该业务线的描述是:
:::success
“企业资源规划:组织用来管理日常业务活动,如会计、采购、项目管理、风险管理和供应链运营。”
:::
ControlAgent区分出这个业务线是企业资源规划系统,这是一个典型的面向业务的服务。之后,执行DataAgent来写一封要发送的邮件。
:::success
“我希望你一切都好。我想向你更新我们的ERP产品线的表现。反馈一直非常积极,尤其是从将其整合到日常运营中的大型公司那里。值得注意的是,ERP系统仅在本月就产生了50,000美元的收入。”
:::
对于第二个,它的描述是:
:::success
“电子商务市场:运营一个在线平台,消费者可以从各种品牌和卖家那里购买各种产品。”
:::
PROAGENT提取了一些关键词,如“产品”和“购买”,来决定这个业务线属于To-Customer类型。然后,发送一条简单的消息“业务线9的利润是-3500美元。”到Slack。

4 讨论

在本节中,我们讨论了APA和PROAGENT技术与工具学习、流程挖掘等领域的关系,以及潜在的研究方向。随后,我们讨论了可能由APA技术引起的自动化偏见问题,并深入探讨了人类在自动化时代应该带来的独特价值。

4.1 PROAGENT作为ToolAgent:

集成工具使用和工具创建 现有的工作已经表明,基于LLM的代理具有强大的使用外部工具的能力(例如,搜索引擎、网络浏览器、计算器、Python解释器等)(Ivancˇicetal.,2019;Wewerka&Reeiiccheerrtt,2020;;Agosttiinellliietal.,2020;Ferreiraetal.,2020)。通过集成外部工具,代理可以从文本生成扩展到操作工具来影响环境,甚至是真实世界。除了他们在使用现有工具方面的熟练程度,最近的研究还展示了他们创建新工具以完成特定任务的能力(Qian et al., 2023b; Cai et all…, 22002233))。在工作流管理的上下文中,通过调用外部工具执行一系列操作的执行过程可以被视为工具使用的过程。通过将多个操作(即工具)编排成一个连贯的工作流来解决特定的任务可以被视为工具创建的过程,即将多个工具组合成一个新的工具。在这个上下文中,PROAGENT可以被理解为一个自动的过程,它无缝地集成了工具创建和使用。

4.2 过程挖掘:发现、分析和改进工作流程

在我们的PROAGENT中,工作流构建过程主要由代理独自驱动,可能导致次优的工作流程。将过程挖掘(PM)(Tiwari等,2008;Van Der Aalst,2012;Turner等,2012)的原则融入到这一框架中可以促进从历史记录中发现有价值的工作流程。过程挖掘是一种数据驱动的技术,用于发现、分析和改进现有工作流程。它涉及从执行各种工作流程过程中生成的历史记录中提取见解和知识。该方法使得能够全面了解由代理构建的工作流程,识别低效、瓶颈和与预期工作流程的偏差,并随后优化其操作以提高性能和效率。此外,优化后的工作流程可以作为有效的培训数据,以增强代理的工作流构建能力。

4.3 道德和安全问题:代理加剧自动化偏见

代理技术的出现为模型处理复杂任务提供了潜力。然而,在另一方面,它也可能导致人类过度依赖代理。即使代理的决策与个人观点相冲突,人们可能选择信任代理的决策,这被称为自动化偏见(Cummings,2004),并在诸如临床决策支持系统(Goddard等,2012)的领域观察到。在基于LLM的代理技术下,这个问题变得更为突出。人们可能会将他们对传统基于规则的工作流程稳定性的信任转移到代理上,错误地认为代理的决策过程同样可靠,尤其是幻觉(Maynez等,2020;Zhang等,2023;Ji等,2023)。未来的研究需要优先考虑开发更安全、更值得信赖、更可解释的代理过程自动化。

4.4 人类优势:重新思考人类劳动的意义

APA引入了在工作流构建中的精心设计和在工作流执行中的动态决策制定的智能,将其纳入过程自动化中,可以减轻RPA中的繁重人力劳动。现在,更为关键的问题是:“哪些任务应该由人类驱动?”存在一些过程本质上受益于人类直觉、经验和创造力。对于这些任务,人类发挥了不可轻易被机器替代的关键作用。尽管自动化可能提高效率,但无法复制人类为问题提供的微妙理解和创新解决方案。人类介入可以改善结果的悖论与前面提到的自动化偏见的缺陷形成对比。
APA的下一个前沿涉及辨别哪些过程可以完全自动化,哪些需要人类监督或介入。我们必须记住自动化的最终目标是增强生产力,而不是完全取代人类。挑战在于促进人与机器之间的共生关系,在这种关系中,不会完全排斥对方。借鉴史蒂夫·乔布斯的观点,未来应该看到人类专注于他们擅长的领域:在最重要的地方应用他们独特的智慧和创造力。APA需要重新调整,使自动化为人类服务,而人类反过来提升自动化的能力。

5 相关工作

Robotic Process Automation(RPA)(Ivancˇic ́等,2019;Hofmann等,2020;Tiwari等,2008;Scheer等,2004),作为时尚自动化范 paradigm,主要利用软件机器人自动化访问软件API或模拟用户GUI交互以通过多个软件完成任务。与传统的自动化技术不同,RPA模拟人类使用软件的方式,直接利用现有的软件资产,无需进行转换或额外的投资。因此,RPA近年来作为一种有效的技术,用于自动化由人类工作者执行的重复和基于规则的任务(Zapier;n8n;unipath)。RPA主要旨在使用预定义的规则和工作流模板自动化重复的任务,需要大量人力来设计和实施工作流程。然而,由于工作流程由手工制定的规则驱动,它在处理需要动态决策的复杂任务方面存在困难。
最近,越来越多的人对将RPA与AI技术整合感兴趣,导致了各种术语和定义。例如,智能过程自动化(IPA)(Ferreira等,2020;Chakraborti等,2020b)和认知自动化(或RPA 4.0)(Lacity&Willcocks,2018)旨在在RPA的各个阶段融合AI技术,例如数据格式转换(Leno等,2020),工作流程优化(Chakraborti等,2020a),对话助手(Moiseeva等,2020),演示到过程转换(Li等,2019),等等。然而,这些工作仍然利用传统的深度学习技术(例如,RNN(Han等,2020))甚至机器学习技术(例如,蒙特卡罗树搜索(Chen,2020))融入RPA。更重要的是,它们仅将AI技术应用于RPA的某些特定片段(例如,数据格式转换(Leno等,2020))。相比之下,我们的工作AGENTIC PROCESS AUTOMATION在自动产生工作流和由代理驱动的工作流执行方面引领,将最智能的AI模型,大型语言模型,融入RPA。因此,这是在自动产生工作流和由代理驱动的工作流执行方面的首次尝试,赋予它们智能。
LLM-based Agents 大型语言模型(LLMs)作为人工智能的重要里程碑,在各种任务上展现出卓越的能力(OpenAI,2022;2023)。最近,基于LLMs的代理出现,通过外部工具扩展LLMs以与环境交互,实现现实世界的任务。早期的研究尝试促使LLMs根据对环境的观察生成动作(Nakano等,2021;Huang等,2022;Ahn等,2022;Schick等,2023;Qian等,2023a;Chen等,2023)。这种方式在面对需要长期规划和决策的复杂任务时往往会遇到困难。为了解决这个问题,ReAct(Yao等,2022b)提出了一种动态任务解决方法,使代理生成每个动作的思考,形成推理链,实现灵活的推理引导、可追踪和可调整的动作,相较于仅执行动作的方法有显著改进。基于动态任务解决方式,随后提出了许多代理方法,以改进代理在不同方面的能力,例如反思(Shinn等,2023),规划(Yao等,2023;Hao等,2023;Besta等,2023;Sel等,2023),工具学习(Schick等,2023;Patil等,2023;Qin等,2023b;c;Qian等,2023b),多代理(Park等,2023;Qian等,2023a),等等。然而,所有现有的基于ReACT的代理方法都受限于线性生成决策的方式,导致操作效率较低。在本文中,我们提出了PROAGENT,探索通过识别工作流的哪个部分需要涉及智能,并集成代理有目的地处理这些部分,以增强动态任务解决方法的效率。

6 结论

在这项研究中,我们提出了一种新颖的过程自动化范 paradigm,AGENTIC PROCESS AUTOMATION,通过利用LLM-based代理的能力将它们整合到工作流构建和执行过程中,以解决机器人过程自动化技术在处理需要人类智能的任务方面的限制。通过PROAGENT的实例化,我们演示了LLM-based代理如何合理地管理复杂的决策过程,从而减轻人类智能劳动的负担。我们的概念验证实验证明了AGENTIC PROCESS AUTOMATION在实现过程自动化的效率和灵活性方面的可行性。我们的发现为智能自动化领域的研究做出了贡献,并强调了LLM-based代理在增强各行业效率和灵活性方面可以发挥的重要作用。随着自动化技术的采用继续扩大,我们预计APA框架可以成为自动化领域进一步发展的催化剂,从而提高效率,减少人类干预,最终实现更加简化和智能的工作流生态系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/144058.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

名片识别软件哪个好?

名片扫描软件是一种方便快捷的名片信息录入工具&#xff0c;可以将纸质名片转化为电子版&#xff0c;方便存储、编辑和管理。在市场上&#xff0c;有很多名片扫描软件可供选择&#xff0c;那么哪个好呢&#xff1f;本文将从专业角度出发&#xff0c;为您详细介绍。 首先&#x…

TypeError: Can‘t parse ‘center‘. Sequence item with index 0 has a wrong type

报错代码 import sys sys.path.append(rD:\文档\Temp\WX-FIles\data) # sys.path.append(rD:\文档\Temp\WX-FIles\data)p11 [125, 195] p12 [200, 275] # and the corresponding two points on the second image are:p21 [120, 190] p22 [200, 280] # TODO: write your ow…

集团VPN问题排查及核心交换机(思科C9500)路由编写

前言 昨天发现子公司A无法访问子公司B的服务器。已知之前是可以的。经过tracert及ping的简单排查。发现&#xff0c;A没有经过飞塔200F的防火墙出去。 已知集团使用两套防火墙。思科2110以及飞塔200F。并且在上方都做了VPN的配置。200F承接SD-WAN。 我们知道&#xff0c;当A公…

MySQL 社区开源备份工具 Xtrabackup 详解

文章目录 前言1. Xtrabackup 介绍1.1 物理备份与逻辑备份区别1.2 Xtrabackup 系列版本 2. Xtrabackup 部署2.1 下载安装包2.2 二进制部署2.3 程序文件介绍2.4 备份需要的权限 3. Xtrabackup 使用场景3.1 本地全量备份3.2 本地压缩备份3.3 全量流式备份3.3.1 备份到远程主机3.3.…

Unity Meta Quest 一体机开发(五):手势抓取概述

文章目录 &#x1f4d5;教程说明&#x1f4d5; Oculus Integration 中的三种手势抓取方式⭐Hand Grab⭐Touch Hand Grab⭐Distance Hand Grab 此教程相关的详细教案&#xff0c;文档&#xff0c;思维导图和工程文件会放入 Seed XR 社区。这是一个高质量知识星球 XR 社区&#…

F8652X 984865265 F8652E 984865264

F8652X 984865265 F8652E 984865264 亚历克能够满足最严格的建筑规范开箱-不需要大量的定制&#xff0c;设计时间或劳动力&#xff0c;或专门的布线系统。 模块化ALEC系统包括三个简单的硬件组件——区域控制器(ZC001)、标准按钮墙板和物联网(IoT)网关。该系统可以无限扩展&…

【自动化测试】Jenkins持续集成-设置执行环境+构建触发器(超细整理)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、Jenkins流水线…

海思SD3403,SS928/SS927/SS926,hi3519dv500,hi3516dv500移植yolov7(2)

0.前言 上一节主要在讲如何做数据处理和模型训练。简单验证了一下模型的量化导出。这一节来配置一下转换模型所需要的环境。 1.合作交流 容我先打个广告&#xff0c; 我司推出的目标识别跟踪模块&#xff0c;支持热红外、可见光主流多光谱视频输入与目标识别跟踪等功能…

electronjs入门-编辑器应用程序

我们将在Electron中创建一个新项目&#xff0c;如我们在第1章中所示&#xff0c;名为“编辑器”&#xff0c;我们将在下一章中使用它来创建编辑器&#xff1b;在index.js中&#xff0c;这是我们的主要过程&#xff1b;请记住为Electron软件包放置必要的依赖项&#xff1a; npm…

30个Python操作小技巧

1、列表推导 列表的元素可以在一行中进行方便的循环。 numbers [1, 2, 3, 4, 5, 6, 7, 8] even_numbers [number for number in numbers if number % 2 0] print(even_numbers)输出&#xff1a; [1,3,5,7]同时&#xff0c;也可以用在字典上。 dictionary {first_num: 1,…

1x1卷积核

1 1 1\times 1 11卷积核对输入数据的通道做约简。 每个 1 1 1\times 1 11卷积核相当于在输入数据的通道上做了一个降维&#xff08;经过一个神经元个数为1的全连接层&#xff09;&#xff0c;从而相当于大幅度降低了特征图的数量&#xff0c;但不影响特征图的结构。 使用 1 …

VCR库代码示例

1. 首先&#xff0c;我们需要在代码中添加对VCR库的引用&#xff1a; ruby require vcr require rest-client 2. 然后&#xff0c;我们需要创建一个VCR录制器&#xff0c;以便我们可以记录实际的HTTP请求和响应&#xff1a; ruby VCR.use_cassette(download_video, record:…

高通发布骁龙X Elite Oryon CPU /GitHub出现一款开源项目,让用户“拥有”更大的GPU内存|魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件&#x1f525;&#xff0c;更新AIGC的最新动态&#xff0c;生成相应的魔法简报&#xff0c;节省阅读时间&#x1f47b; &#x1f525;资讯预览 高通发布骁龙X Elite Oryon CPU&#xff0c;性能超越苹果和英特尔&#xff0…

java 中arrayList 中去除重复项

ArrayList 中去除重复对象 Testpublic void removeRepeatItem() {ArrayList<String> arrayList new ArrayList<>();arrayList.add("apple");arrayList.add("banbana");arrayList.add("apple");arrayList.add("apple");S…

手写ThreadPoolExecutor线程池

很多人不推荐造轮子&#xff0c;我偏不。我造轮子又不是为了上生产环境&#xff0c;而是为了加深理解&#xff0c;有何不可&#xff1f;私以为造轮子几乎是最好的学习方式&#xff0c;甚至没有之一。因为造轮子需要至少做足以下两点&#xff1a; 了解设计思想&#xff08;设计…

java反射机制

java反射机制 方法四要素使用反射机制获取方法并调用方法 方法四要素 不使用反射机制调用一个方法需要几个要素的参与&#xff1f; 例&#xff1a; SystemService.java package com.w.spring6.reflection;public class SystemService {public void logout(){System.out.prin…

质量管理工作难做,为什么还有那么多人还继续做?

理解质量管理的挑战 在当今商业环境中&#xff0c;质量管理工作是一项充满挑战的使命。然而&#xff0c;尽管面对种种困难&#xff0c;却有着越来越多的人愿意踏上这条坎坷之路。为何质量管理工作如此艰难&#xff0c;却依旧吸引无数人投身其中呢&#xff1f; 内外动因交融 内…

【23真题】坑挖的不错,题目也有质量!

今天分享的是23年西安石油大学810的信号与系统试题及解析。 本套试卷难度分析&#xff1a;22年西安石油810考研真题&#xff0c;我也发布过&#xff0c;若有需要&#xff0c;戳这里自取!本套试题内容难度中等偏下&#xff0c;题量较少&#xff0c;没有考察选填题&#xff0c;通…

刚刚!奥特曼终于透露了GPT-5的最新消息!

原 创作者 | Tscom、王二狗 大爆料&#xff01;OpenAI被实锤正在研发GPT-5&#xff01; 还是OpenAI的CEO Sam Altman 亲口证实的。 今日&#xff0c;奥特曼接受《金融时报》的采访&#xff0c;透露了很多OpenAI的下一步计划&#xff0c;二狗帮大家整理成以下10个要点&#x…

搬家快递服务预约小程序的作用是什么

无论家庭还是企业办公&#xff0c;不少人都有搬家快递服务需求&#xff0c;尤其是近些年类似服务市场需求规模增长迅速。而在实际经营中&#xff0c;行业商家从业者也面临一些经营难题&#xff1a; 搬家公司的服务一般主要针对同省用户&#xff0c;同城需求较高&#xff0c;然…