本文是对ProAgent项目论文的解读,基于该论文,我提出了自己的设想。该项目提出了一种有别于RPA(Robotic Process Automation)的自动化方案,我们都知道RPA是过去主流的自动化设计思路,但是RPA有其局限性,特别是在遇到一些动态化场景时,我们人类可以一眼看出,但是却需要取去重新编写RPA的流程或代码,本质上是RPA智能程度不够。有没有一种基于AI来进行自动化的任务规划的设计方案呢?由清华NPL和面壁智能共同创立的OpenBMB组织,提出了一种由AI来实现自动化中的规划过程(而非人工撰写流程和代码)的设计方案,并发布了ProAgent项目来具体实现这一设计,围绕Agent来完成自动化的智能规划,因此这种自动化范式被命名为APA(Agentic Process Automation)。本文就来详细聊一聊APA的设计理念和具体架构描述。
从使用工具到自动化
人类作为智能物种区别与其他物种的起点,是人类发展出使用工具的智力。随着社会生产成为人类活动的核心,效率成为人类追求的重要目标,从早期农业水车灌溉系统到后来蒸汽时代的机器生产,人类一直在追求将人类劳动力转移到自主系统中,从某些角度讲,“解放生产力”的本质就是“越来越多的人类劳动变成自动化完成”。
但人类的进步总是螺旋式上升,进入信息时代后,在新的信息技术领域,自动化追求的步伐虽未停止,但并不算快。虽然依靠信息系统,人类社会已经得到长足发展,但是很多工作仍然需要大量人类劳动来完成,甚至包括自动化本身。在AI能够大范围应用之前,夸张的说,我们处理信息文明的蛮荒时代。
随着LLM-based Agent成为AI应用的主流,Agent将作为智能应用被应用到社会生产生活的方方面面。虽然RPA已经在很多领域被应用,也创造了非常高的价值,但是,RPA的灵活性仍然受到诟病,当遇到一些细微调整时,人工参与是必不可少的,这使得RPA的运行并不能满足需要实时规划的场景。对实时情况的反应能力,需要具备智能,而有了Agent,则可以解决这一问题。于是,一种将传统RPA和基于AI技术的自动化结合的方式呼之欲出。
RPA与APA的区别
RPA本质上还是将人类劳动转化为机器工作,具有人工动作与机器动作一对一的关系,例如我们创建一个自动化测试UI的RPA流程,那么这个流程仅仅是将需要人工进行UI点击、输入等操作,转化为机器来执行这些动作,虽然确实解放了人的劳动,但是本质上还是动作的一对一替换,一旦UI的变化有变化(例如原本的按钮上方多出了一个广告banner),那么这些动作就需要被修改,而修改的过程又需要大量人类劳动。而APA则进一步降低人类参与度,人类只需要提出自动化需求,并给出被自动化操作的对象的具体规则,剩下的,就是交给agent来做分析和工作流的构建,并且在自动化工作过程中,agent根据任务目标,实时调整工作流,以适配新的情况。
从上图可以看出,RPA和APA的核心区别在于,APA将RPA中需要人来进行思考和根据实时情况进行工作流调整的部分,通过Agent来智能化完成,使自动化程度变得更高了。
2024-04-06 1397