CN116127203B - 结合页面信息的rpa业务组件推荐方法及系统 - Google Patents
结合页面信息的rpa业务组件推荐方法及系统 Download PDFInfo
- Publication number
- CN116127203B CN116127203B CN202310407729.XA CN202310407729A CN116127203B CN 116127203 B CN116127203 B CN 116127203B CN 202310407729 A CN202310407729 A CN 202310407729A CN 116127203 B CN116127203 B CN 116127203B
- Authority
- CN
- China
- Prior art keywords
- component
- recommendation
- information
- service component
- page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及RPA产品技术领域,具体涉及结合页面信息的RPA业务组件推荐方法及系统。方法包括:S1,获取各个业务组件的元数据信息,并进行过滤处理,输出一个经过排序的候选业务组件列表;S2,抽取页面信息,并进行字段加工,获得结构化的页面信息数据;S3,将候选业务组件列表和结构化的页面信息数据作为输入,并结合RPA的基础组件数据库信息,通过多模态业务组件推荐算法,输出经过排序的组件推荐列表;S4,用户通过人机交互的形式,对所述组件推荐列表中的组件的属性进行编辑、配置和确认。本发明具有适用范围广泛、推荐结果精准、用户体验友好的特点。
Description
技术领域
本发明涉及RPA产品技术领域,具体涉及结合页面信息的RPA业务组件推荐方法及系统。
背景技术
机器人流程自动化技术(Robotic Process Automation, 后简称RPA)是一种用于企业规则化、重复性工作替代的有效技术,目前正广泛应用于各行各业的财务、税务、审批、风控、运营、物流、广告等业务中。RPA技术提供了可视化的流程编辑器,开发人员可以在流程编辑器上设计和配置出能够在企业业务系统中自动执行的流程脚本;在脚本执行过程中,则通过模拟键盘、鼠标操作、调用操作系统接口、分析网页结构等手段,来模拟人类的按钮点击、键盘输入、文件创建、网页跳转、逻辑判断等动作。
RPA中业务流程的基本组成单元是组件。组件是一个个可以完成特定操作的代码集合,组件一般有一个组件名称,标识其功能,例如“打开网页”组件,功能就是在特定的浏览器中打开一个特定的网页;同时组件也有相应的属性,同样是“打开网页”组件,最主要的属性为三个:“浏览器类型”表示要用什么类型的浏览器来执行操作、“网址”表示具体要打开的网页地址;“输出到变量”表示要把该操作赋值给哪个对象。RPA的组件通过各种组合和搭配能够完成一系列复杂的业务流程;然而原始的RPA组件一般对应的是非常细粒度的操作,例如“打开网页”只能完成一步操作,而大量的业务流程会包含非常复杂的操作和一系列逻辑判断,如果用“原子级”组件来完成,则整个流程会包含大量组件和复杂的逻辑判断,开发复杂程度与代码编程不相上下,不利于没有技术背景的普通用户使用。
为此,现有的RPA软件基本都支持用户在各自的业务场景下,自行开发、编写、组装“原子级”的组件形成能够完成一整块特定功能的“业务组件”。所谓“业务组件”,在RPA中是指完成特定业务功能的自定义、自开发的组件集合,最终封装成一个组件的方式提供给下游的用户使用。例如日常中的“淘宝登录”,其背后是若干个基础组件构建形成,能够完成特定电商网站的登录操作,包括输入账号、密码、验证码,然后点击登录按钮等。业务组件和基础组件一样具有组件名称和组件属性,组件属性也一样包括输入和输出,例如淘宝登录业务组件的输入包括用户名内容、密码内容、重试时间等等。借助业务组件的封装,没有技术背景的普通用户也能实现拿来即用,直接选择一个已封装好的业务组件即可实现某个特定的功能。
然而现有的组件使用方式和推荐技术,更关注于基础组件本身的推荐,即其候选推荐列表来自于基础的“原子级”组件。这在复杂的实际应用过程中会遇到明显的问题:在RPA流程中会包含大量的逻辑判断,例如判断元素是否存在、循环某个操作等,而这些逻辑组件和它的前后几个组件并没有必然的关系,也和业务流程没有必然的关系。如果直接在候选列表中剔除这些组件,会导致通过推荐构造的RPA流程可用性变差,无法处理复杂的逻辑判断;而如果将其添加到候选列表,又很难根据后验概率、状态转移或者业务流程特性等因素来进行推荐。因此,具体来说现有的组件使用方式和推荐技术存在以下缺点:
1.原始RPA的组件使用方式学习成本高
原始RPA软件中,通过拖拽方式来从组件库选择组件的形式,对于用户来说使用成本太高。首先用户需要了解完成某步操作具体要用到哪个组件,然后需要在繁琐的组件列表中找到对应的组件并拖拽到画布上,这种模式就像在电商网站购物时需要知道自己要买的商品在哪个店铺售卖,同时需要知道商品的规格参数一样,是一种最原始的组件选择方式,不便于新用户快速学会使用RPA工具,也不利于RPA工具的更广泛应用。
2.现有组件推荐技术只考虑了基础组件
现有的基于概率模型,例如后验概率或状态转移概率的组件推荐技术,既没有考虑业务场景的特殊性,也没有考虑逻辑组件的特殊性。在其候选推荐列表中,将所有基础组件,包括循环、判断、异常等逻辑类功能都包含在内,这本身就会导致推荐的准确率非常低,或者非常依赖于业务场景的特殊性,例如在简单的场景下可能几个步骤就能完成的流程,那么按照状态转移概率来推荐会比较准确,因为“打开浏览器”的下一步大概率是“打开网页”;然而在复杂的场景下,特别是逻辑判断比较多的场景下则容易失效。例如,判断类组件(if-else)在流程设计中非常常用,但具体在什么情况下使用,每个业务场景都不相同,甚至有时候需要流程开发者自己判断,想仅仅依靠现有手头数据的统计概率来推荐是不可行的,要么有可能导致频繁的推荐if-else,要么有可能在该加判断逻辑的时候推荐不出该组件。
3.基于流程相似度的推荐容易有偏且过于依赖静态历史数据
尽管像现有技术中在基于概率模型的基础上考虑了业务流程的相似度,但是一方面仍未能避免上述逻辑类组件的推荐问题,另一方面其技术也完全依赖于业务流程的整体相似性,和历史业务流程组件的完整性;也就是说待开发的业务流程需要和历史业务流程有高度的整体相似度,才会从该业务流程中找到相似的组件作为候选推荐列表,这本身比较苛刻;同时又需要该历史业务流程中的组件是完整的、全面的和精准的,否则就有可能导致推荐不准。假设要完成“打开网页”这个动作,历史业务流程库中,都是“先把鼠标移动到浏览器地址栏,然后模拟键盘一个个字母地输入网址URL,然后再把鼠标移动到跳转按钮上点击一下”这些动作,那么在推荐的时候也只能推荐“移动鼠标”、“键盘单个输入”、“鼠标点击”这些组件;但是实际上完成“打开网页”可以一个组件实现,也可以把网址复制粘贴到浏览器地址栏,然后按下回车直接跳转。所以如果历史业务流程中没有这类操作,推荐列表中也不会出现这些组件,推荐的准确性和多样性大大受限。
因此,设计一种适用范围广泛、推荐结果精准、用户体验友好的结合页面信息的RPA业务组件推荐方法及系统,就显得十分重要。
发明内容
本发明是为了克服现有技术中,现有的组件使用方式和推荐技术,存在适用性差,推荐精确性差以及学习成本高的问题,提供了一种适用范围广泛、推荐结果精准、用户体验友好的结合页面信息的RPA业务组件推荐方法及系统。
为了达到上述发明目的,本发明采用以下技术方案:
结合页面信息的RPA业务组件推荐方法,包括如下步骤;
S1,获取各个业务组件的元数据信息,并进行过滤处理,输出一个经过排序的候选业务组件列表;
S2,抽取页面信息,并进行字段加工,获得结构化的页面信息数据;
S3,将候选业务组件列表和结构化的页面信息数据作为输入,并结合RPA的基础组件数据库信息,通过多模态业务组件推荐算法,输出经过排序的组件推荐列表;
S4,用户通过人机交互的形式,对所述组件推荐列表中的组件的属性进行编辑、配置和确认。
作为优选,步骤S1包括如下步骤:
S11,从业务组件数据库中获取到各个业务组件的元数据信息,元数据信息包括组件的开发者信息、应用场景描述、输入参数、输出参数、属性参数、是否有测试用例、当前已被下载或调用次数和使用反馈信息;
S12,检查各个业务组件的元数据信息中是否含有至少一个测试用例;若业务组件元数据信息中不包含测试用例,则直接结束过滤,对应业务组件排除在候选业务组件列表外;若业务组件元数据信息中包含测试用例,则将检查对应业务组件输入输出的规范性和正确性,检查不通过的业务组件将被直接排除在候选业务组件列表外;
S13,经过步骤S11和步骤S12筛选的业务组件将根据业务组件描述的应用场景和组件的输入输出进行组件分类,并在同类业务组件之间进行排序;
S14,输出一个经过排序的候选业务组件列表。
作为优选,步骤S12中,规范性检查包括业务组件的变量类型是否在RPA支持的范围内,参数的上下限是否有约定,非法输入是否有进行处理;正确性检查则利用测试用例模拟输入,检查输出是否为组件描述的预期输出。
作为优选,步骤S13过程中,所述同类业务组件之间进行排序的依据为开发者信息、当前已被下载或调用次数、使用反馈信息和组件描述详细程度;具体排序算法采用基于人工智能的机器学习算法或预先设定的排序规则逻辑。
作为优选,步骤S2包括如下步骤:
S21,通过RPA的信息抽取工具和自定义的算法进行页面信息的抽取;所述页面信息包括应用程序的类型、页面功能、页面上的图标和文字信息以及页面上的图标类型;
S22,采用结合基于计算机视觉技术和光学字符识别技术的页面信息融合方法,将步骤S21中抽取的页面信息进行聚合;
S23,将聚合后的页面信息进行数据清洗、转换和结构化;
S24,将经过步骤S23处理后的页面信息保存为结构化的数据,作为多模态业务组件推荐算法的其中一个输入。
作为优选,步骤S23具体包括如下步骤:
S231,页面信息中,对于应用程序类型的字符串类型将被编码为数值类型,用于表征不同应用程序的类型;
对于页面功能,采用基于机器学习的分类模型或基于分类规则映射的方式对应到具体的功能类别上,同时功能类别也将编码为数值类型;
对于页面上的图标和文字信息,将提取到的图标和文字信息进行自然语言处理中的关键词抽取或进行命名实体识别并提取出关键信息,完成修正页面功能的分类;
对于页面上的图标类型的判断,则将图标类型结构化为二值分类。
作为优选,步骤S3包括如下步骤:
S31,预处理阶段:
所述预处理阶段具体为:获取并加载实时的结构化的页面信息数据,解析页面信息数据结构并处理为算法所需的多个字段;将候选业务组件列表和基础组件列表进行合并构成一个有序的组件候选集,并统一提取所有组件的描述信息,所述描述信息包括业务组件元数据;最后获取历史的组件推荐信息,包括同用户、同场景下的组件选择结果;
S32,算法推荐阶段:
所述算法推荐阶段具体为:采用基于内容的推荐为主,结合多种推荐的组合推荐算法,根据步骤S31预处理后的数据,输出一个经过排序的组件推荐列表;
所述基于内容的推荐在商品推荐上指从关于商品内容的特征描述中得到用户的兴趣资料,即从组件的特征描述中得到用户的推荐意向度;
所述多种推荐包括基于协同过滤的推荐方式,用于根据用户信息进行组件推荐;
所述组合推荐算法在算法结构上,采用基于机器学习、深度学习的算法;
S33,后处理阶段:
所述后处理阶段具体为:对输出的组件推荐列表进行精排和修正,同时将推荐的结果和用户反馈信息合并处理,并作为每次的推荐结果/采纳结果数据存储到数据库中。
作为优选,步骤S4中,对组件的属性进行编辑、配置和确认包括对界面元素的拾取、对界面元素的配置和在界面上确认要操作的界面元素。
本发明还提供了结合页面信息的RPA业务组件推荐系统,包括:
业务组件过滤器,用于获取各个业务组件的元数据信息,并进行过滤处理,输出一个经过排序的候选业务组件列表;
页面信息抽取引擎,用于抽取页面信息,并进行字段加工,获得结构化的页面信息数据;
多模态业务组件推荐算法模块,用于将候选业务组件列表和结构化的页面信息数据作为输入,并结合RPA的基础组件数据库信息,通过多模态业务组件推荐算法,输出经过排序的组件推荐列表;
可视化属性配置界面插件,用于使用户通过人机交互的形式,对组件推荐列表中的组件的属性进行编辑、配置和确认。
本发明与现有技术相比,有益效果是:(1)本发明中的业务组件过滤器和多模态业务组件推荐算法,能够将业务组件加入到推荐的列表中,从而让业务组件这种更高级、更综合的组件能够在具体的业务场景中推荐出来,并更契合实际场景的需求,也更符合普通用户/RPA初学者的简单使用需求,而非需要再根据推荐的一个个基础组件搭建业务功能;(2)本发明将开发人员或社区用户开发、封装的业务组件作为整体进行推荐,由于业务组件实现的是一个相对完整的业务功能,因此其中已包括各类逻辑类组件,例如判断、循环等,因此通过推荐业务组件的方式解决了现有技术无法推荐逻辑类组件或者推荐不准的问题;(3)本发明的页面信息抽取引擎,实现了将当前页面信息进行实时抽取和解析,并在多模态业务组件推荐算法中综合考虑静态历史数据(如相似流程、后验概率等)和实时页面信息(如页面内容、元素类型),使得组件的推荐更精准,更符合当前业务场景的需求;(4)本发明中可视化属性配置界面插件更进一步以人机协同的方式,让用户人工再次确认推荐的组件以及组件所涉及界面元素的拾取准确性等,使得推荐的组件能够真正运行;(5)本发明具有适用范围更广泛、推荐结果更精准和用户体验更友好的特点。
附图说明
图1为本发明中结合页面信息的RPA业务组件推荐系统的一种整体构架示意图;
图2为本发明中业务组件过滤器的一种工作流程示意图;
图3为本发明中页面信息抽取引擎的一种工作流程示意图;
图4为本发明中多模态业务组件推荐算法的一种功能结构示意图;
图5为本发明实施例提供的结合页面信息的RPA业务组件推荐方法在实际应用中的一种流程图。
具体实施方式
为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
如图1所示,本发明所提出的整体方法和系统主要包括以下模块;
1.业务组件过滤器:
在本发明系统的“业务组件数据库”中,保存着由专业的RPA实施开发人员和RPA社区用户所开发和提交的各类业务组件,这些业务组件被封装成和基础组件一样的形式,具有相对标准的输入输出参数。业务组件过滤器则在推荐之前先对这些业务组件进行过滤,输出一个经过排序的候选业务组件推荐列表,合并给多模态业务组件推荐算法使用,具体如图2所示。
业务组件过滤器的第一步首先从业务组件数据库中获取到各个业务组件的元数据信息,元数据包括组件的开发者信息、应用场景描述、输入参数、输出参数、属性参数、是否有测试用例、当前已被下载或调用次数、使用反馈信息等;这些数据在开发人员和社区用户提交业务组件时应包含或填写完整,并用于后续的组件过滤和按场景排序;
业务组件过滤将先检查是否有至少一个测试用例。测试用例用于验证业务组件的合规性、输入输出参数是否标准等。测试用例既可以是一个包含输入和输出数值的元组(例如一些基本的字符串处理组件),也可以是一小段示例性RPA流程(例如涉及到页面的操作等)。如果业务组件元数据中不包含测试用例,则直接结束过滤,该业务组件也不会被放入候选业务组件列表中,自然不会应用于多模态的业务组件推荐算法。
包含有测试用例的业务组件将依据用例、元数据等检查输入输出的规范性和正确性;规范性检查包括其变量类型是否在RPA支持的范围内;参数的上下限是否有约定;非法输入是否有进行处理等;而正确性则利用测试用例模拟输入,检查输出是否为组件描述的预期输出。同样,检查不通过的组件将被直接排除在候选业务组件列表之外。
经过上两步筛选的业务组件将根据组件描述的应用场景、组件的输入输出等进行组件分类,并在同类组件之间进行排序。排序的依据为开发者信息、当前已被下载或调用次数、使用反馈信息、组件描述详细程度等,具体排序算法可以是基于人工智能的机器学习算法,也可以是预先设定的排序规则逻辑。
业务组件过滤器的输出为一个经过排序的候选业务组件列表,其中按照不同的业务场景进行分类和排序,并将输出给多模态业务组件推荐算法使用。
2.页面信息抽取引擎:
如图3所示,页面信息抽取引擎将借助RPA的信息抽取工具和自定义的算法进行页面信息的抽取,抽取的信息包括:
1)应用程序的类型,例如桌面应用程序、Java应用程序、Web应用程序等,这部分信息可以借助RPA本身自带的选择器(selector)获取,选择器在可以解析应用程序源码的情况下将输出结构化的页面信息,其中就包含应用程序的信息;
2)页面功能分类,根据页面路径、网页URL解析或通过页面的关键信息,如关键词、关键图标等判断当前所处的页面的功能或者业务流程所处的阶段,例如是登录页面、搜索场景、在线对话页面、商品信息列表页、商品详情页等,根据不同页面功能可以推荐不同的业务组件;
3)页面内容包括页面上的图标和文字信息,图标和文字一方面可以辅助页面功能的分类,另一方面也可以用于在业务组件推荐时提供更详细的信息,例如鼠标的位置和页面内容结合起来,可以判断当前所要执行的业务操作;
4)元素类型等信息主要是页面上的图标类型,同样这部分信息也将用于业务组件的更精准推荐,例如表格类型的数据一般对应的是数据采集相关的业务组件。
页面信息抽取引擎采用结合光学字符识别(OCR)技术的页面信息融合方法,获取不同类型屏幕页面上的信息。一般的浏览器页面或者客户端软件可以通过解析页面源码的方式抽取到上述相应信息,例如应用程序的类型可以通过其进程名大致判断;网页内容可以通过解析HTML代码获取等。然而当遇到远程桌面、特殊软件等无法获取页面源码的情况,需要结合基于计算机视觉(Computer Vision,CV)技术和OCR技术来获取页面的图标和文字信息;页面抽取引擎中的信息聚合模块,将对接不同格式的接口来获取不同方式抽取到的信息(selector抽取结果、OCR模型识别结果等)。
抽取到的信息将作为页面信息字段加工的输入,在字段加工模块中主要是进行数据清洗、转换和结构化:例如应用程序类型的字符串类型将被编码为数值类型,从而更简洁地表征不同应用程序的类型;页面功能采用基于机器学习的分类模型(例如随机森林,Random Forest)或基于分类规则映射的方式对应到具体的功能类别上,例如登录、搜索等,进而功能类别也将编码为数值类型;页面内容提取到的文字信息等进行自然语言处理(Natural Language Processing,NLP)像关键词抽取或或命名实体识别(Named EntityRecognition,NER)提取出关键信息,比如当抽取到多个商品价格时表示该页面可能是商品详情列表,从而可以修正页面功能的分类;元素类型的判断上,可以进一步结构化为二值分类,比如“是否表格类型”,1表示是,0表示否。
经过字段加工后的页面信息将保存为结构化的数据,作为多模态业务组件推荐算法的其中一个输入,在数据的保存和传输形式上可以是JSON(JavaScript ObjectNotation)结构等。
3.多模态业务组件推荐算法模块:
如图1所示,业务组件过滤器和页面信息抽取引擎的输出,结合RPA的基础组件数据库信息,将一同作为多模态业务组件推荐算法的输入。这里的多模态是指推荐算法考虑的数据信息的模态有多种,包括图片类型的页面图标信息、文字类型的页面文字信息、结构化的历史推荐数据或相似组件等,实现更精准的业务组件推荐。
进一步的,如图4所示,多模态业务组件推荐算法模块主要包括如下3个阶段:
预处理阶段:算法的预处理阶段获取并加载实时的结构化页面信息数据,由于页面信息可能通过JSON的格式进行传输,需要解析数据结构并处理为算法所需的多个字段,例如将其中的页面功能分类作为一个字段抽取出来;同时候选的业务组件列表和基础组件列表将进行合并构成一个有序的组件候选集,其中的组件描述信息包括前述的业务组件元数据等将统一提取和处理;最后预处理环节还将获取历史的组件推荐信息,包括同用户,同场景下的组件选择结果。
算法推荐阶段:在核心的组件推荐算法上,将采用基于内容的推荐为主,结合多种推荐的组合推荐算法。基于内容的推荐在商品推荐上主要是指从关于商品内容的特征描述中得到用户的兴趣资料;而在本发明的业务组件推荐场景中则主要考虑到从组件(包括业务组件和基础组件)的特征描述中得到用户(包括了用户所处理的当前页面信息)的推荐意向度。由于基于内容的推荐结果直观,容易解释;因此能够在RPA产品上获得更好的用户体验。此外,考虑到单一的基于内容的推荐算法的局限性,比如新用户、新场景下的推荐问题等,考虑到场景相似性等因素,结合了基于协同过滤的推荐方式,共同形成一种多模态的、组合的推荐算法。在具体的算法结构上,可采用基于机器学习、深度学习等的算法,如基于决策树的算法实现从页面信息到组件信息的映射,最终得到一个经过排序的组件推荐列表。
后处理阶段:在此阶段对算法输出的组件推荐列表进行精排、修正。例如考虑一些强业务规则的输入像一些定制化的业务组件和特定的软件、浏览器页面是绑定的,因此在这类页面场景下,应优先推荐此类组件;又例如在业务组件和基础组件的推荐概率接近的情况下,应优先考虑推荐业务组件等。同时,后处理阶段还将结合推荐的结果、可视化属性配置界面插件埋点获取的用户反馈信息进行处理,并作为每次的推荐结果/采纳结果等数据存储到数据库中。
4.可视化属性配置界面插件:
本发明还设计了一个前端界面插件,用于对业务组件进行可视化的配置——考虑到RPA开发人员或社区用户在开发业务组件时的页面,和实际调用业务组件时的页面之间可能由于分辨率、页面改版等原因产生了轻微的差异,因此直接使用这些业务组件时可能会带来问题。本发明的可视化属性配置界面插件通过组件用户在使用时再做两步的页面对准操作来进一步提高所推荐的业务组件,在真实场景中的使用稳定性。
以某电商网站的登录为例,在该网站的登录页面中结合登录模块的特有样式和文字信息,推荐出智能登录组件后,会弹出一个用于属性配置的插件,该插件的第一个界面是形似网站登录区域的一个蒙层(即样式上和网站登录区域一样的一个虚拟可点击蒙层),在该蒙层上用户可以重新拾取和登录动作相关的3个界面元素:账号输入框、密码输入框和登录按钮,以避免该电商网站的登录页面发生轻微改变的情况。简单的三步拾取动作之后,用户可以对登录相关的验证码进行配置,包括获取验证码图片所在的区域、验证码的小滑块图标所在的位置等,而后完成属性配置后,业务组件将自动完成验证码滑块的滑动,实现自动登录。
通过该可视化的属性配置界面插件,以人机交互的形式实现用户可以对组件的属性进行编辑、配置和确认,在动态变化的页面中进一步提高组件推荐的准确性和适用性;使得推荐出的组件能够在流程中更稳定地运行。
图5展示了本发明提出的结合页面信息的RPA组件推荐方法的实施细节,其中各个模块所举例的算法仅作为示例说明,不应理解为本发明的限制条件;例如在业务组件过滤器中排序业务组件的逻辑回归算法,不应理解为本发明在此处只能采用该算法。其他部分的相关技术举例同此说明。
图5的实施例中从用户打开RPA设计器进入流程开发模式开始,根据用户当前所处的业务系统的页面和元素的类型,结合基础组件和历史推荐信息等进行RPA组件推荐,推荐结果展示在设计器中供用户选择并可视化配置组件属性,最后选择并配置好的组件将添加到RPA流程中,具体如图5所示:
S1:用户打开RPA设计器,进入到流程开发模式,在流程开发模式下用户可以直接操作业务系统界面,本发明的系统将根据页面信息进行推荐;
S2:用户鼠标移动到当前业务系统页面的某个待操作元素上,此时会进行组件推荐前的数据收集和处理工作,其中S2.1.X是构建候选的业务组件列表子流程,对应业务组件过滤器的实现;S2.2.X是抽取当前的页面信息用于推荐,对应页面信息抽取引擎的实现;
S2.1.1:业务组件过滤器从业务组件数据库读取所有业务组件元数据信息,业务组件数据库由RPA开发者和社区用户提交的业务组件构成;
S2.1.2:针对每个业务组件检查组件的合规性,包括检查业务组件的测试用例和输入输出参数的规范性等;未通过检查的业务组件将不加入候选业务组件推荐列表;
S2.1.3:通过合规检查的业务组件将通过业务组件排序算法进行排序。该算法可以采用基于规则、基于机器学习、基于深度学习的方式实现;其中基于规则的方式例如首先根据是否有调用以及调用次数对业务组件进行排序,然后把组件用途描述较为完整的排在前面,缺少用途描述的排在后面等;而基于深度学习的方案要求有大量的数据进行模型训练,在当前阶段业务组件数量不多的情况下效果并不明显,因此本发明采用基于机器学习的方案,例如采用逻辑回归分类算法进行排序。由标注人员对每个业务组件依据组件的元数据信息标注为推荐或者不推荐,并对同一个业务组件都交叉标注,而后采用逻辑回归算法学习标注数据,得到推荐的概率,根据概率排序业务组件,其他机器学习算法如随机森林、支持向量机等也一样可实现该功能;
排序后的业务组件作为候选业务组件列表输入多模态业务组件推荐算法中;
S2.2.1:从用户当前所处的业务系统页面中抽取页面内容和信息,提取包括应用程序类型、页面图标和文字内容、鼠标指向当前元素的类型等;
S2.2.2:页面内容信息的聚合是将从不同途径获取的页面内容进行整合,例如从网页源码解析得到的信息、通过OCR方式读取图片文字得到的信息等;
S2.2.3:对页面内容信息进行加工,例如特征的离散化、归一化,对部分文本内容进行命名实体抽取,对图片进行分类等;经过加工后的页面信息将以结构化的格式,如JSON格式等提供给多模态业务组件推荐算法;
S3:推荐算法的预处理环节,获取候选业务组件推荐列表、结构化的实时页面信息以及静态的历史推荐信息、基础组件信息等,并进行规范化处理,统一作为推荐算法的特征输入;
S4:RPA组件推荐的核心算法部分,采用基于内容的推荐算法或组合推荐算法。组合推荐算法的实现上采用的是切换组合的方式,首先采用基于内容的推荐,即根据当前的实时页面信息、历史推荐情况等,从业务组件列表+基础组件列表中选择符合场景需求的TOPN个推荐结果,其中N为可设定的数值;具体的算法实现上可以采用基于机器学习的分类算法建模从页面信息+静态信息到推荐组件的映射,而后根据分类概率对推荐结果进行排序;然后在基于内容的推荐不能产生高质量(例如所有组件的分类概率均小于一定阈值)或足够数量的推荐结果时,尝试采用协同过滤算法根据用户信息进行组件推荐;
S5:对推荐的结果进行后处理,包括强业务规则的输入,例如在推荐概率相近的情况优先考虑业务组件等;
S6:推荐的结果将展示在推荐窗口中,用户根据自己的业务需要选择某个组件(业务组件或基础组件)后,如果是业务组件则弹出可视化组件属性配置界面,用户在界面上进一步确认要操作的界面元素等;
S7:经过用户确认的组件将添加到RPA流程中。
后续该流程可用于调试或实际执行,至此完成结合页面信息的RPA业务组件推荐过程,所推荐的业务组件可作为一个完整的模块在流程中执行完成特定的业务功能,例如登录网站等。
本发明提出了一种结合页面信息的RPA业务组件推荐方法、系统和装置,通过业务组件过滤器、页面信息抽取引擎和多模态业务组件推荐算法,能够在考虑更多组件类型、更多影响因素如实时页面信息的基础上,实现更精准的RPA组件推荐;同时设计了一个可视化的组件属性配置界面插件,让用户再次确认和调整组件涉及的元素,从而能够有效应对实际场景可能发生的元素变动的情况,进一步提升了所推荐的组件的稳定性和可靠性;上述两个方面使得本发明的推荐精度、用户体验上都更加出色。
本发明的创新点如下:
1.本发明创造性地提出了一种结合页面信息的RPA业务组件推荐方法、系统和装置,其中包含独特设计的业务组件过滤器、页面信息抽取引擎、多模态业务组件推荐算法和可视化组件属性配置页面插件;
2.本发明在RPA组件推荐领域提出了将业务组件加入到推荐列表的方法,通过业务组件过滤器和多模态业务组件推荐算法,将高质量的业务组件加入到推荐结果中,另一方面也将不容易推荐的逻辑类组件以业务组件的方式封装在内部,实现了更精准地推荐;
3.本发明在RPA组件推荐领域提出了结合实时页面信息的推荐方法,通过页面信息抽取引擎和多模态业务组件推荐算法将用户操作业务信息的实时页面信息加入到推荐中;
4.本发明提出了一个可视化的组件属性配置界面插件,借助人机协同的方式,让用户再次确认和调整元素,使得推荐的组件更加可靠并能够在实际运行时大幅提升成功率。
以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。
Claims (5)
1.结合页面信息的RPA业务组件推荐方法,其特征在于,包括如下步骤;
S1,获取各个业务组件的元数据信息,并进行过滤处理,输出一个经过排序的候选业务组件列表;
S2,抽取页面信息,并进行字段加工,获得结构化的页面信息数据;
S3,将候选业务组件列表和结构化的页面信息数据作为输入,并结合RPA的基础组件数据库信息,通过多模态业务组件推荐算法,输出经过排序的组件推荐列表;
S4,用户通过人机交互的形式,对所述组件推荐列表中的组件的属性进行编辑、配置和确认;
步骤S1包括如下步骤:
S11,从业务组件数据库中获取到各个业务组件的元数据信息,元数据信息包括组件的开发者信息、应用场景描述、输入参数、输出参数、属性参数、是否有测试用例、当前已被下载或调用次数和使用反馈信息;
S12,检查各个业务组件的元数据信息中是否含有至少一个测试用例;若业务组件元数据信息中不包含测试用例,则直接结束过滤,对应业务组件排除在候选业务组件列表外;若业务组件元数据信息中包含测试用例,则将检查对应业务组件输入输出的规范性和正确性,检查不通过的业务组件将被直接排除在候选业务组件列表外;
S13,经过步骤S11和步骤S12筛选的业务组件将根据业务组件描述的应用场景和组件的输入输出进行组件分类,并在同类业务组件之间进行排序;
S14,输出一个经过排序的候选业务组件列表;
步骤S2包括如下步骤:
S21,通过RPA的信息抽取工具和自定义的算法进行页面信息的抽取;所述页面信息包括应用程序的类型、页面功能、页面上的图标和文字信息以及页面上的图标类型;
S22,采用结合基于计算机视觉技术和光学字符识别技术的页面信息融合方法,将步骤S21中抽取的页面信息进行聚合;
S23,将聚合后的页面信息进行数据清洗、转换和结构化;
S24,将经过步骤S23处理后的页面信息保存为结构化的数据,作为多模态业务组件推荐算法的其中一个输入;
步骤S23具体包括如下步骤:
S231,页面信息中,对于应用程序类型的字符串类型将被编码为数值类型,用于表征不同应用程序的类型;
对于页面功能,采用基于机器学习的分类模型或基于分类规则映射的方式对应到具体的功能类别上,同时功能类别也将编码为数值类型;
对于页面上的图标和文字信息,将提取到的图标和文字信息进行自然语言处理中的关键词抽取或进行命名实体识别并提取出关键信息,完成修正页面功能的分类;
对于页面上的图标类型的判断,则将图标类型结构化为二值分类;
步骤S3包括如下步骤:
S31,预处理阶段:
所述预处理阶段具体为:获取并加载实时的结构化的页面信息数据,解析页面信息数据结构并处理为算法所需的多个字段;将候选业务组件列表和基础组件列表进行合并构成一个有序的组件候选集,并统一提取所有组件的描述信息,所述描述信息包括业务组件元数据;最后获取历史的组件推荐信息,包括同用户、同场景下的组件选择结果;
S32,算法推荐阶段:
所述算法推荐阶段具体为:采用基于内容的推荐为主,结合多种推荐的组合推荐算法,根据步骤S31预处理后的数据,输出一个经过排序的组件推荐列表;
所述基于内容的推荐在商品推荐上指从关于商品内容的特征描述中得到用户的兴趣资料,即从组件的特征描述中得到用户的推荐意向度;
所述多种推荐包括基于协同过滤的推荐方式,用于根据用户信息进行组件推荐;
所述组合推荐算法在算法结构上,采用基于机器学习、深度学习的算法;
S33,后处理阶段:
所述后处理阶段具体为:对输出的组件推荐列表进行精排和修正,同时将推荐的结果和用户反馈信息合并处理,并作为每次的推荐结果/采纳结果数据存储到数据库中。
2.根据权利要求1所述的结合页面信息的RPA业务组件推荐方法,其特征在于,步骤S12中,规范性检查包括业务组件的变量类型是否在RPA支持的范围内,参数的上下限是否有约定,非法输入是否有进行处理;正确性检查则利用测试用例模拟输入,检查输出是否为组件描述的预期输出。
3.根据权利要求1所述的结合页面信息的RPA业务组件推荐方法,其特征在于,步骤S13过程中,所述同类业务组件之间进行排序的依据为开发者信息、当前已被下载或调用次数、使用反馈信息和组件描述详细程度;具体排序算法采用基于人工智能的机器学习算法或预先设定的排序规则逻辑。
4.根据权利要求1所述的结合页面信息的RPA业务组件推荐方法,其特征在于,步骤S4中,对组件的属性进行编辑、配置和确认包括对界面元素的拾取、对界面元素的配置和在界面上确认要操作的界面元素。
5.结合页面信息的RPA业务组件推荐系统,用于实现权利要求1-4任一项所述的结合页面信息的RPA业务组件推荐方法,其特征在于,所述结合页面信息的RPA业务组件推荐系统包括:
业务组件过滤器,用于获取各个业务组件的元数据信息,并进行过滤处理,输出一个经过排序的候选业务组件列表;
页面信息抽取引擎,用于抽取页面信息,并进行字段加工,获得结构化的页面信息数据;
多模态业务组件推荐算法模块,用于将候选业务组件列表和结构化的页面信息数据作为输入,并结合RPA的基础组件数据库信息,通过多模态业务组件推荐算法,输出经过排序的组件推荐列表;
可视化属性配置界面插件,用于使用户通过人机交互的形式,对组件推荐列表中的组件的属性进行编辑、配置和确认。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310407729.XA CN116127203B (zh) | 2023-04-17 | 2023-04-17 | 结合页面信息的rpa业务组件推荐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310407729.XA CN116127203B (zh) | 2023-04-17 | 2023-04-17 | 结合页面信息的rpa业务组件推荐方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116127203A CN116127203A (zh) | 2023-05-16 |
CN116127203B true CN116127203B (zh) | 2023-07-25 |
Family
ID=86304876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310407729.XA Active CN116127203B (zh) | 2023-04-17 | 2023-04-17 | 结合页面信息的rpa业务组件推荐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116127203B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117196546A (zh) * | 2023-11-08 | 2023-12-08 | 杭州实在智能科技有限公司 | 基于页面状态理解和大模型驱动的rpa流程执行系统及方法 |
CN117271782B (zh) * | 2023-11-22 | 2024-02-23 | 天津华来科技股份有限公司 | Sdk组件的动态集成方法及系统 |
CN117370635B (zh) * | 2023-12-08 | 2024-03-15 | 杭州实在智能科技有限公司 | 用于rpa网页内容提取与处理的方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051354A (zh) * | 2021-04-09 | 2021-06-29 | 金蝶软件(中国)有限公司 | 一种基于动态配置的线上寻源方法、装置和计算机设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100412870C (zh) * | 2006-07-17 | 2008-08-20 | 北京航空航天大学 | 采用元推荐引擎的门户个性化推荐服务方法和系统 |
JP5514486B2 (ja) * | 2009-08-03 | 2014-06-04 | 株式会社日立製作所 | Webページの関連性抽出方法、装置、及びプログラム |
CN102902740B (zh) * | 2012-09-12 | 2015-05-20 | 北京航空航天大学 | Web服务组合推荐方法及设备 |
CN109165351B (zh) * | 2018-08-27 | 2021-11-26 | 成都信息工程大学 | 一种基于语义的服务构件搜索推荐方法 |
CN113536098A (zh) * | 2020-04-15 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、设备及计算机可读存储介质 |
CN113791718A (zh) * | 2021-09-14 | 2021-12-14 | 厦门海晟融创信息技术有限公司 | 一种基于业务事务时序及权限体系推荐菜单的方法 |
CN113961187B (zh) * | 2021-12-22 | 2022-04-22 | 杭州实在智能科技有限公司 | Rpa组件智能推荐方法及系统 |
CN115629743A (zh) * | 2022-10-17 | 2023-01-20 | 阿里云计算有限公司 | 服务组件的编排方法、服务调度方法、装置、电子设备及存储介质 |
-
2023
- 2023-04-17 CN CN202310407729.XA patent/CN116127203B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051354A (zh) * | 2021-04-09 | 2021-06-29 | 金蝶软件(中国)有限公司 | 一种基于动态配置的线上寻源方法、装置和计算机设备 |
Non-Patent Citations (2)
Title |
---|
"Personalized News Filtering and Summarization on the Web";Xindong Wu等;《 2011 IEEE 23rd International Conference on Tools with Artificial Intelligence》;第1-4页 * |
李汉等."浅谈基于组件的业务建模".《2008'中国信息技术与应用学术论坛论文集(二)》.2008,第355-356页. * |
Also Published As
Publication number | Publication date |
---|---|
CN116127203A (zh) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116127203B (zh) | 结合页面信息的rpa业务组件推荐方法及系统 | |
JP7398068B2 (ja) | ソフトウェアテスト | |
US11249730B2 (en) | System and method for converting actions based on determined personas | |
US8271541B2 (en) | Method and apparatus for developing composite applications | |
CN113391871B (zh) | 一种rpa元素智能融合拾取的方法与系统 | |
US11860968B2 (en) | System and method for integrating user feedback into website building system services | |
CN110941467A (zh) | 数据处理方法、装置及系统 | |
KR20090120481A (ko) | 소프트웨어 자산 기반 솔루션을 개발하기 위한 일관된 방법, 시스템 및 컴퓨터 프로그램 | |
CN113255614A (zh) | 一种基于视频分析的rpa流程自动生成方法与系统 | |
KR20150058237A (ko) | 간략화된 지식공학 방법 및 시스템 | |
CN111680165B (zh) | 信息匹配方法、装置、可读存储介质和电子设备 | |
CN115964027B (zh) | 基于人工智能的桌面嵌入式rpa流程配置系统及方法 | |
WO2020264053A1 (en) | System and method for employing constraint based authoring | |
CN113553268A (zh) | 一种ai智能软件测试方法 | |
Baulé et al. | Automatic code generation from sketches of mobile applications in end-user development using Deep Learning | |
CN113296769A (zh) | 数据处理方法、视觉稿的处理方法、系统及电子设备 | |
Tanaka et al. | Selenium based testing systems for analytical data generation of website user behavior | |
Nabuco et al. | Inferring ui patterns with inductive logic programming | |
CN117873478B (zh) | 一种基于模块化组件的应用程序界面自定义方法 | |
CN111125587B (zh) | 网页结构优化方法、装置、设备和存储介质 | |
US11790892B1 (en) | Voice-driven application prototyping using machine-learning techniques | |
Serban | Toward effective support for data mining using intelligent discovery assistance | |
Salvi | Web UI code generation: a transformer-based model applied to real-world screenshots | |
Huang et al. | Generative Approach to the Automation of Artificial Intelligence Applications | |
Djaber et al. | AI as a Co-Engineer: A Case Study of ChatGPT in Software Lifecycle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |