基于页面状态理解和大模型驱动的RPA流程执行系统及方法
文献发布时间:2024-04-18 19:58:30
技术领域
本发明属于RPA流程配置技术领域,具体涉及基于页面状态理解和大模型驱动的RPA流程执行系统及方法。
背景技术
机器人流程自动化(Robotic Process Automation,RPA)是一项自动化技术,它通过模拟人的动作,在计算机中代替人进行点击、输入等一系列操作,能够大大提升工作效率,将人力从繁琐的规则性强且重复性强的任务中解放出来。
现有的RPA系统一般需要通过拖拉拽组件的形式构建自动化流程,要求业务人员对RPA客户端深入学习后才能将各个操作步骤对应到合适的组件去搭建流程,且需要具备一定的编程思维,有一定学习和使用门槛。
目前对于RPA的流程搭建,主要涉及到以下技术:
1.RPA(机器人流程自动化)技术:
RPA技术通过模拟人的动作,在计算机中代替人进行点击、输入等一系列操作,能够大大提升工作效率,将人力从繁琐的规则性强且重复性强的任务中解放出来。常见的RPA流程构建形式为拖拉拽的形式进行动作录入,用户将操作过程中的每一步点击、输入等动作对应到RPA中的组件,最终形成整套RPA流程。
2.页面元素识别技术:
页面元素识别是RPA技术的重要组成部分,RPA技术的核心是操作页面元素,因此识别页面元素是基本要求。其包括但不限于元素识别、OCR文字识别、图标元素分类等技术,目的在于获取页面上的各元素位置、文本内容、图标含义,以供RPA流程执行使用。
3.大模型技术:
大模型是指一系列深度学习中非常庞大的神经网络模型,因其通常具有数亿甚至数百亿千亿个参数,故而被统称为大模型。以ChatGPT为代表的大语言模型集成了自然语言处理(NLP)任务的各项能力,如问答、总结、推理等。其强大的推理能力也为图像理解提供了支撑,使得将大语言模型结合图像编码器融入图像特征训练的“视觉-语言多模态大模型”具备图像描述、目标定位的能力,如GLIP、Kosmos-2、Qwen-VL等。
然而,上述现有的相关技术却具有如下局限性:
1.现有的RPA系统仍然具备一定的使用门槛和繁琐的交互动作,且抗干扰性差:
虽然IPA的组件推荐模式已经大大降低了RPA的使用门槛,使得用户无需学习上百个流程组件就能搭建自动化流程,但是还是需要较为熟悉操作流程。如想要在一个OA系统执行简单的请假动作,不同的OA系统操作步骤不一致,用户在流程搭建之前需要先去熟悉业务流程;且在流程搭建时还是要人工进行一系列的点击和输入动作,整个过程依然较为繁琐。此外,目前的RPA系统的抗干扰能力较差,所搭建的固定的流程仅能按照固定的步骤运行,一旦出现异常情况,会直接执行失败。如一个登录正常的登录流程在输入账号密码点击登录后即可完成登录,但是部分网页在点击登录后会偶尔弹出验证码页面,预设的固定步骤的流程无法应对该种情况,导致流程运行失败。
2.现有的页面识别技术仅能获取割裂的元素信息:
要想通过语言描述实现流程的执行,就需要RPA系统能够理解语言内容,并结合页面状态给出反馈。具体来说,当需要执行动作“点击登录按钮”时,页面识别模型应能够输出“登录按钮”的坐标。而现有的页面识别技术分别使用不同的模型识别不同的内容,如使用检测模型识别图标、输入框等,使用OCR模型识别文本内容,但是无法将所获取的元素信息联系起来,导致无法充分利用所识别的元素信息。如需要在一个登录界面输入账号和密码时,检测模型识别出两个输入框,OCR识别出“账号”和“密码”字段,但是却难以直接区分账号和密码的输入框,因此无法通过语言描述直接定位出目标元素。
因此,设计一种能够仅需用户通过自然语言详细描述自己的业务需求,即可完成流程拆解、页面识别及动作执行的基于页面状态理解和大模型驱动的RPA流程执行系统及方法,就显得十分重要。
发明内容
本发明是为了克服现有技术中,目前RPA流程搭建,存在使用门槛高、便捷性差的问题,提供了一种能够仅需用户通过自然语言详细描述自己的业务需求,即可完成流程拆解、页面识别及动作执行的基于页面状态理解和大模型驱动的RPA流程执行系统及方法。
为了达到上述发明目的,本发明采用以下技术方案:
基于页面状态理解和大模型驱动的RPA流程执行系统,包括:
业务流程拆解模块,用于将语言描述的业务需求指令,拆解成具体的操作步骤指令;
页面状态理解及目标定位模块,用于描述页面内容和定位目标元素;
动作执行模块,用于接收来自业务流程拆解模块的操作步骤指令和来自页面理解及目标定位模块的目标元素位置,并通过组件调用执行相应的操作动作。
作为优选,所述业务流程拆解模块包含大语言模型;所述大语言模型由通用大语言模型在一个包含“业务指令-流程步骤”数据样本的语料库中训练得到。
作为优选,所述通用大语言模型包括ChatGPT。
作为优选,所述页面状态理解及目标定位模块包含一个用于理解和识别计算机页面的视觉-语言多模态大模型;所述视觉-语言多模态大模型由基础的多模态大模型在若干个网页及应用软件界面的图像数据样本上训练得到;
所述图像数据样本包含页面截图、对页面各元素的描述及元素间关系描述。
作为优选,所述多模态大模型包括Kosmos-2模型和Qwen-vl模型。
作为优选,所述页面状态理解及目标定位模块中,所述描述页面内容和定位目标元素的过程具体为:
根据业务流程拆解模块拆解出的操作步骤指令,定位出执行对应动作所需操作的目标元素的位置;若无法定位出目标元素位置时,则对页面状态进行描述,并反馈给负责拆解业务指令的大语言模型,为执行动作的调整提供参考。
作为优选,所述动作执行模块中,所述通过组件调用执行相应的操作动作包括鼠标点击和键盘输入。
本发明还提供了基于页面状态理解和大模型驱动的RPA流程执行方法,包括如下步骤;
S1,将任务描述输入业务流程拆解模块,拆解出动作序列A1、A2、...、An;
S2,将单步动作指令An及对应的操作页面的当前状态截图,一起输入页面状态理解及目标定位模块;
S3,页面状态理解及目标定位模块中的视觉-语言多模态大模型进行页面理解并定位动作指令An对应的目标元素;
若成功定位,则将定位出的目标元素的位置,输入动作执行模块,通过组件调用执行动作指令An;若定位失败,页面状态理解及目标定位模块将目标元素定位失败的信息及对页面状态的描述一同反馈给业务流程拆解模块中的大语言模型,大语言模型则根据反馈内容对接下来的动作序列进行调整,用于保证流程顺利执行;
S4,若动作序列执行完毕,则结束执行;否则,重复步骤S1至步骤S3过程。
本发明与现有技术相比,有益效果是:(1)本发明仅需用户通过自然语言详细描述自己的业务需求,该RPA智能体即可完成流程拆解、页面识别及动作执行;而且,借助于大语言模型强大的理解和推理能力,还能够根据页面状态及执行目标动态调整所拆解的执行计划;(2)为了支撑RPA智能体系统各模块的能力,本发明首先构建“业务指令-流程步骤”语料库,并用其微调“通用大语言模型”,使大语言模型具备业务指令拆解的能力;同时,由于经过了大量动作序列的学习,具备强大推理能力的大语言模型同时具备了根据当前页面状态实时调整后续执行计划的能力;然后,本发明构建了大量“页面状态描述和页面目标描述”图文数据集,并用其微调“视觉-语言多模态大模型”,使常规的“视觉-语言多模态大模型”具备了对电脑页面的理解能力和对页面元素的定位能力,在流程执行时,仅需接收拆解出的动作描述,就能输出对应操作元素的位置;(3)本发明不仅能够大大降低RPA使用者的门槛,极大的提升RPA系统的易用性和便捷性,还能应对流程执行过程中的一些异常状况,大大提升流程执行的稳定性。
附图说明
图1为本发明中基于页面状态理解和大模型驱动的RPA流程执行系统的一种总体功能架构示意图;
图2为本发明中基于页面状态理解和大模型驱动的RPA流程执行系统的一种构建方案示意图;
图3为本发明实施例所提供的基于页面状态理解和大模型驱动的RPA流程执行系统在实际应用中的一种流程图;
图4为本发明中“业务指令-流程步骤”数据样本的一种示意图;
图5为本发明中“页面状态描述和页面目标描述”数据样本的一种示意图;
图6为本发明中指令拆解过程的一种示意图;
图7为本发明中目标元素定位过程的一种示意图;
图8为本发明中组件调用及执行的一种示意图;
图9为本发明中目标元素定位失败转页面状态描述的一种过程示意图。
具体实施方式
为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
如图1所示,本发明提供了基于页面状态理解和大模型驱动的RPA流程执行系统,包括:
业务流程拆解模块,用于将语言描述的业务需求指令,拆解成具体的操作步骤指令;
页面状态理解及目标定位模块,用于描述页面内容和定位目标元素;
动作执行模块,用于接收来自业务流程拆解模块的操作步骤指令和来自页面理解及目标定位模块的目标元素位置,并通过组件调用执行相应的操作动作。
具体的,业务流程拆解模块主要负责将自然语言描述的业务指令拆解成一个个可对应到相应操作组件的单步执行步骤。其包含一个大语言模型,该大语言模型由基本的通用大语言模型(包括但不限于ChatGPT等通用大语言模型)在一个包含大量“业务指令-流程步骤”数据样本的语料库中微调得到。因此,其除了具备一般的大语言模型的能力之外,还具备“将语言描述的业务指令拆解成具体可执行的操作步骤”的能力。所述数据样本形式如“在企业微信上通知张三来301房间开会——1.打开企业微信。2.在搜索框输入“张三”。3.在聊天输入框输入“来301房间开会”。4.点击发送按钮。”。除此之外,大语言模型还具备根据页面状态反馈修改执行计划的能力,如“打开企业微信”后准备“搜索张三”时,接收到“未检测到搜索框,当前页面为企业微信登录页面”的反馈,此时具备对话和推理能力的大语言模型会首先询问登录账号信息,并将动作“登录企业微信,账号为xxx,密码为xxx”添加到所拆解步骤中,紧接着在登录界面完成账号的登录,进而执行后续动作。
页面状态理解及目标定位模块具备描述页面内容和定位目标元素的能力,该模块包含一个能够理解和识别计算机页面的“视觉-语言多模态大模型”,该模型由一个基础的“视觉-语言多模态大模型”(包括但不限于Kosmos-2、Qwen-vl多模态大模型)在大量网页及应用软件界面的图像数据样本上微调得到。每一条数据样本包含“页面截图、对页面各元素的描述及元素间关系描述”,从而使其具备根据自然语言描述定位目标的能力。该模块一方面负责根据业务流程拆解模块拆解出的步骤,定位出执行该动作所需操作的目标元素的位置,如接收“输入账号xxx”动作时,输出“账号输入框”的坐标。另一方面负责在无法定位出目标元素位置时,对页面状态进行描述,并反馈给负责拆解业务指令的大语言模型,为执行动作的调整提供参考。例如,在执行“登录->搜索新闻”动作时,在登录之后有时会弹出验证码页面,使得该模型无法定位到输入搜索内容的“输入框元素”,此时该模块能够对页面状态进行描述,将“未检测到输入框,当前页面为验证码验证界面”信息反馈给业务指令拆解模块的大语言模型。
动作执行模块即用于通过组件调用完成鼠标点击、键盘输入等动作的执行模块。接收来自“业务流程拆解模块”的动作指令和来自“页面理解及目标定位模块”的目标元素位置执行相应的动作。如接收到“点击发送按钮”动作和“发送按钮”元素位置时,调用RPA的点击组件控制鼠标移动并完成点击动作。
通过上述一整套“指令接收和拆解”、“目标元素定位反馈”和“动作执行”相关功能模块,即可形成一套能够支持通过语言描述操控电脑执行具体业务的RPA智能体系统。
另外,如图1所示,本发明还提供了基于页面状态理解和大模型驱动的RPA流程执行方法,包括如下步骤;
1,将任务描述输入业务流程拆解模块,拆解出动作序列A1、A2、...、An;
2,将单步动作指令An及对应的操作页面的当前状态截图,一起输入页面状态理解及目标定位模块;
3,页面状态理解及目标定位模块中的视觉-语言多模态大模型进行页面理解并定位动作指令An对应的目标元素;
若成功定位,则将定位出的目标元素的位置,输入动作执行模块,通过组件调用执行动作指令An;若定位失败,页面状态理解及目标定位模块将目标元素定位失败的信息及对页面状态的描述一同反馈给业务流程拆解模块中的大语言模型,大语言模型则根据反馈内容对接下来的动作序列进行调整,用于保证流程顺利执行;
4,若动作序列执行完毕,则结束执行;否则,重复步骤1至步骤3过程。
图2为本发明RPA智能体系统构建方案示意图。将通过自然语言描述的任务指令输入RPA智能体系统后,由基于Llama-V2的指令拆解大语言模型将任务指令拆解为A1、...、Ai、...、An个步骤指令;然后由基于Kosmos-2的页面状态理解及目标定位视觉-语言多模态大模型根据当前步骤指令在当前执行界面进行目标元素定位;若成功定位目标元素,则调用RPA动作执行模块执行操作;否则,将定位失败及多模态大模型对页面状态的描述信息传入指令拆解大模型进行执行步骤的调整,然后继续上述操作,直至完成任务。
基于本发明方案,如图3所示,通过一个实际使用案例展示了本发明的实施方案,及其部分有益效果:
本实施例使用本发明所提出的RPA智能体系统自动化执行“在淘宝网、京东网、拼多多搜索男士外套”流程,且提示“若需要登录,登录账号为123,密码为abc”。根据经验,淘宝网搜索商品一般不需要登录,而京东网和拼多多一般需要登录后才能搜索商品。而上述经验内容也在构建的“业务指令-流程步骤”语料库有记录:
1.首先使用Llama-V2(也可基于其他大语言模型基座进行训练得到业务流程拆解大语言模型)通用大语言模型在构建的“业务指令-流程步骤”语料库微调,使其具备流程拆解和动作序列调整的能力;然后使用Kosmos-2(同样可基于其他多模态大语言模型基座实现)“视觉-语言多模态大模型”在构建的“页面状态描述和页面目标描述”数据集上微调,使其具备电脑页面的理解能力和对页面元素的定位能力。
所述“业务指令-流程步骤”样本示例如图4所示,例如“业务指令”为在钉钉上给张三发个消息,让他来一下会议室,对应的“流程步骤”包括:1.启动“钉钉”应用程序;2.在联系人搜索框输入“张三”并回车;2.在消息框输入“来一下会议室”;4.点击发送按钮。
所述“页面状态描述和页面目标描述”数据样本示例如图5所示,例如动作描述为点击账号输入框,对应的页面状态描述为该页面为“账号登录界面”,可输入账号密码进行登录,对应的页面目标描述为账号输入框
最后结合RPA系统的动作执行能力,完成基于页面状态理解和大模型驱动的RPA流程执行智能体系统的构建。
2.如图6所示,将业务描述“在淘宝网搜索男士外套,若需要登录,登录账号为123,密码为abc”输入RPA智能体系统,智能体系统按照如下步骤运行:
2.1.首先经“业务流程拆解模块”得到动作序列“打开淘宝网站->点击搜索框->输入“男士外套”->点击“搜索”。
2.2.如图7所示,执行动作“打开淘宝网站”:“页面状态理解模块”接收动作描述“打开淘宝网站”和页面截图,通过基于Kosmos-2的页面状态理解及目标定位视觉-语言多模态大模型,输出
2.3.重复2.2步骤,执行完成剩余动作。
3.将业务描述“在京东网搜索男士外套,若需要登录,登录账号为123,密码为abc”输入RPA智能体系统,智能体系统按照如下步骤运行:
3.1.首先经“业务流程拆解模块”得到动作序列“打开京东网站->点击登录按钮->输入账号123,密码abc->点击登录->点击搜索框->输入“男士外套”->点击“搜索”。可以看到,“业务流程拆解模块”中的大语言模型在感知到要在京东网站进行搜索时,拆解出的指令自动包含了“账号登录”相关动作。
3.2.类似2.2执行过程,完成整个自动化流程执行。
4.将业务描述“在拼多多搜索男士外套,若需要登录,登录账号为123,密码为abc”输入RPA智能体系统,智能体系统按照如下步骤运行:
4.1.首先经“业务流程拆解模块”得到动作序列“打开拼多多网站->点击登录按钮->输入账号123,密码abc->点击登录->点击搜索框->输入“男士外套”->点击“搜索”。可以看到,“业务流程拆解模块”中的大语言模型在感知到要在拼多多网站进行搜索时,拆解出的指令同样自动包含了“账号登录”相关动作。
4.2.动作按照2.2所述方式执行,执行到“点击登录”之后,如图9所示,网站弹出一个滑块验证码页面,导致下一步动作“点击搜索框”执行失败。“页面状态理解及目标定位模块”将信息“元素定位失败,该页面为一个验证码验证页面,验证码类型为滑块验证码”反馈给大语言模型。随后大语言模型将后续动作调整为“滑块验证码验证->点击搜索框->输入“男士外套”->点击“搜索”。
4.3.执行动作“滑块验证码验证”,“动作执行模块”调用滑块验证码组件完成验证操作,并进入到搜索页面。然后类似2.2执行过程,完成剩余自动化操作。
5.以上步骤展示本发明所提出到RPA智能体系统的构建示例,并以“在淘宝网、京东网、拼多多搜索男士外套”任务为例,展示了该系统基于场景理解的自适应指令拆解能力、基于页面理解的元素定位能力以及基于页面状态理解的动作序列调整能力。
本发明独创性地提出了一种基于页面状态理解和大模型驱动的RPA流程执行系统。将大语言模型、多模态大模型与RPA系统深度融合,仅需用户通过自然语言详细描述自己的业务需求,该RPA智能体即可完成流程拆解、页面识别及动作执行。而且,借助于大语言模型强大的理解和推理能力,所建立的执行状态及页面状态反馈机制使得该系统能够根据页面状态及执行目标动态调整所拆解的执行计划。因此不仅能够大大降低RPA使用者的门槛,极大的提升RPA系统的易用性和便捷性,还能应对流程执行过程中的一些异常状况,大大提升流程执行的稳定性。
本发明的创新点如下:
1.本发明通过将大模型技术(包括大型语言模型和多模态大模型)能力与RPA系统深度融合,大大降低RPA使用者的门槛,极大的提升RPA系统的易用性和稳定性。
2.本发明创造性地提出用于“业务流程指令拆解“大语言模型”和用于“电脑页面理解及目标定位”的视觉-语言多模态大模型,有效支撑了RPA智能体系统的任务规划和页面识别能力。
3.本发明创造性地提出基于页面状态理解的RPA流程执行反馈机制,使得RPA系统能够在规划的执行步骤的基础上,实时监控流程执行状态,反馈当前页面状态,从而自适应调整后续执行动作,极大地增强了RPA系统的抗干扰能力。
以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。
- 基于RPA和流程挖掘的流程智能处理方法和系统
- 基于AI的RPA流程生成端的流程生成方法、设备及存储介质