CN110244941A - 任务开发方法、装置、电子设备及计算机可读存储介质 - Google Patents
任务开发方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110244941A CN110244941A CN201910523322.7A CN201910523322A CN110244941A CN 110244941 A CN110244941 A CN 110244941A CN 201910523322 A CN201910523322 A CN 201910523322A CN 110244941 A CN110244941 A CN 110244941A
- Authority
- CN
- China
- Prior art keywords
- task
- tree
- node
- process tree
- drawn
- 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.)
- Granted
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种任务开发方法、装置、电子设备及计算机可读存储介质,涉及计算机技术领域。该方法包括:获取在对应系统中绘制的流程树,流程树包括多个功能节点,任一功能节点具备对应的功能类型,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树。本申请实施例实现了降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种任务开发方法、装置、电子设备及计算机可读存储介质。
背景技术
随着信息技术的发展,计算机开发领域也随之发展,在执行某一任务之前,程序开发人员需要基于任务进行代码编写,并且在代码编写完成后,通过运行编写的代码才可以执行该任务,例如在执行话费查询任务之前,程序开发人员需要编写话费查询任务对应的代码,在代码编写完成之后,才可以执行话费查询任务,为用户查询话费。
然而,针对每个任务,程序开发人员需要针对每个任务编写对应的代码,在代码编写完成之后才可以通过执行编码后的代码以执行对应的任务,从而导致能够执行任务的复杂度较高,进而导致程序开发人员的开发工作量较大。
发明内容
本申请提供了一种任务开发方法、装置、电子设备及计算机可读存储介质,可以解决执行任务的复杂度较高以及程序开发人员的开发工作量较大的问题。技术方案如下:
第一方面,提供了一种任务开发方法,该方法包括:
获取在对应系统中绘制的流程树,流程树包括多个功能节点,任一功能节点具备对应的功能类型;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树。
在一种可能的实现方式中,该方法还包括:方法还包括:当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与请求信息对应执行结果。
在一种可能的实现方式中,当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与请求信息对应执行结果,包括:
当接收到用户输入的任务执行请求信息时,对用户输入的任务执行请求信息进行自然语言处理,得到任务执行请求消息对应的请求意图;
基于任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与任务执行请求信息对应的执行结果。
在一种可能的实现方式中,功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
在一种可能的实现方式中,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,包括:
通过后端引擎解析XML格式的流程树,得到解析结果;
通过后端引擎并基于解析结果,生成可执行的任务树。
在一种可能的实现方式中,在对应的系统中绘制流程树的方式,包括:
接收用户输入的流程树绘制请求消息,流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树;
基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树。
在一种可能的实现方式中,基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树,包括:
基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息;
基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系;
基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树;
功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
在一种可能的实现方式中,该方法还包括:
当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,基于任务执行请求消息绘制对应的流程树;
基于绘制的与请求消息对应的流程树生成对应的任务树。
在一种可能的实现方式中,方法还包括:
当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,记录任务执行请求消息对应的请求意图;
当满足预设条件时,从记录信息中获取待生成任务树的请求意图;
在对应的系统中绘制待生成任务树的请求意图对应的流程树,并基于绘制的待生成任务树的请求意图对应的流程树,生成对应的任务树;
预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
在一种可能的实现方式中,任一功能节点具有至少一个变量;
任一变量为全局变量或者局部变量。
在一种可能的实现方式中,执行对应的任务树,包括:
按照栈结构的先进后出模式执行对应的任务树。
第二方面,提供了一种任务开发装置,该装置包括:
第一获取模块,用于获取在对应系统中绘制的流程树,流程树包括多个功能节点,任一功能节点具备对应的功能类型;
第一生成模块,用于基于第一获取模块获取到的在对应系统中绘制的流程树,生成可执行的任务树。
在一种可能的实现方式中,该装置还包括:调用以及执行模块,其中,
调用以及执行模块,用于当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与请求信息对应执行结果。
在一种可能的实现方式中,调用以及执行模块包括:自然语言处理单元、调用以及执行单元;
自然语言处理单元,用于当接收到用户输入的任务执行请求信息时,对用户输入的任务执行请求信息进行自然语言处理,得到任务执行请求消息对应的请求意图;
调用以及执行单元,用于基于自然语言处理单元处理得到的任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与任务执行请求信息对应的执行结果。
在一种可能的实现方式中,功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
在一种可能的实现方式中,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
第一生成模块包括:解析单元以及生成单元;
解析单元,用于通过后端引擎解析XML格式的流程树,得到解析结果;
生成单元,用于通过后端引擎并基于解析单元的解析结果,生成可执行的任务树。
在一种可能的实现方式中,该装置还包括:第一绘制模块;
第一绘制模块,用于接收用户输入的流程树绘制请求消息,以及基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树;
流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树。
在一种可能的实现方式中,第一绘制模块,具体用于基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息,基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树;
功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
在一种可能的实现方式中,该装置还包括:第二绘制模块以及第二生成模块,其中,
第二绘制模块,用于当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,基于任务执行请求消息绘制对应的流程树;
第二生成模块,用于基于第二绘制模块绘制的与请求消息对应的流程树生成对应的任务树。
在一种可能的实现方式中,装置还包括:记录模块、第二获取模块、第三绘制模块、第三生成模块,其中,
记录模块,用于当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,记录任务执行请求消息对应的请求意图;
第二获取模块,用于当满足预设条件时,从记录信息中获取待生成任务树的请求意图;
第三绘制模块,用于在对应的系统中绘制第二获取模块获取到的待生成任务树的请求意图对应的流程树;
第三生成模块,用于基于第三绘制模块绘制的待生成任务树的请求意图对应的流程树,生成对应的任务树;
预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
在一种可能的实现方式中,任一功能节点具有至少一个变量;
任一变量为全局变量或者局部变量。
在一种可能的实现方式中,调用以及执行模块,具体用于按照栈结构的先进后出模式执行对应的任务树。
第三方面,提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据第一方面或者第一方面任一可能的实现方式所示的任务开发方法。
第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面或者第一方面任一可能的实现方式所示的任务开发方法。
本申请提供的技术方案带来的有益效果是:
本申请提供了一种任务开发方法、装置、电子设备及计算机可读存储介质,与现有技术中针对每个任务,程序开发人员需要针对每个任务编写对应的代码,并执行编码好的代码以执行该任务相比,本申请通过获取在对应系统中绘制的流程树,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型;即本申请中通过绘制的流程树生成可执行的任务树,以执行相应的任务,并不需要编码可执行的代码程序,从而可以降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种任务开发方法的流程示意图;
图2为本申请实施例提供的一种任务开发装置的结构示意图;
图3为本申请实施例提供的一种任务开发的电子设备的结构示意图;
图4为账单查询的流程树对应的功能节点以及节点信息的示意图;
图5为账单查询任务的流程树的示意图;
图6为对账单查询任务的流程树进行测试的示意图;
图7为以账单查询任务的任务树为例介绍系统内账单查询业务的任务树的表现形式的示意图;
图8为以账单查询任务树为例,介绍栈执行过程的示意图;
图9为按照栈结构的先进后出模式执行对应的任务树的示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例提供了一种任务开发方法,如图1所示,该方法包括:
步骤S101、获取在对应系统中绘制的流程树。
其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型。
本申请实施例的另一种可能的实现方式,功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
下述介绍系统内各个节点的作用:
·管理节点
1.任务树中的非叶子节点;
2.管理叶子节点的执行策略;
·提示音节点
1.输出提示信息,不等待用户输入;
·请求用户输入节点
1.提示用户应该提供的槽位,并填充槽位;
·期望节点
1.非必须槽位的获取节点;
·接口调用节点
1.支持HTTP,LUA,内置API的调用;
·流程调用节点
1.跳转到其他流程;
·循环边节点
1.流程间节点的循环。
本申请实施例的另一种可能的实现方式,获取到的在对应系统中绘制的流程树为可扩展标记语言(eXtensible Markup Language,XML)格式,当然也可以为其它格式,在本申请实施例中并不做限定。
步骤S102、基于获取到的在对应系统中绘制的流程树,生成可执行的任务树。
对于本申请实施例,在获取用户输入的请求消息并确定用户意图之后,获取在对应系统中绘制的流程树之后,基于获取到的流程树,生成可执行的任务树,以便执行与任务树对应的流程。
本申请实施例提供了一种任务开发方法,与现有技术中针对每个任务,程序开发人员需要针对每个任务编写对应的代码,并执行编码好的代码以执行该任务相比,本申请实施例通过获取在对应系统中绘制的流程树,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型;即本申请实施例中通过绘制的流程树生成可执行的任务树,以执行相应的任务,并不需要编码可执行的代码程序,从而可以降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
本申请实施例的另一种可能的实现方式,步骤S102具体可以包括:步骤S1021(图中未示出)以及步骤S1022(图中未示出),其中,
步骤S1021、通过后端引擎解析XML格式的流程树,得到解析结果。
步骤S1022、通过后端引擎并基于解析结果,生成可执行的任务树。
对于本申请实施例,在流程可视化系统中根据拖拽的流程树生成XML格式来表示,并将XML格式的流程树传到后端引擎,后端引擎通过解析XML格式的流程树,生成真正可执行的任务树,以便执行与任务树对应的流程。
下面以账单查询任务的任务树为例介绍系统内账单查询业务的任务树的表现形式,如图7所示,其中,根节点的子节点为主菜单节点以及账单查询节点,主菜单的子节点为欢迎语节点,账单查询的子节点为获取年数据节点以及判断月份是否在范围内节点,获取数据的子节点为请求月份节点以及获取月份是否在可查询范围节点,判断月份是否在范围内节点的子节点包括:月份在范围内节点以及月份不再范围内节点,月份在范围内节点包括:获取账单节点、账单播报节点以及返回主菜单节点,月份不在范围内节点包括:提示月份不合法节点以及返回主菜单节点。
本申请实施例的一种可能的实现方式,该方法还包括:步骤Sa(图中未示出),其中,
步骤Sa、当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与请求信息对应执行结果。
对于本申请实施例,步骤Sa可以在步骤S102之后执行,也可以不依赖步骤S102执行。在本申请实施例中不做限定。
对于本申请实施例,用户输入的请求消息不同,调用并执行的任务树也不相同。
例如,用户输入的请求信息为话费查询请求信息时,调用并执行的任务树为话费查询请求对应的任务树;用户输入的请求信息为订餐请求信息时,调用并执行的任务树为订餐请求对应的任务树。
本申请实施例的另一种可能的实现方式,步骤Sa具体可以包括:步骤Sa1(图中未示出)以及步骤Sa2(图中未示出),其中,
步骤Sa1、当接收到用户输入的任务执行请求信息时,对用户输入的任务执行请求信息进行自然语言处理,得到任务执行请求消息对应的请求意图。
步骤Sa2、基于任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与任务执行请求信息对应的执行结果。
对于本申请实施例,当接收到用户输入的任务执行请求信息时,调用NLU系统进行自然语言处理,得到任务执行请求消息对应的请求意图,基于确定出的意图,确定该意图对应的任务树,然后调用并执行该意图对应的任务树,得到与任务执行请求信息对应的执行结果。
本申请实施例的一种可能的实现方式,执行对应的任务树,包括:按照栈结构的先进后出模式执行对应的任务树。
对于本申请实施例,按照栈结构的先进后出模式执行对应的任务树如图9所示,包括:
1、当创建任务树之后,将任务树的根节点加入执行栈;
2、检查执行栈中的节点,并将处于完成状态的节点从执行栈中移除;
3、如果接收到用户的任务执行请求消息,将对应的任务树压入执行栈;
4、取出栈顶节点并执行该节点;
5、判断4中节点的执行结果:
若执行结果为继续执行(Continue),继续执行4(取出栈顶节点并执行该节点);
若执行结果为请求输入(Request),则请求用户输入,并在接收到用户输入之后,跳转至2。
下面以账单查询任务树为例,介绍栈执行过程,如下所示:
如图8所示,先将根节点压入栈,然后将主菜单节点压入栈,然后将主菜单节点压入栈,再讲欢迎语节点压入栈,然后将欢迎语节点以及主菜单节点等处于完成态的节点移除,然后再依次将账单查询节点以及获取数据节点以及请求数据节点压入栈,然后将请求月份节点移除并将获取月份是否在可查询范围节点压入栈。其中,输入输出分别为:
系统(欢迎语):欢迎使用智能语音导航系统,XX可以为您查询办理各种业务;
用户(输入):帮我查询下月话费账单;
系统(输出):请问您要查询几月份的账单;
用户(输入):上个月的;
系统(输出):您11月01日至11月31日共消费58元,其中套餐费38元,语音费20元。
其中,期望获取数据包括:
账单查询数据以及获取月份数据。
本申请实施例的另一种可能的实现方式,在对应的系统中绘制流程树的方式,包括:步骤Sb(图中未示出)以及步骤Sc(图中未示出),其中,
步骤Sb、接收用户输入的流程树绘制请求消息。
其中,流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树。
对于本申请实施例,用户输入的流程树绘制请求消息可以为文本格式,也可以为语音格式。在本申请实施例中不做限定。
对于本申请实施例,当用户输入的流程树绘制请求消息为文本格式时,在接收到用户输入的流程树绘制请求消息时,将用户输入的流程树绘制请求消息进行自然语言处理,确定流程树绘制请求消息对应的流程树绘制意图;当用户输入的流程树绘制请求消息为语音格式时,在接收到用户输入的流程树绘制请求消息之后,进行语音-文本转换,并将转换成文本格式后进行自然语音处理,确定流程树绘制请求消息对应的流程树绘制意图。
当然,用户也可以直接在系统中绘制流程树。
步骤Sc、基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树。
对于本申请实施例,基于流程树绘制请求消息对应的流程树绘制意图在系统的系统中直接绘制对应的流程树。
例如,如图5所示,在系统中绘制的账单查询任务的流程树。
对于本申请实施例,在流程树编辑保存之后,可以实时测试检验流程执行效果,以账单查询任务的流程树为例进行介绍,如图6所示,当用户在测试界面输入“帮我查询一下月话费账单”,系统输出“请问,您要查询几月份的话费?”,用户输入“上个月的”,系统输出“您11月01至11月31日共消费58元,其中套餐费38元,语音费20元.”以及“请问,还有什么可以帮您?”,以实现账单查询任务。
本申请实施例的另一种可能的实现方式,步骤Sc具体可以包括:步骤Sc1(图中未示出)、步骤Sc2(图中未示出)以及步骤Sc3(图中未示出),其中,
步骤Sc1、基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息。
对于本申请实施例,基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息的方式如上所述,在此不再赘述。
步骤Sc2、基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系。
其中,功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
例如,如图4所示,待绘制的流程树对应的任务信息为“账单查询”,所需的功能节点包括:开始节点、请求输入节点、接口调用节点、判断节点、接口调用节点、提示音节点以及流程调用节点;以请求输入节点为例,介绍功能节点信息,节点名称可以为“请求月份”,变量存储位置可以为“默认”,提示音信息中默认插入变量可以为“请问您要查询几月份的账单”,首次拒识对应的插入变量可以为“请简短表示您的意图,您可以说5月”;连续拒识对应的插入变量可以为“对不起,XX无法识别您的意图。”,超时对应的插入变量可以为“您好,您还在听吗?”,“month”对应的匹配槽位为“*[month],![number]”,节点注释信息可以为“请求用户输入要查询的账单的月份”。
步骤Sc3、基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树。
对于本申请实施例,流程树可以通过可视化流程配置工具进行绘制,具体地,可视化流程配置工具通过使用图形化的编辑界面,将工作流程以图形的方式展现给用户,使用者也可以通过可视化编辑器根据具体的业务需求将特定的业务流程反映在图形当中,因此对于使用者来说,根本不需要知道底层的工作模式就可以很轻松的完成定制工作流程的制作。在这部分中,主要通过使用自定义的节点,以及在节点的属性窗体中进行相应属性的设置来完成工作流程的制作。
功能:可视化编辑支持各种复杂流程,判断,循环,流程间调用等,部分节点提供调用自编辑的LUA脚本的功能,引擎同时还提供了一组与领域无关的基本会话策略,如错误处理、超时处理等;以及各种通用对话机制,如帮助、重听、取消、重新启动等;支持用户自定义槽位抽取,添加专用名词。
对于本申请实施例,可视化界面功能图(绘制的流程图)可以如图4所示,下面以图4为例介绍各个功能节点,具体地,
对于本申请实施例,管理节点为非叶子节点,并用于管理叶子节点的执行策略。
对于本申请实施例,请求输入节点,用于提示用户需要输入的信息,并解析自然语言理解(Natural Language Understanding,NLU)结果,具体地,请求输出节点包括:
1.节点名称;
2.提示音配置,『默认』表示只要节点触发就播报的内容,如果需要配置随机播报的多个默认提示音,可点击输入框右侧的+号添加,『首次拒识』表示第一次拒识播报的内容,『连续拒识』表示2次以上拒识播报的内容,『超时』表示用户超时没有输入提示的内容。
3.槽位匹配,相当于新建一个变量用于存储用户的输入,可以根据用户将要输入的信息类型选择变量类型,比如月份类型、金额类型等。前面的输入框为槽位别名(用户自由起名),后面的槽位框用来选择槽位(可在【机器人->配置->编辑专有名词】中配置)。
对于本申请实施例,期望节点,解析NLU结果,该节点可理解为期望获取的信息,而请求用户输入节点可理解为必须获取的信息,包括:
1.节点名称;
2.期望变量,相当于新建一个变量,用于获得用户的输入,根据用户的输入信息可以指定相应的变量类型如:日期、金额等,前面的输入框为槽位别名(用户自由起名),后面的槽位框用来选择槽位(可在【机器人->配置->编辑专有名词】中配置)。
请求用户输入节点中增加用户自定义规则匹配槽位,例如用户自定义规则表达式,以匹配用户文本中的邮箱,验证码和/或手机号等规则化槽位。
对于本申请实施例,提示音节点,通常用于播放提示音,用来告知用户一段信息,其中提示音节点包括:节点名称、提示音内容编辑框并且可以具备高级功能,该内容编辑框支持纯文本编辑,以及变量的填充,具体地,变量点击【插入变量】选择,选中后在内容末尾添加固定格式的变量字符串(以大括号{}分隔,大括号内的内容用户无需编辑);高级功能,用于执行编码的LUA脚本,获取文本输出。
对于本申请实施例,节口调用节点,用于从外部接口获得数据或者执行某些操作,包含节点名称以及调用方式,其中调用方式包括:超文本传输协议(Hyper Text TransferProtocol,HTTP)、内置应用程序编程接口(Application Programming Interface,API)以及LUA脚本。具体地,
a)HTTP:
i.调用接口选择,接口用来从服务端获得数据或者执行操作;对于已经保存的接口可以点击『选择接口』来获得,如果接口是新的,可以直接点击『新建接口』创建一个,新建接口需要指定接口统一资源定位符(Uniform Resource Locator,URL)、请求方式、输入、输出参数,通常需要开发组给出接口信息,业务人员只需要按照格式录入即可。
ii.输入参数配置,输入参数和接口名称是对应的,用户选择调用接口之后自动列出需要传入的参数列表,后台会提供接口给出:”接口-输入参数-输出参数”的对应关系。用户只需要配置接口输入参数的值,参数值支持值传入与变量传入。
b)内置API:
i.系统内置了一些常用的处理函数;
c)LUA脚本:
i.简单逻辑处理,如数字,字符串的一些常用处理,及规则匹配可以使用LUA脚本。
对于本申请实施例,流程调用接点,用于调用已存在的流程,包括:
1.节点名称;
2.引用类型,支持2种:
a)软连接,表示的是引用已存在的流程,相当于一个超链接;
b)硬连接,表示的是把已存在的流程代码复制一份,放到当前流程文件中;
3.调用流程名,需要选择引用的流程,可支持模糊筛选。
对于本申请实施例,判断节点,用于进行分支判断选择,包括:
1.节点名称;
2.判断条件,**在判断节点的后续连接线属性中配置**。配置变量和给定值的判断条件,如果判断条件不止一个可以通过逻辑操作符AND和OR连接。
本申请实施例的另一种可能的实现方式,任一功能节点具有至少一个变量;任一变量为全局变量或者局部变量。
本申请实施例的另一种可能的实现方式,在系统中添加会话模型,该会话模型用于根据用户输入信息的置信度(包括:自动语音识别(Automatic Speech Recognition,ASR)语音转文本的置信度以及自然语言理解(Natural Language Understanding,NLU)解析置信度)、重复次数、话术情感信息以及内容信息中的至少一项,选择不同的话术。
其中,话术包括以下至少一项:
要求用户重说话术;要求用户重新组织话术;要求用户使用短话术;要求用户使用短话术并举例可选回复;询问用户是否重启会话;为用户给出更加详细的解释;显式确认;隐式确认;请求用户谅解话术(少说话,少责备)。
例如,某些槽位或者某些节点需要用户输入信息时,可以基于用户输入的信息确定ASR语音转文本处理,以及NLU解析置信度处理,并基于处理结果,分别确定对应的置信度,然后基于确定出的置信度,并通过对应的模型,得到对应的话术。
当然,进行ASR语音转文本处理、NLU解析置信度处理所使用的模型与基于置信度匹配对应的话术所使用的模型,可以为同一个模型,还可以为不同的模型。在本申请实施例中不做限定。
以话费查询业务中请求用户输入节点为例介绍话术选择,当用户通过语音输入查询话费的月份为“前几个月份”,则通过ASR语音转文本处理、NLU解析置信度处理对应的置信度比较低,则可以选择话术为“要求用户重说话术”等,以请求用户重新输入待查询话费的月份;当用户通过语音输入查询话费的月份为“3月份”,则通过ASR语音转文本处理、NLU解析置信度处理对应的置信度比较高,则可以选择话术为“显式话术”,例如通过语音输出“请确认是否查询3月份的话费”。
对于本申请实施例,通过ASR语音转文本处理的置信度,和/或NLU解析置信度处理置信度,选择合适的话术,可以提高任务处理的准确度,进而可以提升用户体验。例如,ASR转文本置信度较低时,选择的话术为:要求用户重新话术;信息的置信度较低时,选择的话术为显式话术;信息的置信度较高时,选择的话术为隐式话术;信息的置信度高时,模型不做处理。
本申请实施例的另一种可能的实现方式,该方法还包括:步骤Sd(图中未示出)以及步骤Se(图中未示出),其中,
步骤Sd、当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,基于任务执行请求消息绘制对应的流程树。
对于本申请实施例,系统可以已绘制的流程树进行存储,当检测到用户输入的任务执行请求消息后,可以先查找是否存在于任务执行请求消息相对应的任务树,若存在,直接调用并执行该任务树;若不存在,则基于任务执行请求消息,确定任务执行意图,并基于任务执行意图绘制对应的流程树,具体的绘制方式详见步骤Sc(步骤Sc1-Sc4),在此不再赘述。
例如,用户输入的任务执行请求消息为“车票预订”,当检测到系统中并未存储与“车票预订”对应的任务树,则绘制与“车票预订”对应的流程树。
步骤Se、基于绘制的与请求消息对应的流程树生成对应的任务树。
具体生成对应流程树的方式详见步骤S102(步骤S1021-步骤S1022),在此不再赘述。
对于本申请实施例,当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,基于任务执行请求消息绘制对应的流程树,并基于绘制的与请求消息对应的流程树生成对应的任务树,即在未查找到与用户意图相匹配的任务树,可以根据用户的意图进行绘制以生成与用户意图相匹配的任务树,而不是直接拒绝用户的请求,从而可以扩大可执行任务的范围,进而可以进一步地提升用户体验。
本申请实施例的另一种可能的实现方式,该方法还包括:步骤Sf(图中未示出)、步骤Sg(图中未示出)以及步骤Sh(图中未示出),其中,
步骤Sf、当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,记录任务执行请求消息对应的请求意图。
对于本申请实施例,当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,可以不马上绘制对应的流程树,而是先记录任务执行请求消息对应的请求意图。
对于本申请实施例,当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,可以调用系统默认流程,提示用户暂不支持该意图,并记录该任务执行请求消息对应的请求意图。
步骤Sg、当满足预设条件时,从记录信息中获取待生成任务树的请求意图。
其中,预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
步骤Sh、在对应的系统中绘制待生成任务树的请求意图对应的流程树,并基于绘制的待生成任务树的请求意图对应的流程树,生成对应的任务树。
例如,每隔一个月,可以从记录信息中获取待生成任务树的请求意图,然后在对应的系统中绘制与记录信息中记录的请求意图相对应的流程树,并基于绘制的流程树生成对应的任务树。
又例如,车票预订对应的任务树的请求意图达到预设数量,则在对应的系统中绘制车票预订对应的流程树,并基于绘制的车票预订对应的流程树生成对应的任务树。
又例如,当接收到车票预订对应任务树的生成请求时,绘制车票预订对应的流程树,并基于绘制的车票预订对应的流程树生成对应的任务树。
对于本申请实施例,由绘制的流程树生成任务树的方式,详见上述步骤S102(步骤S1021-步骤S1022)对应的具体实施方式,在此不再赘述。
对于本申请实施例,当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,记录任务执行请求消息对应的请求意图,并在满足预设条件时,从记录信息中获取待生成任务树的请求意图,并绘制对应的流程树,以生成对应的任务树,从而可以使得用户(其它用户)请求相同意图的任务树时,可以执行对应的任务,得到请求结果,进而可以进一步地提升用户体验。
上述实施例介绍了任务开发方法,在上述方法实施例的基础上还介绍了一种任务开发装置,具体如下所示:
本申请实施例提供了一种任务开发装置,如图2所示,该任务开发装置20可以包括:第一获取模块201、第一生成模块202,其中,
第一获取模块201,用于获取在对应系统中绘制的流程树。
其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型。
第一生成模块202,用于基于第一获取模块201获取到的在对应系统中绘制的流程树,生成可执行的任务树。
本申请实施例的一种可能的实现方式,该装置20还包括:调用以及执行模块,其中,
调用以及执行模块,用于当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与请求信息对应执行结果。
本申请实施例的另一种可能的实现方式,调用以及执行模块包括:自然语言处理单元、调用以及执行单元;
自然语言处理单元,用于当接收到用户输入的任务执行请求信息时,对用户输入的任务执行请求信息进行自然语言处理,得到任务执行请求消息对应的请求意图。
调用以及执行单元,用于基于自然语言处理单元处理得到的任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与任务执行请求信息对应的执行结果。
本申请实施例的另一种可能的实现方式,功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
本申请实施例的另一种可能的实现方式,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
第一生成模块202包括:解析单元以及生成单元;
解析单元,用于通过后端引擎解析XML格式的流程树,得到解析结果。
生成单元,用于通过后端引擎并基于解析单元的解析结果,生成可执行的任务树。
本申请实施例的另一种可能的实现方式,该装置20还包括:第一绘制模块,其中,
第一绘制模块,用于接收用户输入的流程树绘制请求消息,以及基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树。
其中,流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树。
本申请实施例的另一种可能的实现方式,第一绘制模块,具体用于基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息,基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树。
其中,功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
本申请实施例的另一种可能的实现方式,装置20还包括:第二绘制模块以及第二生成模块,其中,
第二绘制模块,用于当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,基于任务执行请求消息绘制对应的流程树。
第二生成模块,用于基于第二绘制模块绘制的与请求消息对应的流程树生成对应的任务树。
本申请实施例的另一种可能的实现方式,装置20还包括:记录模块、第二获取模块、第三绘制模块、第三生成模块,其中,
记录模块,用于当基于用户输入的任务执行请求消息未查找到与任务执行请求消息相匹配的任务树时,记录任务执行请求消息对应的请求意图。
第二获取模块,用于当满足预设条件时,从记录信息中获取待生成任务树的请求意图。
第三绘制模块,用于在对应的系统中绘制第二获取模块获取到的待生成任务树的请求意图对应的流程树。
对于本申请实施例,第一绘制模块201、第二绘制模块以及第三绘制模块可以为相同的绘制模块,也可以均为不同的绘制模块,也可以任意两个为相同的绘制模块。在本申请实施例中不做限定。
第三生成模块,用于基于第三绘制模块绘制的待生成任务树的请求意图对应的流程树,生成对应的任务树。
其中,预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
对于本申请实施例,第一生成模块202、第二生成模块以及第三生成模块可以均为相同的生成模块,也可以均为不同的生成模块,也可以任意两个为相同的生成模块。在本申请实施例中不做限定。
本申请实施例的另一种可能的实现方式,任一功能节点具有至少一个变量;任一变量为全局变量或者局部变量。
本申请实施例的另一种可能的实现方式,调用以及执行模块,具体用于按照栈结构的先进后出模式执行对应的任务树。
本申请实施例提供了一种任务开发装置,与现有技术中针对每个任务,程序开发人员需要针对每个任务编写对应的代码,并执行编码好的代码以执行该任务相比,本申请实施例通过获取在对应系统中绘制的流程树,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型;即本申请实施例中通过绘制的流程树生成可执行的任务树,以执行相应的任务,并不需要编码可执行的代码程序,从而可以降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
上述实施例从虚拟模块的角度介绍了任务开发装置,下述从实体模块的角度介绍一种电子设备,具体如下所示:
本申请实施例提供了一种电子设备,如图3所示,图3所示的电子设备3000包括:处理器3001和存储器3003。其中,处理器3001和存储器3003相连,如通过总线3002相连。可选地,电子设备3000还可以包括收发器3004。需要说明的是,实际应用中收发器3004不限于一个,该电子设备3000的结构并不构成对本申请实施例的限定。
处理器3001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器3001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线3002可包括一通路,在上述组件之间传送信息。总线3002可以是PCI总线或EISA总线等。总线3002可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器3003可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器3003用于存储执行本申请方案的应用程序代码,并由处理器3001来控制执行。处理器3001用于执行存储器3003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。
本申请实施例提供了一种电子设备,本申请实施例中的电子设备包括:存储器和处理器;至少一个程序,存储于所述存储器中,用于被所述处理器执行时,与现有技术相比可实现:本申请实施例通过获取在对应系统中绘制的流程树,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型;即本申请实施例中通过绘制的流程树生成可执行的任务树,以执行相应的任务,并不需要编码可执行的代码程序,从而可以降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例通过获取在对应系统中绘制的流程树,然后基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,其中,流程树包括多个功能节点,任一功能节点具备对应的功能类型;即本申请实施例中通过绘制的流程树生成可执行的任务树,以执行相应的任务,并不需要编码可执行的代码程序,从而可以降低执行任务的复杂度,进而可以降低程序开发人员的开发数据量。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本申请实施例还包括:
A1、一种任务开发方法,包括:
获取在对应系统中绘制的流程树,所述流程树包括多个功能节点,任一功能节点具备对应的功能类型;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树。
A2、根据A1所述的方法,所述方法还包括:
当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与所述请求信息对应执行结果。
A3、根据A2所述的方法,当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与所述请求信息对应执行结果,包括:
当接收到用户输入的任务执行请求信息时,对所述用户输入的任务执行请求信息进行自然语言处理,得到所述任务执行请求消息对应的请求意图;
基于所述任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与所述任务执行请求信息对应的执行结果。
A4、根据A1所述的方法,所述功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
A5、根据A1所述的方法,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,包括:
通过后端引擎解析XML格式的流程树,得到解析结果;
通过所述后端引擎并基于解析结果,生成可执行的任务树。
A6、根据A1所述的方法,在对应的系统中绘制流程树的方式,包括:
接收用户输入的流程树绘制请求消息,所述流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树;
基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树。
A7、根据A6所述的方法,基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树,包括:
基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息;
基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系;
基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树;
所述功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
A8、根据A2或A3所述的方法,所述方法还包括:
当基于用户输入的任务执行请求消息未查找到与所述任务执行请求消息相匹配的任务树时,基于所述任务执行请求消息绘制对应的流程树;
基于绘制的与所述请求消息对应的流程树生成对应的任务树。
A9、根据A2或A3所述的方法,所述方法还包括:
当基于用户输入的任务执行请求消息未查找到与所述任务执行请求消息相匹配的任务树时,记录所述任务执行请求消息对应的请求意图;
当满足预设条件时,从记录信息中获取待生成任务树的请求意图;
在对应的系统中绘制所述待生成任务树的请求意图对应的流程树,并基于绘制的所述待生成任务树的请求意图对应的流程树,生成对应的任务树;
所述预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
A10、根据A1所述的方法,任一功能节点具有至少一个变量;
任一变量为全局变量或者局部变量。
A11、根据A2所述的方法,执行对应的任务树,包括:
按照栈结构的先进后出模式执行对应的任务树。
B12、一种任务开发装置,包括:
第一获取模块,用于获取在对应系统中绘制的流程树,所述流程树包括多个功能节点,任一功能节点具备对应的功能类型;
第一生成模块,用于基于所述第一获取模块获取到的在对应系统中绘制的流程树,生成可执行的任务树。
B13、根据B12所述的装置,所述装置还包括:调用以及执行模块,其中,
所述调用以及执行模块,用于当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与所述请求信息对应执行结果。
B14、根据B13所述的装置,所述调用以及执行模块包括:自然语言处理单元、调用以及执行单元;
所述自然语言处理单元,用于当接收到用户输入的任务执行请求信息时,对所述用户输入的任务执行请求信息进行自然语言处理,得到所述任务执行请求消息对应的请求意图;
所述调用以及执行单元,用于基于所述自然语言处理单元处理得到的所述任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与所述任务执行请求信息对应的执行结果。
B15、根据B12所述的装置,所述功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
B16、根据B12所述的装置,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
所述第一生成模块包括:解析单元以及生成单元;
所述解析单元,用于通过后端引擎解析XML格式的流程树,得到解析结果;
所述生成单元,用于通过所述后端引擎并基于所述解析单元的解析结果,生成可执行的任务树。
B17、根据B12所述的装置,所述装置还包括:第一绘制模块;
所述第一绘制模块,用于接收用户输入的流程树绘制请求消息,以及基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树;
所述流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树。
B18、根据B17所述的装置,
所述第一绘制模块,具体用于基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息,基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树;
所述功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
B19、根据B13或B14所述的装置,所述装置还包括:第二绘制模块以及第二生成模块,其中,
所述第二绘制模块,用于当基于用户输入的任务执行请求消息未查找到与所述任务执行请求消息相匹配的任务树时,基于所述任务执行请求消息绘制对应的流程树;
所述第二生成模块,用于基于所述第二绘制模块绘制的与所述请求消息对应的流程树生成对应的任务树。
B20、根据B13或B14所述的装置,所述装置还包括:记录模块、第二获取模块、第三绘制模块、第三生成模块,其中,
所述记录模块,用于当基于用户输入的任务执行请求消息未查找到与所述任务执行请求消息相匹配的任务树时,记录所述任务执行请求消息对应的请求意图;
所述第二获取模块,用于当满足预设条件时,从记录信息中获取待生成任务树的请求意图;
所述第三绘制模块,用于在对应的系统中绘制所述第二获取模块获取到的所述待生成任务树的请求意图对应的流程树;
所述第三生成模块,用于基于所述第三绘制模块绘制的所述待生成任务树的请求意图对应的流程树,生成对应的任务树;
所述预设条件包括以下至少一项:
满足任务树的更新时限;
某一任务树的请求意图达到预设数量;
接收用户触发的针对某一任务树生成请求。
B21、根据B12所述的装置,任一功能节点具有至少一个变量;
任一变量为全局变量或者局部变量。
B22、根据B13所述的装置,
所述调用以及执行模块,具体用于按照栈结构的先进后出模式执行对应的任务树。
C23、一种电子设备,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据A1~A11任一项所述的任务开发方法。
D24、一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现A1-A11任一项所述的任务开发方法。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种任务开发方法,其特征在于,包括:
获取在对应系统中绘制的流程树,所述流程树包括多个功能节点,任一功能节点具备对应的功能类型;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与所述请求信息对应执行结果。
3.根据权利要求2所述的方法,其特征在于,当接收到用户输入的请求信息时,基于用户输入的请求信息,调用并执行对应的任务树,得到与所述请求信息对应执行结果,包括:
当接收到用户输入的任务执行请求信息时,对所述用户输入的任务执行请求信息进行自然语言处理,得到所述任务执行请求消息对应的请求意图;
基于所述任务执行请求消息对应的请求意图,调用并执行与请求意图对应的任务树,得到与所述任务执行请求信息对应的执行结果。
4.根据权利要求1所述的方法,其特征在于,所述功能节点包括以下至少一项:
管理节点;提示音节点;请求用户输入节点;期望节点;节点调用节点;流程调用节点;循环边节点。
5.根据权利要求1所述的方法,其特征在于,获取到的在对应系统中绘制的流程树为可扩展标记语言XML格式;
基于获取到的在对应系统中绘制的流程树,生成可执行的任务树,包括:
通过后端引擎解析XML格式的流程树,得到解析结果;
通过所述后端引擎并基于解析结果,生成可执行的任务树。
6.根据权利要求1所述的方法,其特征在于,在对应的系统中绘制流程树的方式,包括:
接收用户输入的流程树绘制请求消息,所述流程树绘制请求消息携带待绘制的流程树对应的任务,并用于请求绘制对应任务的流程树;
基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树。
7.根据权利要求6所述的方法,其特征在于,基于用户输入的流程树绘制请求消息,在对应的系统中绘制对应任务的流程树,包括:
基于用户输入的流程树绘制请求消息,确定待绘制的流程树对应的任务信息;
基于待绘制的流程树对应的任务信息,确定待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系;
基于确定出的待绘制的流程树所需的功能节点信息以及各个功能节点之间的关系,在对应的系统中绘制对应任务的流程树;
所述功能节点信息包括以下至少一项:
节点名称;变量存储位置;提示音信息;槽位匹配信息;节点注释信息。
8.一种任务开发装置,其特征在于,包括:
第一获取模块,用于获取在对应系统中绘制的流程树,所述流程树包括多个功能节点,任一功能节点具备对应的功能类型;
第一生成模块,用于基于所述第一获取模块获取到的在对应系统中绘制的流程树,生成可执行的任务树。
9.一种电子设备,其特征在于,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1~7任一项所述的任务开发方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述的任务开发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910523322.7A CN110244941B (zh) | 2019-06-17 | 2019-06-17 | 任务开发方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910523322.7A CN110244941B (zh) | 2019-06-17 | 2019-06-17 | 任务开发方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110244941A true CN110244941A (zh) | 2019-09-17 |
CN110244941B CN110244941B (zh) | 2021-11-02 |
Family
ID=67887575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910523322.7A Active CN110244941B (zh) | 2019-06-17 | 2019-06-17 | 任务开发方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110244941B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449086A (zh) * | 2020-03-24 | 2021-09-28 | 北京有限元科技有限公司 | 对话管理方法、装置以及存储介质 |
CN115016693A (zh) * | 2021-06-30 | 2022-09-06 | 北京字跳网络技术有限公司 | 构建应用的方法、装置、设备和计算机可读存储介质 |
WO2022257609A1 (zh) * | 2021-06-09 | 2022-12-15 | 华为技术有限公司 | 基于组合围栏的控制方法、装置、电子设备和服务器 |
WO2023004805A1 (zh) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | 工作流建模实施系统、方法及存储介质 |
WO2023004806A1 (zh) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | Ai模型的设备部署方法、系统及存储介质 |
WO2023142061A1 (zh) * | 2022-01-29 | 2023-08-03 | 西门子股份公司 | 工作流生成方法、装置、系统、介质及程序产品 |
CN115016693B (zh) * | 2021-06-30 | 2024-06-11 | 北京字跳网络技术有限公司 | 构建应用的方法、装置、设备和计算机可读存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080109806A1 (en) * | 2006-11-06 | 2008-05-08 | Gerd Breiter | Method and System For Executing System Management Flows |
CN103136611A (zh) * | 2011-11-29 | 2013-06-05 | 华迪计算机集团有限公司 | 一种应急预案的数字化生成方法 |
CN103186834A (zh) * | 2011-12-31 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 业务流程配置方法和装置 |
CN103412897A (zh) * | 2013-07-25 | 2013-11-27 | 中国科学院软件研究所 | 一种基于分布式结构的并行数据处理方法 |
CN106779413A (zh) * | 2016-12-16 | 2017-05-31 | 广州支点网络科技股份有限公司 | 一种任务流程中的信息处理方法和设备 |
CN106791233A (zh) * | 2015-11-23 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 一种用于提供ivr服务流程的方法及ivr系统 |
CN107341054A (zh) * | 2017-06-29 | 2017-11-10 | 广州市百果园信息技术有限公司 | 任务执行方法、装置及计算机可读存储介质 |
CN107680003A (zh) * | 2016-08-01 | 2018-02-09 | 北京地厚云图科技有限公司 | 工程监理任务的节点树生成方法及装置 |
CN107967261A (zh) * | 2017-11-17 | 2018-04-27 | 康成投资(中国)有限公司 | 智能客服中交互式问句语义理解方法 |
CN108596557A (zh) * | 2018-03-15 | 2018-09-28 | 兴业数字金融服务(上海)股份有限公司 | 一种基于树状结构实现事件流程的方法及系统 |
AU2018200877A1 (en) * | 2017-03-30 | 2018-10-18 | Accenture Global Solutions Limited | Closed loop nodal analysis |
-
2019
- 2019-06-17 CN CN201910523322.7A patent/CN110244941B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080109806A1 (en) * | 2006-11-06 | 2008-05-08 | Gerd Breiter | Method and System For Executing System Management Flows |
CN103136611A (zh) * | 2011-11-29 | 2013-06-05 | 华迪计算机集团有限公司 | 一种应急预案的数字化生成方法 |
CN103186834A (zh) * | 2011-12-31 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 业务流程配置方法和装置 |
CN103412897A (zh) * | 2013-07-25 | 2013-11-27 | 中国科学院软件研究所 | 一种基于分布式结构的并行数据处理方法 |
CN106791233A (zh) * | 2015-11-23 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 一种用于提供ivr服务流程的方法及ivr系统 |
CN107680003A (zh) * | 2016-08-01 | 2018-02-09 | 北京地厚云图科技有限公司 | 工程监理任务的节点树生成方法及装置 |
CN106779413A (zh) * | 2016-12-16 | 2017-05-31 | 广州支点网络科技股份有限公司 | 一种任务流程中的信息处理方法和设备 |
AU2018200877A1 (en) * | 2017-03-30 | 2018-10-18 | Accenture Global Solutions Limited | Closed loop nodal analysis |
CN107341054A (zh) * | 2017-06-29 | 2017-11-10 | 广州市百果园信息技术有限公司 | 任务执行方法、装置及计算机可读存储介质 |
CN107967261A (zh) * | 2017-11-17 | 2018-04-27 | 康成投资(中国)有限公司 | 智能客服中交互式问句语义理解方法 |
CN108596557A (zh) * | 2018-03-15 | 2018-09-28 | 兴业数字金融服务(上海)股份有限公司 | 一种基于树状结构实现事件流程的方法及系统 |
Non-Patent Citations (3)
Title |
---|
刘诗德等: "一种新的JDF工作流程模型构建方法研究", 《测绘科学技术学报》 * |
唐小峰: "面向故障诊断的测试流程自动生成技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
安卫士: "基于树结构的流程模型间差别检测算法研究", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449086A (zh) * | 2020-03-24 | 2021-09-28 | 北京有限元科技有限公司 | 对话管理方法、装置以及存储介质 |
WO2022257609A1 (zh) * | 2021-06-09 | 2022-12-15 | 华为技术有限公司 | 基于组合围栏的控制方法、装置、电子设备和服务器 |
CN115016693A (zh) * | 2021-06-30 | 2022-09-06 | 北京字跳网络技术有限公司 | 构建应用的方法、装置、设备和计算机可读存储介质 |
CN115016693B (zh) * | 2021-06-30 | 2024-06-11 | 北京字跳网络技术有限公司 | 构建应用的方法、装置、设备和计算机可读存储介质 |
WO2023004805A1 (zh) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | 工作流建模实施系统、方法及存储介质 |
WO2023004806A1 (zh) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | Ai模型的设备部署方法、系统及存储介质 |
WO2023142061A1 (zh) * | 2022-01-29 | 2023-08-03 | 西门子股份公司 | 工作流生成方法、装置、系统、介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN110244941B (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110244941A (zh) | 任务开发方法、装置、电子设备及计算机可读存储介质 | |
US8024196B1 (en) | Techniques for creating and translating voice applications | |
KR101560600B1 (ko) | 통합 메시징 상태 기계 | |
US7712031B2 (en) | System and process for developing a voice application | |
US7287248B1 (en) | Method and system for the generation of a voice extensible markup language application for a voice interface process | |
US8831950B2 (en) | Automated voice enablement of a web page | |
US20050080628A1 (en) | System, method, and programming language for developing and running dialogs between a user and a virtual agent | |
US20090187410A1 (en) | System and method of providing speech processing in user interface | |
US8543404B2 (en) | Proactive completion of input fields for automated voice enablement of a web page | |
KR20080020649A (ko) | 비필사된 데이터로부터 인식 문제의 진단 | |
US20060212841A1 (en) | Computer-implemented tool for creation of speech application code and associated functional specification | |
JP2002527800A (ja) | 会話ブラウザおよび会話システム | |
US20070006082A1 (en) | Speech application instrumentation and logging | |
CN117008923B (zh) | 基于ai大模型的代码生成和编译部署方法、平台和设备 | |
KR20080032052A (ko) | 대화 분석 | |
WO2010129056A2 (en) | System and method for speech processing and speech to text | |
CN101257538B (zh) | 一种在浏览器中处理请求的方法、装置 | |
CN110297633B (zh) | 代码转换方法、装置、设备和存储介质 | |
US7437707B2 (en) | Systems and methods for generating applications that are automatically optimized for network performance | |
CN110233946A (zh) | 执行外呼业务方法、电子设备及计算机可读存储介质 | |
CN110600004A (zh) | 一种语音合成播放方法、装置和存储介质 | |
CN115148212A (zh) | 一种语音交互方法、智能设备及系统 | |
CN109814916A (zh) | 一种ivr流程的配置方法、装置、存储介质和服务器 | |
CN101847407B (zh) | 一种基于xml的语音识别参数处理方法 | |
CN112487170B (zh) | 面向场景配置的人机交互对话机器人系统 |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200727 Address after: 518057 Nanshan District science and technology zone, Guangdong, Zhejiang Province, science and technology in the Tencent Building on the 1st floor of the 35 layer Applicant after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. Address before: 100029, Beijing, Chaoyang District new East Street, building No. 2, -3 to 25, 101, 8, 804 rooms Applicant before: Tricorn (Beijing) Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |