认识与探索大模型时代的RPA应用及进化(上)
The following article is from AI大模型应用实践 Author 曾经的毛毛
AI Agent当前仍然处于技术爬坡与实验阶段,特别是在企业领域,真正的成熟应用还处于广泛探索与原型验证阶段,离成熟还尚待时日。而同时另外一种在最近几年广受欢迎的自动化解决方案-RPA(机器人流程自动化)也在LLM时代不断升级进化。
本文将尝试结合理论与实例来梳理与探讨RPA在LLM影响下的应用与发展。
RPA概念/场景/技术/与BPA & AI Agent的区别 实例:构建一个RPA机器人 LLM时代RPA的进化与场景 实例:RPA与LLM的融合应用
01
RPA概念、场景、技术等
RPA在一些大型企业已经得到较为广泛的应用,应用场景随着技术的发展也在不断完善与发展,一些常见的RPA应用包括:
数据录入整合:批量地自动化数据录入,比如从不同系统和文件中获取,并整合到单一应用系统或者数据库中。 财务流程自动化:在企业日常的财务流程中用于频繁的发票与报销审核、定期财务报表生成发送、批量报税等。
客户关系管理:来自动搜集、整理与回复客户反馈;市场营销中的自动化信息生成与邮件发送;电商自动化的订单接收与处理。
采购与供应链:借助机器人完成自动化的采购申请的处理,如搜集信息、验证信息、生成订单等。
人力资源管理:使用机器人来帮助人事部门批量筛选简历与联络;员工入职离职流程处理、考勤统计管理等。
企业IT运维:自动化的IT支持与运维任务,如系统监控、故障排除、软件部署,版本升级、安全补丁等。
传统RPA技术主要通过计算机程序实现模拟键盘鼠标操作、识别与定位界面元素、文件与接口访问等,并按照设定的规则与控制流程自动执行任务。
非侵入性。传统RPA主要工作在软件UI操作层做人工操作仿真。特别在企业应用中,对现有应用无侵入性,无需建设与提供特别的应用接口。 自动化:这是RPA的基本特点,能够自动执行重复性、规则性的任务流程。
可编程:能够对模拟人类的计算机操作规则与流程做编程与设定,包括键鼠操作、web浏览、文件处理、软件操作等。
低代码:RPA平台通常需要支持低代码甚至无代码的开发,从而降低机器人的设计与开发门槛,加快机器人的上线速度。
智能性:随着AI技术发展,RPA在智能性上不断提升。如借助OCR识别界面元素;或借助AI模型处理各非结构化数据等。
集成性:自动化的RPA任务与流程也需要能够与现有应用做深度集成,如由其他应用来驱动RPA,或者RPA也能实时访问其他应用的接口。
实施目标
RPA是通过软件机器人来模拟和整合现有的应用程序的人工操作,以执行重复性、规则性和可预测的任务。侧重于自动处理特定的任务和操作。 BPA的目标是对组织内的端到端业务流程进行自动化改进,实现跨部门、跨岗位、跨应用的复杂流程、决策和协作的自动化。
自动化范围
传统的RPA用UI操作自动化来实现特定任务自动化,比如批量数据录入、报告生成、客户回复等 BPA的范围通常会更广泛,可以涵盖组织内全部业务流程,通过组织内业务流程自动化实现多部门、多系统之间的有效协作。
集成复杂度
RPA通过使用软件技术来模拟人工操作,无需对已有系统进行深度集成改造,侵入性低。 BPA实施是一项复杂的组织内系统性工程。需要广泛的业务梳理、流程设计与深度集成工作,涉及的现有系统通常需要配合BPMS(工作流管理系统)进行改造升级,以实现跨部门跨系统的流程整合与自动化。
RPA与AI Agent
自动化范围
RPA主要用于自动化重复性的规则性的任务。 AI Agent则更专注需要智能推理与决策的任务。如需要自然语言识别、智能推荐、智能分析等。
技术原理
RPA基于规则和预先定义的逻辑来执行任务,通常不具备智能学习与推理能力。自动化的能力主要依赖于设定的规则。 AI Agent则基于深度学习技术与AI模型(当前主要是大模型),具备智能学习与推理能力。自动化的能力主要来源于AI模型推理。
集成复杂度
RPA工作以操作层面为主,是一种侵入性较低的自动化流程方案,因此更易于在复杂应用环境下的集成。 AI Agent在自动化规划与执行企业任务的过程中,通常需要借助“工具”,比如API或者编码来完成任务,对现有系统API的改造要求较高。
适用场景
RPA更适用于重复性高、规则性强的任务与流程,关注于提高任务效率和准确性。 AI Agent则更适用于需要提升智能化水平与推理能力的场景。比如基于自然语言的智能咨询、交互式数据分析、会自动选择工具的个人助手等。
我们会在后面部分进一步探讨RPA与LLM大模型的集成与融合。
02
构建一个RPA机器人
Robot Framework:一个通用的开源自动化任务框架,主要用于自动化测试与RPA(软件的自动化测试与RPA在场景上非常相似) RPA Framework: 基于Robot Framework之上扩展的一个用于RPA的开源库与工具,简单说就是Robot Framework的一个增强库与系列工具包。包括开发与构建机器人流程工具,以及云端监控调度中心(收费产品)。
基于RPA Framework构建RPA机器人可以直接使用Python代码构建,也可以采用其独有的一种脚本命令来编写以.robot结尾的机器人文件,然后加载运行即可。本次我们设计RPA机器人需要完成的任务细节流程如下:
下载销售数据 打开内部Web应用 账号登录 用Excel文件的数据逐个提交表单 保存最后结果截图 保存业绩汇总表格 退出登录并关闭浏览器
......
*** Tasks ***
插入销售数据,并且导出成PDF.
下载销售数据
打开内部应用网址
登录
用Excel文件的数据逐个提交表单
保存最后结果截图
保存业绩汇总表格
[Teardown] 退出登录并关闭浏览器
*** Keywords ***
下载销售数据
Download https://robotsparebinindustries.com/SalesData.xlsx overwrite=True
打开内部应用网址
Open Available Browser https://robotsparebinindustries.com/
登录
Input Text username maria
Input Password password thoushallnotpass
Submit Form
Wait Until Page Contains Element id:sales-form
填写单个销售数据
[Arguments] ${sales_rep}
Input Text firstname ${sales_rep}[First Name]
Input Text lastname ${sales_rep}[Last Name]
Input Text salesresult ${sales_rep}[Sales]
Select From List By Value salestarget ${sales_rep}[Sales Target]
Click Button Submit
用Excel文件的数据逐个提交表单
Open Workbook SalesData.xlsx
${sales_reps}= Read Worksheet As Table header=True
Close Workbook
FOR ${sales_rep} IN @{sales_reps}
填写单个销售数据 ${sales_rep}
END
保存最后结果截图
Screenshot css:div.sales-summary ${OUTPUT_DIR}${/}sales_summary.png
保存业绩汇总表格
Wait Until Element Is Visible id:sales-results
${sales_results_html}= Get Element Attribute id:sales-results outerHTML
Html To Pdf ${sales_results_html} ${OUTPUT_DIR}${/}sales_results.pdf
退出登录并关闭浏览器
Click Button Log out
Close Browser
运行RPA机器人
基于RPA Framework的机器人构建完成后可以有几种运行方法:
直接在开发工具中测试运行(VS code,需安装RPA Framework相关扩展) 使用独立开源工具rcc在本机调度运行 上传到control room,然后调度运行(收费服务)
至此,我们完成了一个简单的RPA机器人,并且取得了预期效果。在下篇中我们将继续探讨基于LLM的生成式AI能力与RPA的融合话题。