暖阳脚本_ 将Agent技术的灵活性引入RPA,清华等发布自动化智能体ProAgent

本文主要是介绍暖阳脚本_ 将Agent技术的灵活性引入RPA,清华等发布自动化智能体ProAgent,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RPA暖阳脚本

近日,来自清华大学的研究人员联合面壁智能、中国人民大学、MIT、CMU 等机构共同发布了新一代流程自动化范式 “智能体流程自动化” Agentic Process Automation(APA),结合大模型智能体帮助人类进行工作流构建,并让智能体自主处理工作流中涉及复杂决策与动态处理的环节,进一步提升自动化的程度,提高效率,将人类从繁重的劳动中解放出来。
在这里插入图片描述

在历史的长河中,自动化是人类技术发展的主要动力,帮助人类从复杂、危险、繁琐的劳动环境中解放出来。自早期农业时代的水车灌溉,到工业时代的蒸汽机,人类一直在不断寻求更加先进的自动化技术,从而解放自身于繁重的工作。

随着信息时代的到来,软件作为信息处理、存储和通信的基础成为了人类生产生活密不可分的一环,从而催成了机器人流程自动化(Robotic Process Automation, RPA)技术。其通过人工编制规则将多个软件协调成一个固化的工作流(Workflow),通过模拟人交互的方式来和软件交互实现高效执行。

图 1 机器人流程自动化 RPA 与智能体流程自动化 APA 对比

RPA 利用软件机器人或称为 “BOT” 来模拟和执行重复性、规则性的任务,从而解放人力资源,提高工作效率。RPA 的应用范围非常广泛。很多企业(包括银行、保险公司、制造业、零售业等各个行业)常利用 RPA 机器人来自动执行一些常规和繁琐的任务,例如:数据录入、数据提取、数据处理。通过自动化任务,RPA 可以大幅度减少错误率,并且能够在 24*7 不间断地执行任务,从而提高了业务的可靠性和响应能力。

根据市场研究,RPA 市场正在迅速增长并取得巨大成功。Gartner 预测,2023 年全球 RPA 市场收入将达到 33 亿美元,相比 2022 年增长 17.5%。这表明了企业对于 RPA 的强烈需求和认可。

但是,RPA 仅能替代简单、机械的人力工作,一些复杂的流程仍旧依赖人工:

编写 RPA 工作流本身需要繁重的人类劳动,成本较高。

复杂任务非常灵活,通常涉及动态决策,难以固化为规则进行表示。

图 2 RPA 与 APA 的效率与智能对比

幸运的是,最近 AI 领域兴起的大模型智能体技术(Large Language Model based Agents, LLM-based Agents)也许给自动化技术创造了新的可能性。有没有可能将 Agent 技术的灵活性引入到 RPA 领域中,来进一步减少人的参与呢?

该团队的研究探讨了大模型智能体时代下新型自动化范式 “智能体流程自动化” Agentic Process Automation (APA)。和传统 RPA 相比,在 APA 范式中,Agent 可以根据人类的需求自主完成工作流构建,同时其可以识别人类需求中需要动态决策的部分,将自动编排进工作流中,并在工作流执行到该部分时主动接管工作流的执行完成相应复杂决策。

为了探索 APA 的可能性,该研究工作实现了一个自动化智能体 ProAgent,其可以接收人类指令,以生成代码的方式构建工作流,同在工作流中引入 DataAgent 和 ControlAgent 来在工作流中实现复杂数据处理与逻辑控制。ProAgent 的研究展现了 APA 在大模型智能体时代下的可行性,也揭示了 LLM 时代下,自动化技术的崭新可能性。

方法介绍

在 RPA 中,工作流是由一系列工具调用组成的图状结构:节点代表一个原子化的工具调用(如 Gmail、Twitter、Google Sheets),而边代表了执行的逻辑顺序(承接、分支、循环)。一个工作流往往包含了对于一个或一类任务的所有先验知识,其中包含解决问题的路径,遇到异常时的处理逻辑等等。因此人编写固化出来的工作流往往是非常稳定周全、非常高效的。

图 3 智能体工作流描述语言示例

在 ProAgent 中,由于 LLM 本身在代码数据中进行预训练,学习到了较强代码能力,该研究便基于代码的智能体工作流描述语言 Agentic Workflow Description Language。该语言使用 JSON 实现对工作流中数据的组织与管理,选择 Python 语法实现对工作流的逻辑控制,将控制流中的跳转、循环等直接通过 Python 语法进行表征,同时将工作流中的工具调用封装为 Python Function。于是对于 ProAgent,工作流构建任务便转化为代码生成任务。当接收到人类指令时,ProAgent 便编写相应的 Agentic Workflow Description Language,从而实现了工作流自动化构建。

图 4 结合 DataAgent 和 ControlAgent 的智能体工作流描述语言示例

复杂的现实任务中通常会涉及动态决策,单纯的 Python 式的逻辑控制规则以及 JSON 式的数据组织形式在面对灵活的需求时便无能为力,此时便需要引入 agent。因此,该研究工作进一步定义出了两种 Agent 操作:

  1. DataAgent:对于一个复杂的数据处理需求,工作流构建时会使用自然语言来描述处理的任务,然后在执行时会初始化一个 DataAgent,其会基于该自然语言描述自主处理并完成该数据处理任务。

  2. ControlAgent:对于难以用规则表示的逻辑控制规则,工作流构建时使用自然语言对控制逻辑进行描述,然后在运行时会初始化一个 ControlAgent,其会基于该自然语言描述自主选择工作流后续需要执行的分支。

ProAgent 使用 ReACT 模式逐步构建工作流,其共包含四个工作流构建步骤:

Action_Define:决定在工作流中添加什么工具。

Action Implement:将工具的输入 / 输出参数转化为 JSON 结构,同时将工具的调用封装为 Python 函数。

Workflow Implement:定义一个 mainWorkflow 函数,用以组织整个 workflow 的逻辑控制与数据处理。

Task Submit: 当 ProAgent 构建完 workflow 时以该操作标识构建过程结束。

图 5 ProAgent 工作流构建过程示例

另外,为了优化 ProAgent 的效果,又引入了几个优化技巧:

1.Testing-on-Constructing:在构建过程中,ProAgent 会在一次修改工作流之后对工作流进行测试,以保证工作流的正确性。

Function Calling:工作流构建的所有操作均封装为了 GPT-4 的 Function,从而提高对工作流构建过程的控制。

Chain-of-Thought:ProAgent 在编写工作流代码时,需要对于每个 function 都要给出注释 comment 和一个编写 plan,从而提高 ProAgent 工作流构建的性能。

工作流执行过程基于 Python interpreter。给定一个工作流,其对应的 mainWorkflow 函数用作为工作流执行的入口来开始整个执行过程。执行过程遵循 Python 代码执行规则,即按照顺序逐行执行。一旦 mainWorkflow 函数返回,工作流执行就成功完成了。

可行性验证

为了验证 Agentic Process Automation 的可行性,该研究使用 OpenAI GPT-4 作为基础模型,并以一个开源的 RPA 平台 n8n 作为载体,实现了上述的 ProAgent。同时设计了一个需要兼顾灵活与效率的任务:这是一个典型的商业场景,需要从 Google Sheets 中提取各种业务线的营利数据,同时根据业务是否属于 2B 或是 2C,决定后续的行为。一旦确定业务线为 2C,就会向 Slack 频道发送一条消息。而对于 2B 的业务线,则会向相应的经理发送一封电子邮件,其中包括对业务线的评估和简要的盈利概况。

图 6 任务 Instruction 展示

对于该任务,首先它是一个重复性的任务,对于多条产品线,应该走相同的处理流程。其次,分辨一个业务线是 2C 还是 2B 很难通过规则判断,需要涉及 Agent 动态决策来判断后续的工作流执行操作。最后,根据撰写业务线的评估邮件需要一定的智能,所以需要 Agent 的介入。

在 ProAgent 生成中,对于该任务,编写出了一个包含四个原子操作,一个 DataAgent 和一个 ControlAgent 的工作流。总体过程大致如下图所示:

图 7 ProAgent 工作流构建过程展示

可以看到,ProAgent 通过自主编写代码的方式,自动完成了工作流的构建过程,其中无需涉及人工介入。在需要判断业务线是 2B 还是 2C 时,ProAgent 引入了 ControlAgent 来做判断,ControlAgent 的 Prompt 被设置为 “Decide Whether the business line is toC or toB”。当业务线为 2B 时,ProAgent 还引入了一个 DataAgent,其任务设置为 “Write a email of the business line of profit, together with your suggestion”,从而利用 agent 的智能来根据不同业务线的实际情况来撰写邮件。

在工作流被编写、固化下来以后,工作流就会根据不同的数据自动分支到不同的逻辑进行高效地数据处理了。

图 8 ProAgent 工作流执行过程展示

在处理 2C 业务线数据时,ControlAgent 可以根据业务线描述判断出当前业务线的类型,选择调用 Slack 工具。当遇到 2B 业务线数据时,DataAgent 可以撰写邮件发到相应经理的邮箱中。

总结

该研究提出了大模型时代下新的自动化范式 ——Agentic Process Automation,和传统 Robotic Process Automation 技术相比,其可以实现工作流构建的自动化,以及工作流执行时动态决策的自动化。该研究进一步实现了 ProAgent 并通过实验揭示了大模型智能体在自动化中的可行性与潜力。相信未来大模型智能体技术会帮助人类实现更高层次的自动化,将人类从各种繁重的劳动中解放出来。在这里插入图片描述

这篇关于暖阳脚本_ 将Agent技术的灵活性引入RPA,清华等发布自动化智能体ProAgent的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/394586

相关文章

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

在React中引入Tailwind CSS的完整指南

《在React中引入TailwindCSS的完整指南》在现代前端开发中,使用UI库可以显著提高开发效率,TailwindCSS是一个功能类优先的CSS框架,本文将详细介绍如何在Reac... 目录前言一、Tailwind css 简介二、创建 React 项目使用 Create React App 创建项目

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc