CN109743346B - 会话流程配置方法、装置及计算机可读存储介质 - Google Patents

会话流程配置方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN109743346B
CN109743346B CN201811375614.2A CN201811375614A CN109743346B CN 109743346 B CN109743346 B CN 109743346B CN 201811375614 A CN201811375614 A CN 201811375614A CN 109743346 B CN109743346 B CN 109743346B
Authority
CN
China
Prior art keywords
rule
node
session
alpha
branch
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
Application number
CN201811375614.2A
Other languages
English (en)
Other versions
CN109743346A (zh
Inventor
周建华
武文杰
陈少昂
孙谷飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhongan Information Technology Service Co ltd
Original Assignee
Zhongan Information Technology Service Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongan Information Technology Service Co Ltd filed Critical Zhongan Information Technology Service Co Ltd
Priority to CN201811375614.2A priority Critical patent/CN109743346B/zh
Priority to PCT/CN2019/075032 priority patent/WO2020103345A1/zh
Publication of CN109743346A publication Critical patent/CN109743346A/zh
Application granted granted Critical
Publication of CN109743346B publication Critical patent/CN109743346B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种会话流程处理方法、装置及计算机可读存储介质,属于计算机技术领域。方法包括:获取会话流程配置信息对应的流程规则对象;对流程规则对象进行处理,生成对应的规则文件并存储;当配置得到的一会话流程被触发时,从会话流程的根节点开始与用户进行会话;针对会话流程的每个流程节点,执行如下操作:从规则文件中获取与流程节点相关的规则片段;对相关的规则片段构建对应的规则网络,并执行规则网络,得到相应的节点行为。本发明实施例能够实现精准的、灵活地完全自动化的会话流程。

Description

会话流程配置方法、装置及计算机可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种会话流程配置方法、装置及计算机可读存储介质。
背景技术
目前的计算机会话交互,多数涉及多轮会话,基于预定义的多轮会话规则,允许机器理解用户的意图并从会话流程中挑选合适的应答数据给予用户反馈,一直是人机交互领域努力的方向。
然而,目前存在的人机多轮会话方法技术方案均是基于用户问句与需求结构树中包含的标准需求进行映射,从而输出被命中的叶子节点的标准需求内容。这种方案存在着灵活性和准确性上的不足,无法支持灵活的多条会话流程间的跳转和调用,这使得某些场景下的交互难以实现。
发明内容
本发明的主要目的在于提供一种会话流程处理方法、装置及计算机可读存储介质,旨在解决现有技术中由于人机多轮会话方法技术方案存在着灵活性和准确性上的不足,无法支持灵活的多条会话流程间的跳转和调用,这使得某些场景下的交互难以实现的技术问题。
本发明实施例提供的具体技术方案如下:
第一方面,本发明提供一种会话流程处理方法,所述方法包括步骤:
获取会话流程配置信息对应的流程规则对象;
对所述流程规则对象进行处理,生成对应的规则文件并存储;
当配置得到的一会话流程被触发时,从所述会话流程的根节点开始与用户进行会话;
针对所述会话流程的每个流程节点,执行如下操作:
从所述规则文件中获取与所述流程节点相关的规则片段;
对所述相关的规则片段构建对应的规则网络,并执行所述规则网络,得到相应的节点行为。
在一些实施例中,所述流程规则对象包含流程ID以及Node链表,所述Node链表中的每一个节点包含节点ID以及Branch链表,所述Branch链表中的每一个分支包含分支ID以及条件字符串。
在一些实施例中,所述对所述流程规则对象进行处理,生成对应的规则文件并存储包括:
创建一个空的规则文件,并对所述空的规则文件添加相关信息;
基于预设规则片段模板,对每一所述节点分别包含的至少一个分支进行适配处理,生成每一所述分支分别对应的规则片段;
在所述空的规则文件中对生成的所有的规则片段进行拼接,形成所述规则文件并存储。
在一些实施例中,所述基于预设规则片段模板,对每一所述节点分别包含的至少一个分支进行适配处理,生成每一所述分支分别对应的规则片段包括:
针对每一所述分支,将所述预设规则片段模板的占位变量用该分支的相应属性进行替换,生成该分支的规则片段。
在一些实施例中,所述规则网络为rete网络。
在一些实施例中,采用如下步骤构建所述规则网络,包括:
S11、创建根节点;
S12、加入规则一,包括:
S121、取出模式一,检查模式中的参数类型,如果是新类型,则加入一个类型节点;
S122、检查模式一对应的Alpha节点是否已存在,如果存在,则记录下节点位置,如果不存在,则将模式一作为一个Alpha节点加入到网络中,同时根据Alpha节点的模式建立Alpha内存表,维护一个哈希表,以模式为键,Alpha节点为值存入哈希表中;
S123、重复S122直到所有的模式处理完毕;
S124、组合Beta节点,按照如下方式:
Beta(2)左输入节点为Alpha(1),右输入节点为Alpha(2);
Beta(i)左输入节点为Beta(i-1),右输入节点为Alpha(i)i>2;
并将两个父节点的内存表内联成为自己的内存表;
S125、重复S124,直到所有的Beta节点处理完毕;
S126、将动作封装成叶节点作为Beta(n)的输出节点;
S13、重复S12直到所有规则处理完毕。
在一些实施例中,采用如下步骤执行所述规则网络,包括:
S21、对于每个事实,通过条件进行过滤,使事实沿着rete网络达到合适的alpha节点,在寻址过程中,通过改进的alpha节点索引在哈希表中通过模式查找对应的alpha节点;
S22:对于收到的每一个事实的alpha节点,找到对应的变量,使各个新的变量绑定集沿rete网到达适当的beta节点;
S23、对于收到新的变量绑定的beta节点,产生新的绑定集,使这些新的变量绑定沿rete网络至下一个beta节点,直到找到最后的结束节点,执行该节点对应的动作。
在一些实施例中,所述节点行为包括直接内容反馈、节点跳转、与第三方系统交互。
第二方面,本发明提供一种会话流程处理装置,所述装置用于实现如第一方面所述的会话流程处理方法,所述装置包括:
获取模块,用于获取会话流程配置信息对应的流程规则对象;
规则引擎,用于对所述流程规则对象进行处理,生成对应的规则文件并存储;
会话模块,用于当配置得到的一会话流程被触发时,从所述会话流程的根节点开始与用户进行会话;
所述规则引擎,还用于针对所述会话流程的每个流程节点,从所述规则文件中获取与所述流程节点相关的规则片段;
执行引擎,用于对所述相关的规则片段构建对应的规则网络,并执行所述规则网络,得到相应的节点行为。
第三方面,本发明提供一种提供会话流程处理装置,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的会话流程处理方法。
第四方面,本发明提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现如第一方面所述的会话流程处理方法。
与现有技术相比,本发明的有益效果在于:
1、通过灵活的配置和丰富的交互卡片,覆盖了各个方面的会话流程,提供一套通用的解决方案,避免了重复的开发工作,节约了开发成本和维护成本。
2、通过用户意图识别,并根据意图匹配会话流程,根据规则引擎进行会话步骤流转,实现了精准的、灵活地完全自动化的会话流程,节约了人力成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种会话流程处理方法的流程图;
图2为本发明实施例提供的规则引擎的处理流程图;
图3为本发明实施例提供的rete网络的结构示意图;
图4为本发明实施例提供的一种会话流程处理装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本发明实施例提供的会话流程处理方法,该方法可以应用于保险行业的多轮会话应用场景中,通过本发明的各实施例可以解决现有技术中由于人机多轮会话方法技术方案存在着灵活性和准确性上的不足,无法支持灵活的多会话流程间的跳转和调用,这使得某些场景下的交互难以实现的技术问题,除此之外,本发明实施例所述的会话流程处理方法的方法还可以应用于其他场景下的人机交互,比如,酒店或火车票或机票等。本发明实施例对具体的场景不加以限定。
图1为本发明实施例提供的会话流程处理方法的流程图,如图1所示,该方法具体可以包括以下步骤:
101、获取会话流程配置信息对应的流程规则对象。
本实施例中,会话流程配置信息用于针对不同意图进行配置多轮会话流程。其中,意图为预先根据具体的业务场景进行设置的,例如,对于保险行业的业务场景来说,多个意图可以包括投保、转人工、查询、核赔、保全、退保、理赔、续保、核保等。
其中,流程规则对象可以包含流程ID以及Node链表,Node链表中的每个Node(节点)包含节点ID以及Branch链表,Branch链表中的每个Branch(跳转分支)包含分支ID以及条件字符串。
具体的,接收用户输入的会话流程配置操作,根据会话流程配置操作,获取对应的会话流程配置信息,从会话流程配置信息中提取流程规则对象,并将该流程规则对象传递到规则引擎中。
在具体实施过程中,用户可以在会话流程配置界面上对不同意图进行会话流程配置操作,会话流程配置操作包括定义触发条件规则、节点规则、条件以及动作,具体定义过程可以如下:
1)定义触发条件规则:定义意图名称和置信度的规则,比如intent=核保andconfidence_degree>0.8。
2)定义节点规则:定义节点名称,每个节点包括了条件、动作和记忆,其中,一个会话流程由多个交互步骤节点构成,其中至少包含一个起始节点(根节点)和一个结束节点。
3)定义条件:其中,包括定义条件表达式,如定义条件IF...ELSE IF/ELSE IF/..等逻辑表达式,还包括定义实体映射和对齐,实体映射是指实体与用户画像的映射,实体对齐是指实体的对齐。例如,条件定义为age<55,而用户画像中通过“我爸52年生”获取“我爸”年龄“52年生”的属性,将条件定义中的age和“我爸”的“年龄”映射,并将“52年生”对齐为66岁,从用户画像中,判断条件不满足age<55。
4)定义动作:动作包括卡片、跳转和API返回值三种类型;其中,卡片包括选择卡片、文本卡片、图文卡片、图文列表、图片等卡片,通过卡片和用户交互,获取信息,并进行信息映射,目的是用于收集结构化和非结构化数据,外部数据,以及响应并反馈结果;跳转,可以跳转到其他节点或url或人工等;API返回值,通过API返回给服务器收集到的用户画像信息,获取请求,比如保险推荐等。
示例性的,根据会话流程配置信息进行配置得到的会话流程可以为:
节点1:从用户画像中获取身份证,转换为性别和年龄,并且跳转到节点2;
节点2:如果从身份证为空,则推出“选择性别”选择卡片,将“性别”加载进入工作内存,跳转到节点3,否则跳转到节点4;
节点3:推出“选择年龄”选择卡片,将“年龄”加载进入工作内存,跳转到节点4;
节点4:推出“车牌号”输入卡片,将“车牌号”加载到工作内存;
节点5:通过API推出“车险推荐”卡片,若调用推荐API失败,则返回错误信息。
102、对流程规则对象进行处理,生成对应的规则文件并存储。
本实施例中,可以将流程规则对象通过规则引擎的对外接口传递到规则引擎中,通过规则引擎基于预设规则片段模块对流程规则对象进行适配处理,生成对应的规则文件,并存储至存储介质中。
具体的,该过程可以包括:
a、创建一个空的规则文件,并对空的规则文件添加相关信息。
其中,相关信息包括规则文件的头部信息,包含包名以及规则中所使用到的相关导入语句,如RuleRequestDTO、RuleResponseDTO等类的导入语句。
b、基于预设规则片段模板,对每一节点分别包含的至少一个跳转分支进行适配处理,生成每一跳转分支分别对应的规则片段。
具体的,可以针对每一跳转分支,将预设规则片段模板的占位变量用该跳转分支的相应属性进行替换,生成该跳转分支的规则片段。
其中,规则片段模板可以设置如下所示:
Figure BDA0001870649560000081
其中,flowId代表流程ID,nodeId代表节点ID,branchID代表分支ID,condition代表条件字符串。
在具体实施过程中,可以先找到第一个Node对象的第一个Branch对象,根据预设的规则片段模板,将模板中的占位变量用Branch对象的相应属性进行替换,生成该Branch对应的规则片段,再对第一个节点剩余的Branch以及其它节点的各个Branch进行相同的处理,生成所有的Branch对应的规则片段。
c、在空的规则文件中对生成的所有的规则片段进行拼接,形成规则文件并存储。
对所有的Branch进行顺序拼接起来形成最终的规则文件,并存储到存储介质中。
示例性地,假设一个意图对应的会话流程的流程ID是flow_1,其包含两个节点,节点ID分别是node_1和node_2,节点node_1包含两个分支,分支ID分别是branch11和branch12,节点node_2也包含两个分支,分支ID分别是branch21和branch22,分支branch11的条件字符串是context[“年龄”]<18,分支branch12的条件字符串是context[“年龄”]>=18,分支branch21的条件字符串是context[“性别”]==“男”,分支branch22的条件字符串是context[“性别”]==“女”。经过上述步骤102处理后,生成对应的规则文件如下:
Figure BDA0001870649560000091
Figure BDA0001870649560000101
103、当配置得到的一会话流程被触发时,从会话流程的根节点开始与用户进行会话。
本实施例中,当识别到一个或多个用户意图时,对用户意图对应的实体信息在工作内存中进行匹配,根据匹配结果,确定该用户意图对应的会话流程,触发该对应的会话流程,并从该会话流程的根节点开始与用户进行会话。
其中,实体信息可以包括句向量信息、通用实体信息和行业实体信息。句向量信息用于将词向量序列训练并编译;而通用实体信息,可以是“今天”“上海”等时间地点信息;而行业实体信息,可以是“汽车”“车险”等行业信息。
其中,识别用户意图的过程可以包括:
接收用户输入语句,判断用户输入语句中是否包含意图,具体可以先判断用户输入语句中是否直接包括意图类型,例如“车险”“投保”等,进而根据意图类型进行多轮会话的引导;而如果用户语句中不直接包含这些意图类型。还可以对用户输入语句进行意图推测,以进一步判断用户语句中是否隐含有意图类型,例如“汽车能保障多久”,则有可能指向“车险”的意图类型。通过对用户输入语句进行意图判断和意图推测,可以更为准确地、全面地获取到用户意图,从而提高后续与用户进行人机交互的准确率。
104、针对会话流程的每个流程节点,从规则文件中获取与该流程节点相关的规则片段。
本实施例中,当执行到会话流程的一个流程节点时,可以生成该流程节点对应的RuleRequestDTO对象,并将RuleRequestDTO对象象通过规则引擎的对外接口传递到规则引擎中,通过规则引擎对RuleRequestDTO对象进行适配处理,得到根节点相关的规则片段。其中,RuleRequestDTO对象包含currentFlowId、currentNodeId、context三个属性;currentFlowId表示当前流程ID,currentNodeId表示当前节点ID,context是一个哈希表,其存储当前上下文中的参数及对应值。
步骤104的具体过程可以参照图2所示,图2为本发明实施例提供的规则引擎的处理流程图,包括:
a、将流程节点对应的RuleRequestDTO对象通过规则引擎的对外接口传递到规则引擎中。
b、规则引擎根据currentFlowId从存储介质中查询对应的规则文件,然后从查询到的规则文件中获取与currentNodeId相关的所有规则片段。
c、规则引擎根据获取的信息生成ReteRuleRequest对象,包含流程节点相关的规则片段以及上下文context,然后传递给执行引擎执行。
105、对相关的规则片段构建对应的规则网络,并执行规则网络,得到相应的节点行为。
本发明实施例中,规则网络可以为rete网络,可以通过改进的rete算法对每个相对的规则片段依次生成rete网络并执行,获取相应的节点行为。
其中,节点行为包括直接内容反馈、节点跳转、与第三方系统交互。直接内容反馈是将预先预置好的内容以用户可识别的方式推送给用户,用户直接搜集该节点主体的用户输入。节点跳转允许流程的走向可以为多分支、甚至跨流程的。与第三方系统交互是由机器程序从第三方系统中获取数据,不与用户产生直接交互。所有的节点行为是预先配置好、并且结构化存储于存储介质中的。
值得注意的是,在本轮会话中获取到相应的节点行为后,将根据该节点行为获取到的内容输出给用户,由用户继续输入,进行下一轮会话交互。
继续参照图2所示,执行引擎按照改进的rete算法对每个规则片段依次生成rete网络并执行,获取返回结果ReteResponseDTO,ReteResponseDTO包含hasResult和branchId两个属性,hasResult表示是否找到了下一个分支,branchId表示找到的下一个分支的ID。
在本发明的一个实施例中,可以采用如下步骤构建规则网络,包括:
S11、创建根节点;
S12、加入规则一,包括:
S121、取出模式一,检查模式中的参数类型,如果是新类型,则加入一个类型节点;
S122、检查模式一对应的Alpha节点是否已存在,如果存在,则记录下节点位置,如果不存在,则将模式一作为一个Alpha节点加入到网络中,同时根据Alpha节点的模式建立Alpha内存表,维护一个哈希表,以模式为键,Alpha节点为值存入哈希表中;
S123、重复S122直到所有的模式处理完毕;
S124、组合Beta节点,按照如下方式:
Beta(2)左输入节点为Alpha(1),右输入节点为Alpha(2);
Beta(i)左输入节点为Beta(i-1),右输入节点为Alpha(i)i>2;
并将两个父节点的内存表内联成为自己的内存表;
S125、重复S124,直到所有的Beta节点处理完毕;
S126、将动作封装成叶节点作为Beta(n)的输出节点;
S13、重复S12直到所有规则处理完毕。
本发明实施例通过采用改进的rete算法生成规则网络,根据alpha节点的模式建立alpha内存表,维护一个哈希表,以模式为键,alpha节点为值存入哈希表中,便于在后续执行过程中通过该哈希表查找后续alpha子节点,由此加快Alpha节点的后续节点的查询速度。
在本发明的一个实施例中,可以采用如下步骤执行规则网络,包括:
S21、对于每个事实,通过条件进行过滤,使事实沿着rete网络达到合适的alpha节点,在寻址过程中,通过改进的alpha节点索引在哈希表中通过模式查找对应的alpha节点;
S22:对于收到的每一个事实的alpha节点,找到对应的变量,使各个新的变量绑定集沿rete网到达适当的beta节点;
S23、对于收到新的变量绑定的beta节点,产生新的绑定集,使这些新的变量绑定沿rete网络至下一个beta节点,直到找到最后的结束节点,执行该节点对应的动作。
本发明实施例通过采用改进的rete算法执行生成规则网络,通过在寻址过程中,通过改进的alpha节点索引在哈希表中通过模式查找对应的alpha节点,避免了对全部子节点的遍历,加快执行的速度。
示例性地,参照图3所示,图3为本发明实施例提供的rete网络的结构示意图,如图3所示,利用改进的rete算法构建的rete网络,根节点的两个子节点年龄节点和性别节点会维护在一个哈希表中,键为节点的模式,值为对应的节点;相应地,利用改进的rete执行rete网络时,从根节点查询后续alpha节点的时候,直接根据年龄和性别在哈希表中找到对应alpha节点,避免了对所有alpha节点的遍历,加快执行的速度。
本发明提供了一种会话流程处理方法,该方法通过获取会话流程配置信息对应的流程规则对象;对流程规则对象进行处理,生成对应的规则文件并存储;当配置得到的一会话流程被触发时,从会话流程的根节点开始与用户进行会话;并针对会话流程的每个流程节点,执行如下操作:从规则文件中获取与流程节点相关的规则片段;对相关的规则片段构建对应的规则网络,并执行规则网络,得到相应的节点行为。相比较于现有技术,本发明提供的方法通过灵活的配置和丰富的交互卡片,覆盖了各个方面的会话流程,提供一套通用的解决方案,避免了重复的开发工作,节约了开发成本和维护成本,而且通过用户意图识别,并根据意图匹配会话流程,根据规则引擎进行会话步骤流转,实现了精准的、灵活地完全自动化的会话流程,节约了人力成本。
请参考图4,本发明实施例还提供了一种会话流程处理装置,该装置用于实现如上述实施例的会话流程处理方法,装置包括:
获取模块41,用于获取会话流程配置信息对应的流程规则对象;
规则引擎42,用于对流程规则对象进行处理,生成对应的规则文件并存储;
会话模块43,用于当配置得到的一会话流程被触发时,从会话流程的根节点开始与用户进行会话;
规则引擎42,还用于针对会话流程的每个流程节点,从规则文件中获取与流程节点相关的规则片段;
执行引擎44,用于对相关的规则片段构建对应的规则网络,并执行规则网络,得到相应的节点行为。
本实施例提供的会话流程处理装置,与本发明实施例所提供的会话流程处理方法属于同一发明构思,可执行本发明任意实施例所提供的会话流程处理方法,具备执行会话流程处理方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例提供的会话流程处理方法,此处不再加以赘述。
此外,本发明另一实施例还提供一种会话流程处理装置,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述实施例任一所述的会话流程处理方法。
此外,本发明另一实施例还提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的会话流程处理方法。
本领域内的技术人员应明白,本发明实施例中的实施例可提供为方法、系统、或计算机程序产品。因此,本发明实施例中可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例中可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例中是参照根据本发明实施例中实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例中范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种会话流程处理方法,其特征在于,所述方法包括:
获取会话流程配置信息对应的流程规则对象;
对所述流程规则对象进行处理,生成对应的规则文件并存储;
当配置得到的一会话流程被触发时,从所述会话流程的根节点开始与用户进行会话;
针对所述会话流程的每个流程节点,执行如下操作:
从所述规则文件中获取与所述流程节点相关的规则片段;
对所述相关的规则片段构建对应的规则网络,并执行所述规则网络,得到相应的节点行为;
所述获取会话流程配置信息包括:
根据用户在会话流程配置界面上对不同意图进行会话流程配置操作,获取对应的会话流程配置信息,会话流程配置操作包括定义触发条件规则、节点规则、条件以及动作,所述动作包括卡片,所述卡片用于和用户交互,获取信息并进行信息映射,收集结构化和非结构化数据、外部数据以及响应并反馈结果;
所述会话流程是通过如下过程被触发:
当识别到一个或多个用户意图时,对所述用户意图对应的实体信息在工作内存中进行匹配,根据匹配结果,确定所述用户意图对应的会话流程,触发所述会话流程。
2.根据权利要求1所述的方法,其特征在于,所述流程规则对象包含流程ID以及Node链表,所述Node链表中的每一个节点包含节点ID以及Branch链表,所述Branch链表中的每一个分支包含分支ID以及条件字符串。
3.根据权利要求2所述的方法,其特征在于,所述对所述流程规则对象进行处理,生成对应的规则文件并存储包括:
创建一个空的规则文件,并对所述空的规则文件添加相关信息;
基于预设规则片段模板,对每一所述节点分别包含的至少一个分支进行适配处理,生成每一所述分支分别对应的规则片段;
在所述空的规则文件中对生成的所有的规则片段进行拼接,形成所述规则文件并存储。
4.根据权利要求3所述的方法,其特征在于,所述基于预设规则片段模板,对每一所述节点分别包含的至少一个分支进行适配处理,生成每一所述分支分别对应的规则片段包括:
针对每一所述分支,将所述预设规则片段模板的占位变量用该分支的相应属性进行替换,生成该分支的规则片段。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述规则网络为rete网络。
6.根据权利要求5所述的方法,其特征在于,采用如下步骤构建所述规则网络,包括:
S11、创建根节点;
S12、加入规则一,包括:
S121、取出模式一,检查模式中的参数类型,如果是新类型,则加入一个类型节点;
S122、检查模式一对应的Alpha节点是否已存在,如果存在,则记录下节点位置,如果不存在,则将模式一作为一个Alpha节点加入到网络中,同时根据Alpha节点的模式建立Alpha内存表,维护一个哈希表,以模式为键,Alpha节点为值存入哈希表中;
S123、重复S122直到所有的模式处理完毕;
S124、组合Beta节点,按照如下方式:
Beta(2)左输入节点为Alpha(1),右输入节点为Alpha(2);
Beta(i)左输入节点为Beta(i-1),右输入节点为Alpha(i)i>2;
并将两个父节点的内存表内联成为自己的内存表;
S125、重复S124,直到所有的Beta节点处理完毕;
S126、将动作封装成叶节点作为Beta(n)的输出节点;
S13、重复S12直到所有规则处理完毕。
7.根据权利要求5所述的方法,其特征在于,采用如下步骤执行所述规则网络,包括:
S21、对于每个事实,通过条件进行过滤,使事实沿着rete网络达到合适的alpha节点,在寻址过程中,通过改进的alpha节点索引在哈希表中通过模式查找对应的alpha节点;
S22:对于收到的每一个事实的alpha节点,找到对应的变量,使各个新的变量绑定集沿rete网到达适当的beta节点;
S23、对于收到新的变量绑定的beta节点,产生新的绑定集,使这些新的变量绑定沿rete网络至下一个beta节点,直到找到最后的结束节点,执行该节点对应的动作。
8.根据权利要求1所述的方法,其特征在于,所述节点行为包括直接内容反馈、节点跳转、与第三方系统交互。
9.一种会话流程处理装置,其特征在于,所述装置用于实现如权利要求1至8任一项所述的会话流程处理方法,所述装置包括:
获取模块,用于获取会话流程配置信息对应的流程规则对象;
规则引擎,用于对所述流程规则对象进行处理,生成对应的规则文件并存储;
会话模块,用于当配置得到的一会话流程被触发时,从所述会话流程的根节点开始与用户进行会话;
所述规则引擎,还用于针对所述会话流程的每个流程节点,从所述规则文件中获取与所述流程节点相关的规则片段;
执行引擎,用于对所述相关的规则片段构建对应的规则网络,并执行所述规则网络,得到相应的节点行为。
10.一种会话流程处理装置,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至8任一项所述的会话流程处理方法。
11.一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现如权利要求1至8任一项所述的会话流程处理方法。
CN201811375614.2A 2018-11-19 2018-11-19 会话流程配置方法、装置及计算机可读存储介质 Active CN109743346B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811375614.2A CN109743346B (zh) 2018-11-19 2018-11-19 会话流程配置方法、装置及计算机可读存储介质
PCT/CN2019/075032 WO2020103345A1 (zh) 2018-11-19 2019-02-14 会话流程处理方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811375614.2A CN109743346B (zh) 2018-11-19 2018-11-19 会话流程配置方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109743346A CN109743346A (zh) 2019-05-10
CN109743346B true CN109743346B (zh) 2021-04-06

Family

ID=66355660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811375614.2A Active CN109743346B (zh) 2018-11-19 2018-11-19 会话流程配置方法、装置及计算机可读存储介质

Country Status (2)

Country Link
CN (1) CN109743346B (zh)
WO (1) WO2020103345A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110187876A (zh) * 2019-05-30 2019-08-30 杭州远传新业科技有限公司 通用流程控制方法、装置、设备及介质
CN110413758B (zh) * 2019-07-30 2022-03-25 中国工商银行股份有限公司 基于机器学习的会话框架构建方法和装置
CN112433774A (zh) * 2019-08-07 2021-03-02 中移信息技术有限公司 业务信息匹配方法、装置、设备及存储介质
DK180368B1 (en) * 2019-08-14 2021-02-09 Blue World Technologies Holding ApS Method of producing separator plates
CN113282350B (zh) * 2021-05-26 2023-01-13 重庆零壹空间科技集团有限公司 遥测数据判读方法、装置、计算机设备和可读存储介质
CN114240033A (zh) * 2021-11-08 2022-03-25 普强时代(珠海横琴)信息技术有限公司 流程分析方法及装置
CN115378848B (zh) * 2022-08-16 2024-03-22 武汉思普崚技术有限公司 一种基于排序算法的流量统计方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799962B (zh) * 2012-06-27 2015-08-26 南京合荣欣业信息技术有限公司 一种配置型业务流程系统及其实现方法
US9189742B2 (en) * 2013-11-20 2015-11-17 Justin London Adaptive virtual intelligent agent
CN104050256B (zh) * 2014-06-13 2017-05-24 西安蒜泥电子科技有限责任公司 基于主动学习的问答方法及采用该方法的问答系统
CN105354180B (zh) * 2015-08-26 2019-01-04 欧阳江 一种实现开放式语义交互服务的方法及系统
CN107526809B (zh) * 2017-08-23 2021-05-25 北京百度网讯科技有限公司 基于人工智能推送音乐的方法和装置
CN107562856A (zh) * 2017-08-28 2018-01-09 深圳追科技有限公司 一种自助式客户服务系统及方法
CN107808194A (zh) * 2017-10-26 2018-03-16 北京科技大学 一种基于Rete推理网络的复合推理方法
CN108763568A (zh) * 2018-06-05 2018-11-06 北京玄科技有限公司 智能机器人交互流程的管理方法、多轮对话方法及装置
CN108804643A (zh) * 2018-06-05 2018-11-13 北京玄科技有限公司 多轮会话的流程配置单元、方法及智能机器人交互系统

Also Published As

Publication number Publication date
WO2020103345A1 (zh) 2020-05-28
CN109743346A (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
CN109743346B (zh) 会话流程配置方法、装置及计算机可读存储介质
CN110908997B (zh) 数据血缘构建方法、装置、服务器及可读存储介质
JP6939384B2 (ja) データ処理装置、方法およびプログラム
CN106547527B (zh) 一种JavaScript文件构建方法及装置
CN109558525B (zh) 一种测试数据集的生成方法、装置、设备和存储介质
CN108846753B (zh) 用于处理数据的方法和装置
CN110276074B (zh) 自然语言处理的分布式训练方法、装置、设备及存储介质
US10904316B2 (en) Data processing method and apparatus in service-oriented architecture system, and the service-oriented architecture system
JP2013519134A (ja) 検索クエリ処理
US10360002B2 (en) Method, apparatus, and computer-readable medium for generating an alternative implementation of a program on one or more engines
CN110162387A (zh) 线程调度方法、装置、计算机设备及计算机可读存储介质
CN108376064B (zh) 规则引擎系统及规则引擎的相关方法
CN112037061A (zh) 区块链中交易的处理方法、装置、电子设备及存储介质
US20160019266A1 (en) Query generating method and query generating device
CN108959294B (zh) 一种访问搜索引擎的方法和装置
CN111400399A (zh) 区块链系统的账本同步方法、装置及硬件设备
CN111552527A (zh) 用户界面内文字翻译方法、装置、系统及存储介质
CN116383234A (zh) 一种搜索语句生成方法、装置、计算机设备及存储介质
US20160162578A1 (en) Transitive trust social-network system
CN116010461A (zh) 数据血缘关系解析方法及装置、存储介质及电子设备
CN115062629A (zh) 会话信息的识别方法及装置、存储介质、计算机设备
CN110222105B (zh) 数据汇总处理方法及装置
CN113342647A (zh) 一种测试数据的生成方法及装置
CN111143582A (zh) 一种双索引实时更新联想词的多媒体资源推荐方法及装置
CN110737662A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40003149

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240306

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240415

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right