一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

人机交互方法及装置、介质、计算设备与流程

2022-10-26 17:25:25 来源:中国专利 TAG:


1.本说明书一个或多个实施例涉及机器智能技术领域,尤其涉及一种人机交互方法及装置、介质、计算设备。


背景技术:

2.目前,人机交互在客服、推销、风控、服务等行业应用越来越广泛,所以人工交互框架的维护至关重要。而人工交互框架的维护难易程度与人工交互算法相关,而目前的人工交互算法使得人工交互框架的维护工作非常复杂。


技术实现要素:

3.本说明书一个或多个实施例描述了一种人机交互方法及装置、计算机可读存储介质、计算设备,使维护工作变得简单。
4.根据第一方面,提供了一种人机交互方法,包括:根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图;调用预设对话流程文件,并从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点;其中,所述预设对话流程文件中包括至少一个映射关系,每一个映射关系为一个预设用户意图和一个流程节点之间的映射关系;根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,并输出所述机器话术。
5.在一个实施例中,所述根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图,包括:确定本轮人机对话中所述机器提问话术的话术类型;若所述话术类型为是否话术类型,则识别出所述用户回答内容对应的回答类型;根据所述机器提问话术对应的话术标签和所述用户回答内容对应的回答类型,生成所述用户意图;其中,所述回答类型包括确认、否认和其它;若所述回答类型为所述其它,则生成的用户意图为存在潜在风险的意图。
6.在一个实施例中,所述根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图,还包括:若所述机器提问话术的话术类型为开放话术类型,则从所述用户回答内容中识别出所述用户意图。
7.在一个实施例中,所述调用预设对话流程文件之前,所述方法还包括:调用预设知识库文件;其中,所述知识库文件中包括至少一个预设关键词以及与每一个预设关键词对应的预设用户意图;判断本轮人机对话中的所述机器提问话术和/或所述用户回答内容中是否存在所述预设知识库文件中的预设关键词;若存在,则将所述机器提问话术和/或所述用户回答内容中所包括的预设关键词
在所述预设知识库文件中对应的预设用户意图作为补充的用户意图。
8.在一个实施例中,所述至少一个映射关系中包括至少一个第一映射关系,在所述至少一个第一映射关系中包括按照对话顺序而设置的多个流程节点;在所述第一映射关系中,每一个流程节点对应一个第一用户意图,所述第一用户意图为存在潜在风险的意图,所述流程节点用于根据存在潜在风险的意图确定用户最终意图;对应的,所述从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点,包括:从所述预设对话流程文件中选择出与所述用户意图具有映射关系的第一个流程节点。
9.在一个实施例中,所述至少一个映射关系中还包括至少一个第二映射关系;在所述预设对话流程文件中,各个所述第二映射关系位于各个所述第一映射关系之前;每一个第二映射关系中包括一个第二用户意图和一个流程节点之间的映射关系,所述第二用户意图为预设用户最终意图。
10.在一个实施例中,所述第二用户意图中包括预设聚合意图;所述从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点,包括:判断确定出的用户意图是否为用户最终意图;若是,则调用预设意图聚合文件;其中,所述预设意图聚合文件中包括至少一个第三映射关系,每一个第三映射关系包括一个预设聚合意图与该预设聚合意图下各个预设用户意图之间的映射关系;判断所述预设意图聚合文件中是否存在所述用户最终意图对应的预设聚合意图;若存在,则从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点。
11.在一个实施例中,所述根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,包括:根据从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点,调用对应的流程聚合文件;其中,每一个流程聚合文件中包括一个流程节点所对应的流程链路;根据所述用户最终意图,从调用的所述流程聚合文件中选择出对应的链路节点,并根据选择出的链路节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术。
12.在一个实施例中,所述方法还包括:调用预设对话结果文件,其中,所述预设对话结果文件中包括至少一个预设用户最终意图和每一个预设用最终意图对应的风险类型;判断确定出的用户最终意图在所述预设对话结果文件是否存在对应的风险类型,若存在,则输出对应的风险类型。
13.在一个实施例中,所述输出所述机器话术,包括:调用预设话术配置文件,其中,所述预设话术配置文件中包括至少一个预设话术修改条件和对应的预设机器替换话术;判断所述本轮对话是否满足所述预设话术配置文件中的至少一个所述预设话术修改条件;若是,则根据本轮对话所满足的第一个预设话术修改条件所对应的机器替换话术,对所述机器话术进行替换,并输出替换后的机器话术。
14.根据第二方面,提供了一种人机交互装置,包括:意图确定模块,用于根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图;文件调用模块,用于调用预设对话流程文件,并从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点;其中,所述预设对话流程文件中包括至少一个映射关系,每一个映射关系为一个预设用户意图和一个流程节点之间的映射关系;话术确定模块,用于根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,并输出所述机器话术。
15.根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面提供的方法。
16.根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面提供的所述的方法。
17.本说明书实施例提供的人机交互方法及装置、计算机可读存储介质、计算设备,各自或者组合后至少具有如下技术效果:(1)首先根据在一轮对话中的机器提问话术和用户回答内容确定用户意图,然后从预设对话流程文件中选择出与所述用户意图对应的流程节点,从而可以根据选择出的流程节点确定对应的机器话术,并输出机器话术。可见,在本发明实施例提供的人机交互方法中不需要维护树状图,而是维护一个预设对话流程文件,即提前针对各种预设用户意图设置好对应的流程节点,针对各个流程节点提前设置好对应的机器话术即可。预设对话流程文件中存储的是映射关系,因此预设对话流程文件的维护相对于树状图的维护更为简单,易于维护。
18.(2)在预设意图聚合文件中,对多个不同表达方式但意图实质相同的用户最终意图采用一个聚合意图进行表达。这样当需要增加用户意图时,不需要对预设对话流程文件进行改变,只需要在预设意图聚合文件中对应的聚合意图所包含的各个用户最终意图中增加这个用户意图就可以,可见预设意图聚合文件使得维护工作变得简单。
19.(3)由于采用了预设流程聚合文件,因此当一个用户意图对应的流程节点对应的流程链条发生变化时,不必对预设对话流程文件进行修改,只需要修改对应的预设流程聚合文件进行调整即可,可见预设流程聚合文件使得维护工作变得简单。
20.(4)通过预设知识库文件可以增加新的名词,避免用户意图的遗漏。
21.(5)通过预设话术配置文件在特定的条件下适当的修改机器话术,使得机器话术更符合实际场景。
附图说明
22.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1是本说明书一个实施例中人机交互方法的流程示意图;图2是本说明书一个实施例中人机交互装置的结构框图。
具体实施方式
24.下面结合附图,对本说明书提供的方案进行描述。
25.在人工交互过程中,现有技术中的主流的交互算法是基于树状图进行交互的方案,在某个节点状态下根据用户的回答跳转到下一个节点,但是用户在一个节点下的回答可能需要跳转到任意一个节点,这会导致树状图非常复杂,很难维护。
26.下面结合附图,对本说明书实施例的方法进行说明。
27.图1是本说明书一个实施例中人机交互方法的流程示意图。可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。该方法包括如下步骤s102~s106:s102、根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图;s104、调用预设对话流程文件,并从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点;其中,所述预设对话流程文件中包括至少一个映射关系,每一个映射关系为一个预设用户意图和一个流程节点之间的映射关系;s106、根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,并输出所述机器话术。
28.在图1示出的人机交互方法中,首先根据在一轮对话中的机器提问话术和用户回答内容确定用户意图,然后从预设对话流程文件中选择出与所述用户意图对应的流程节点,从而可以根据选择出的流程节点确定对应的机器话术,并输出机器话术。可见,在本发明实施例提供的人机交互方法中不需要维护树状图,而是维护一个预设对话流程文件,即提前针对各种预设用户意图设置好对应的流程节点,针对各个流程节点提前设置好对应的机器话术即可。预设对话流程文件中存储的是映射关系,因此预设对话流程文件的维护相对于树状图的维护更为简单,易于维护。
29.下面描述图1中各个步骤的执行方式。
30.s102、根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图;例如,机器提问话术为:请问您是在玩充值赚钱的游戏吗用户回答内容为:是的。由此可以确定用户意图为赌博。该机器提问话术为一个是否问题,即机器提问话术的话术类型为是否话术类型。针对这种话术类型,需要根据机器提问话术和用户回答内容共同确定用户意图。
31.再例如,机器提问话术为:请问您这笔转账的目的是什么呢用户回答内容为:购买家电。由此可以确定用户意图为购物。该机器提问话术为一个开放式的话术,即机器提问话术的话术类型为开放话术类型。针对这种话术类型,从用户回答内容中便可以识别出用户意图。
32.当然,还存在其它的话术类型,例如,挂机话术类型。针对不同的话术类型,识别用户意图的方式有所不同,识别出的用户意图的表达方式也有所不同。
33.在一个实施例中,s102可以具体包括如下步骤:确定本轮人机对话中所述机器提问话术的话术类型;若所述话术类型为是否话术类型,则识别出所述用户回答内容对应的回答类型;根据所述机器提问话术对应的话术标签和所述用户回答内容对应的回答类型,生成所述用户意图;其中,所述回答类型包括确认、否认和其它;若所述回答类型为所述其它,则生成的
用户意图为存在潜在风险的意图。
34.也就是说,在识别用户意图之前,首先确定机器提问话术的话术类型,话术类型包括是否话术类型、开放话术类型、挂机话术类型,其中开放话术类型也可以称为普通话术类型。针对是否话术类型,需要确定用户回答内容的回答类型:确认、否认或者其它。“其它”表示用户既没有否认也没有确认,可见用户意图是存在某种潜在风险的意图,具体的潜在风险可以从机器提问话术对应的话术标签得知。即,针对是否话术类型,需要根据机器提问话术对应的话术标签和用户回答内容对应的回答类型所确定,其中话术标签可以体现机器提问话术的主题。
35.其中,所述用户回答内容对应的回答类型可以通过一个是否识别模型进行识别得到。
36.在实际场景中,可以提前设置一个话术文件,针对常见的各种机器话术、对应的话术标签、对应的话术类型进行一一设置。这样可以从话术文件中获取到机器提问话术对应的话术标签。参见下表1,在一个话术文件中针对每一个话术类型给出了一个举例:表1可见,从上述表1中可以查找到一个机器提问话术对应的话术标签。话术标签为可以体现机器提问话术的主题,是一个机器提问话术的唯一标签。
37.可理解的是,机器话术包括机器提问话术,也包括挂机话术。如果在一轮人机对话中,机器输出的话术为挂机话术,则本次对话结束,用户可以不再回应,机器也不再输出话术。即,在确定本轮人机对话中只包含机器话术,而且机器话术是挂机话术,直接结束对话即可。当然也可以将挂机作为一个对话流程中的最后一个流程节点,这样在s102中生成的用户意图为空。
38.在一个实施例中,s102还可以包括:若所述机器提问话术的话术类型为开放话术类型,则从所述用户回答内容中识别出所述用户意图;具体的,如果确定机器提问话术的话术类型为开放话术类型,则可以直接采用意图识别模型从用户回答内容中识别出用户意图。
39.当然,在通过上述步骤识别出用户意图时,为了能够识别到本轮对话的所有用户意图,在执行s104中的“调用预设对话流程文件”之前,本发明实施例提供的方法还可以包括如下步骤:调用预设知识库文件;其中,所述知识库文件中包括至少一个预设关键词以及与每一个预设关键词对应的预设用户意图;判断本轮人机对话中的所述机器提问话术和/或所述用户回答内容中是否存在所述预设知识库文件中的预设关键词;若存在,则将所述机器提问话术和/或所述用户回答内容中所包括的预设关键词在所述预设知识库文件中对应的预设用户意图作为补充的用户意图。
40.其中,在预设知识库文件中包含多个预设关键词和预设用户意图之间的对应关系,这些预设关键词是一些不常见词,意图识别模型识别不出的词,因此将这些不常见词汇总在了预设知识库文件中。判断在本轮对话中是否存在预设知识库文件中的预设关键词,如果存在,则将所存在的预设关键词对应的预设用户意图作为补充的用户意图。
41.即,在预设知识库文件中根据预设关键词补充了一些意图识别模型识别不到的用户意图,如果用户回答内容或者机器提问话术中出现了预设关键词,则将对应的预设用户意图作为补充用户意图。
42.例如,参见下表2,展示了三个预设关键词和对应的用户意图之间的对应关系。
43.表2可见,通过上述步骤针对一轮人机对话可以得到多个用户意图,然后通过一定的表达方式将这些用户意图进行表达:将一个用户意图为一个条件,每一个条件以括号形成一个单元,如果必须所有括号内的条件全部满足,则各个括号之间采用&连接。在括号内部可以有几种特殊符号:“~”、“$”、“|”、“%”。“~”代表括号内的内容不能出现,“$”代表括号内的内容指代话术标签,“|”代表括号内的内容以“|”分隔,满足一个即可。“%”代表括号内的东西需要进行比较运算。通过这种方式形成一个整体的用户意图。
44.例如,(a|b)&(~c|d)&($a|b)&(~$c|d)&(%h》5|h《3),表示需要出现意图a或意图b,且不能出现意图c或意图d,且需要出现话术a或话术b,且不能出现话术c或话术d,且h需要大于5或者小于3。
45.s104、调用预设对话流程文件,并从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点;其中,所述预设对话流程文件中包括至少一个映射关系,每一个映射关系为一个预设用户意图和一个流程节点之间的映射关系;其中,预设对话流程文件中包括多个映射关系,每一个映射关系表示一个预设用户意图和流程节点,该预设对话流程文件是提前设置好的,在需要时直接调用即可。
46.其中,每一个流程节点对应一条机器话术或者对应一条话术链路,话术链路中包括多个链路节点,每一个链路节点对应一条机器话术。
47.在一个实施例中,所述至少一个映射关系中包括至少一个第一映射关系,在所述至少一个第一映射关系中包括按照对话顺序而设置的多个流程节点;在所述第一映射关系中,每一个流程节点对应一个第一用户意图,所述第一用户意图为存在潜在风险的意图,所述流程节点用于根据存在潜在风险的意图确定用户最终意图;例如,在所述至少一个第一映射关系中包括一个开场流程节点、一个挂机流程节点以及至少一个中间流程节点,所述至少一个中间流程节点位于所述开场中间流程节点和所述挂机中间流程节点之间,且各个中间流程节点的顺序为根据对话顺序而设置;在所述
第一映射关系中,每一个中间流程节点对应一个第一用户意图,所述第一用户意图为存在潜在风险的意图,所述中间流程节点为根据存在潜在风险的意图确定用户最终意图的流程节点。
48.也就是说,第一映射关系体现的是用户对话流程中的各个流程节点和预设用户意图之间的映射关系,各个流程节点包括按照对话顺序设置的一个开场流程节点、多个中间流程节点和一个挂机流程节点。每一个中间流程节点对应的预设用户意图为第一用户意图,第一用户意图并不是用户的最终意图,而是存在某种潜在风险的意图,需要进一步确定用户的最终意图,因此第一用户意图对应的中间流程节点对应的机器话术或话术链路的目的是进一步确定用户的最终意图。
49.基于以上第一映射关系,在s104中从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点,具体可以包括:从所述预设对话流程文件中选择出与所述用户意图具有映射关系的第一个流程节点。
50.也就是说,由于预设对话流程文件中的各个流程节点之间是具有先后顺序的,从上至下遍历所述预设对话流程文件,查找到符合用户意图的第一流程节点后,不必再进行遍历,直接将第一个流程节点作为选择出的流程节点。
51.当然,如果根据步骤s102所确定出的用户意图为最终意图,可以预设对话流程文件中设置第二映射关系。即,所述至少一个映射关系中还可以包括至少一个第二映射关系;在所述预设对话流程文件中,各个所述第二映射关系位于各个所述第一映射关系之前;每一个第二映射关系中包括一个第二用户意图和一个流程节点之间的映射关系,所述第二用户意图为预设用户最终意图。
52.其中,一个第二映射关系体现的是一个第二用户意图和一个流程节点之间的对应关系,第二用户意图为一个最终的用户意图。
53.可理解的是,由于第二用户意图为最终意图,将第二映射关系设置在第一映射关系之前,可以最先遍历到第二映射关系,可以快速的找到一个用户最终意图所对应的流程节点。
54.在实际场景中,一个用户最终意图可以采用多种描述方式,例如,目的-赌博、是否赌博-确认、是否赌博_二次确认-确认,其中“目的-赌博”是直接采用开放话术类型直接询问用户目的而得到的用户意图,“是否赌博-确认”是通过是否话术类型通过一次询问而得到的用户意图,“是否赌博_二次确认-确认
”ꢀ
是通过是否话术类型通过二次询问而得到的用户意图。这三个用户最终意图虽然表达方式有差异,但是都是赌博。
55.为了使得预设对话流程文件不用针对每一种表达方式都设置一条映射关系,这里对多个表达方式进行聚合,采用一种聚合表达方式表达用户最终意图。为了体现用户最终意图是通过聚合得到的,可以在用户最终意图中增加“聚合”二字,例如,针对上述三个不同表达方式的用户意图,对应的聚合意图为“聚合-赌博”。
56.基于以上聚合表达方式,在预设对话流程文件中的第二用户意图中可以包括预设聚合意图。对应的,s104中从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点,具体可以包括如下步骤:判断确定出的用户意图是否为用户最终意图;若是,则调用预设意图聚合文件;其中,所述预设意图聚合文件中包括至少一个第
三映射关系,每一个第三映射关系包括一个预设聚合意图与该预设聚合意图下各个预设用户意图之间的映射关系;判断所述预设意图聚合文件中是否存在所述用户最终意图对应的预设聚合意图;若存在,则从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点。
57.也就是说,首先判断步骤s102得到的用户意图是用户最终意图还是具有潜在风险的意图。如果是具有潜在风险的意图,则遍历预设对话流程文件,在一条第一映射关系中找到对应的流程节点即可。而如果是用户最终意图,则调用预设意图聚合文件,判断预设意图聚合文件是否存在对应的预设聚合意图。如果存在对应的预设聚合意图,则从预设对话流程文件中选择出该预设聚合意图对应的流程节点。
58.当然,如果预设意图聚合文件不存在对应的预设聚合意图,也从预设对话流程文件中选择出用户最终意图对应的流程节点。
59.针对预设意图聚合文件,参见下表3:表3上述表3为一个预设意图聚合文件中的两条第三映射关系,在第一条第三映射关系中体现的是多个赌博意图的表达方式和一个预设聚合意图“聚合-赌博”的对应关系,在第二条第三映射关系中体现的是多个购物意图的表达方式和一个预设聚合意图“聚合-购物”的对应关系。
60.针对预设对话流程文件,参见下表4:表4上表4为一个预设对话流程文件中的多条映射关系,其中,前四条映射关系为第二映射关系,后面的各条映射关系为第一映射关系。在四条第二映射关系中有三条预设聚合
意图和流程节点之间的映射关系。
61.例如,通过s102得到确定出的用户意图“目的-赌博”,经过判断得知用户意图为用户最终意图。然后从上表3对应的预设意图聚合文件中找到“目的-赌博”存在对应的预设聚合意图“聚合-赌博”,然后遍历预设对话流程文件,查找到“聚合-赌博”对应的流程节点为“流程-赌博教育链路”。
62.再例如,通过s102得到确定出的用户意图“目的-学费”,经过判断得知用户意图为用户最终意图。然后从上表3对应的预设意图聚合文件中未找到“目的-学费”存在对应的预设聚合意图,然后遍历预设对话流程文件,查找到“目的-学费”对应的流程节点为“流程-学费链路”。
63.可见,通过以上步骤可以得到选择出的流程节点。
64.s106、根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,并输出所述机器话术。
65.从上表4可知,有的流程节点是一个流程链路,例如,“流程-刷单教育链路”,比较复杂。而有的流程节点仅仅是一条机器话术,例如,针对用户意图“(潜在风险-赌博)”,仅需要通过“是否赌博”相应的话术进一步确定用户最终意图,比较简单。
66.也就是说,在选择出一个流程节点之后,便可以确定对应的机器话术,并输出该机器话术,该机器话术有可能是进一步的提问话术,有可能是进行刷单教育链路、购物链路等中的一条机器话术。
67.在一个实施例中,s106具体可以包括:根据从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点,调用对应的流程聚合文件;其中,每一个流程聚合文件中包括一个流程节点所对应的流程链路;根据所述用户最终意图,从调用的所述流程聚合文件中选择出对应的链路节点,并根据选择出的链路节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术。
68.其中,根据选择出的流程节点,调用对应的流程聚合文件,在这个流程聚合文件中包括该流程节点对应的整个流程链路,其中包括各种分支。例如,在下表5中,如果s102确定出的用户最终意图为“是否充值-确认”,则进入的充值途径。如果s102确定出的用户最终意图为“~是否充值-确认”,则进入充值劝阻的途径。
69.表5上表5为一个流程节点“流程-赌博教育”对应的流程链条,在该链条中包括多个链条节点,根据s102确定出的用户最终意图在流程链条中选择出一个链条节点后,根据该链条节点确定对应的机器话术,进而输出对应的机器话术。
70.在一个实施例中,输出所述机器话术,具体可以包括如下步骤:调用预设话术配置文件,其中,所述预设话术配置文件中包括至少一个预设话术修改条件和对应的预设机器替换话术;判断所述本轮对话是否满足所述预设话术配置文件中的至少一个所述预设话术修改条件;若是,则根据本轮对话所满足的第一个预设话术修改条件所对应的机器替换话术,对所述机器话术进行替换,并输出替换后的机器话术。
71.其中,在一个预设话术配置文件中包括多个预设话术修改条件以及预设机器替换话术。例如,参见下表6:从上表1中可知,话术标签“是否赌博”对应的原本话术为“请问您是在玩充值赚钱的游戏吗”,从表6中可以看出,话术标签“是否赌博”对应的预设机器替换话术为“因为现在时间比较晚了,想跟你确认下您是在玩充值赚钱的游戏吗”。如果当前时间大于21点或者小于6点,则将原本话术替换为预设机器替换话术。
72.在实际场景中,表6中的数据可以按照顺序设置,在调用预设话术配置文件后,从上至下遍历预设话术配置文件,找到满足第一个预设话术修改条件所对应的机器替换话术即可,不必再向下遍历。
73.在一个实施例中,本发明实施例提供的方法还可以包括:调用预设对话结果文件,其中,所述预设对话结果文件中包括至少一个预设用户最终意图和每一个预设用最终意图对应的风险类型;判断确定出的用户最终意图在所述预设对话结果文件是否存在对应的风险类型,若存在,则输出对应的风险类型。
74.也就是说,在输出机器话术的同时,还会输出风险类型,输出风险类型的目的是便于工作人员进行相应的管控、统计等操作。其中,管控可以包括运营人员在用户终端界面中显示一个警告提醒。
75.针对预设对话结果文件,参见下表7:表7从上表7中,展示了预设对话结果文件中的几条按顺序设置的对应关系,每一条对应关系中包括一个预设用最终意图以及对应的风险类型。风险类型包括赌博风险、刷单风险、无风险、不确定风险等。
76.可理解的是,在预设对话流程文件中映射关系具有先后顺序,从上至下遍历预设对话流程文件,寻找到第一个满足用户意图的流程节点,就可以根据该流程节点确定对应的机器话术。在预设意图聚合文件中,对多个不同表达方式但意图实质相同的用户最终意图采用一个聚合意图进行表达。这样当需要增加用户意图时,不需要对预设对话流程文件进行改变,只需要在预设意图聚合文件中对应的聚合意图所包含的各个用户最终意图中增加这个用户意图就可以,可见预设意图聚合文件使得维护工作变得简单。由于本发明实施例中采用了预设流程聚合文件,因此当一个用户意图对应的流程节点对应的流程链条发生变化时,不必对预设对话流程文件进行修改,只需要修改对应的预设流程聚合文件进行调整即可,可见预设流程聚合文件使得维护工作变得简单。此外,通过预设知识库文件可以增加新的名词,通过预设话术配置文件在特定的条件下适当的修改机器话术。
77.可见,在本发明实施例提供的方法中,不需要树状图,而是几个提前设置好的文件,例如,预设对话流程文件、话术文件、预设对话结果文件、预设话术配置文件、预设知识库文件、预设意图聚合文件、预设流程聚合文件等。针对逻辑复杂的树状图,修改一个节点,可能会影响其它的节点,因此修改、维护等工作非常复杂。本发明实施例中基于上述文件实现,即上述文件形成了本发明实施例提供的方法的基础框架。本发明实施例提供的方法将整个交互流程按照功能拆分为多个文件,然后按照一定的规则将这些文件组合起来完成人机交互。上述文件中包括多条映射关系,一条映射关系的修改基本不会影响其它映射关系,因此修改、维护非常简单,而且文件非常便于扩展。
78.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
79.根据第二方面,本发明实施例提供一种人机交互装置。
80.参见图2,该装置100包括:意图确定模块102,用于根据在本轮人机对话中机器提问话术和用户回答内容,确定用户意图;文件调用模块104,用于调用预设对话流程文件,并从所述预设对话流程文件中选择出与所述用户意图具有映射关系的流程节点;其中,所述预设对话流程文件中包括至少一个映射关系,每一个映射关系为一个预设用户意图和一个流程节点之间的映射关系;话术确定模块106,用于根据选择出的流程节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术,并输出所述机器话术。
81.在一个实施例中,意图确定模块102具体用于:确定本轮人机对话中所述机器提问话术的话术类型;若所述话术类型为是否话术类型,则识别出所述用户回答内容对应的回答类型;根据所述机器提问话术对应的话术标签和所述用户回答内容对应的回答类型,生成所述用户意图;其中,所述回答类型包括确认、否认和其它;若所述回答类型为所述其它,则生成的用户意图为存在潜在风险的意图。
82.在一个实施例中,意图确定模块102还具体用于:若所述机器提问话术的话术类型为开放话术类型,则从所述用户回答内容中识别出所述用户意图。
83.在一个实施例中,意图确定模块102还用于:调用预设知识库文件;其中,所述知识库文件中包括至少一个预设关键词以及与每一个预设关键词对应的预设用户意图;判断本轮人机对话中的所述机器提问话术和/或所述用户回答内容中是否存在所述预设知识库文件中的预设关键词;若存在,则将所述机器提问话术和/或所述用户回答内容中所包括的预设关键词在所述预设知识库文件中对应的预设用户意图作为补充的用户意图。
84.在一个实施例中,所述至少一个映射关系中包括至少一个第一映射关系,在所述至少一个第一映射关系中包括按照对话顺序而设置的多个流程节点;在所述第一映射关系中,每一个流程节点对应一个第一用户意图,所述第一用户意图为存在潜在风险的意图,所述流程节点用于根据存在潜在风险的意图确定用户最终意图;对应的,文件调用模块104具体用于:从所述预设对话流程文件中选择出与所述用户意图具有映射关系的第一个流程节点。
85.在一个实施例中,所述至少一个映射关系中还包括至少一个第二映射关系;在所述预设对话流程文件中,各个所述第二映射关系位于各个所述第一映射关系之前;每一个第二映射关系中包括一个第二用户意图和一个流程节点之间的映射关系,所述第二用户意图为预设用户最终意图。
86.在一个实施例中,所述第二用户意图中包括预设聚合意图;文件调用模块具体用于:判断确定出的用户意图是否为用户最终意图;若是,则调用预设意图聚合文件;其中,所述预设意图聚合文件中包括至少一个第三映射关系,每一个第三映射关系包括一个预设聚合意图与该预设聚合意图下各个预设用户意图之间的映射关系;判断所述预设意图聚合文件中是否存在所述用户最终意图对应的预设聚合意图;若存在,则从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点。
87.在一个实施例中,话术确定模块106具体用于:根据从所述预设对话流程文件中选择出与所述用户最终意图对应的预设聚合意图具有映射关系的第一个流程节点,调用对应的流程聚合文件;其中,每一个流程聚合文件中包括一个流程节点所对应的流程链路;根据所述用户最终意图,从调用的所述流程聚合文件中选择出对应的链路节点,并根据选择出的链路节点,确定针对所述用户回答内容而进行的下一轮对话中的机器话术。
88.在一个实施例中,话术确定模块106还用于:调用预设对话结果文件,其中,所述预设对话结果文件中包括至少一个预设用户最终意图和每一个预设用最终意图对应的风险类型;判断确定出的用户最终意图在所述预设对话结果文件是否存在对应的风险类型,若存在,则输出对应的风险类型。
89.在一个实施例中,话术确定模块106在输出所述机器话术之前还用于:调用预设话术配置文件,其中,所述预设话术配置文件中包括至少一个预设话术修改条件和对应的预设机器替换话术;判断所述本轮对话是否满足所述预设话术配置文件中的至少一个所述预设话术修改条件;若是,则根据本轮对话所满足的第一个预设话术修改条件所对应的机器替换话术,对所述机器话术进行替换。
90.根据第三方面,本说明书一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行说明书中任一个实施例中的方法。
91.根据第四方面,本说明书一个实施例提供了一种计算设备,包括存储器和处理器,
所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现执行说明书中任一个实施例中的方法。
92.可以理解的是,本说明书实施例示意的结构并不构成对本说明书实施例的装置的具体限定。在说明书的另一些实施例中,上述装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
93.上述装置、系统内的各模块之间的信息交互、执行过程等内容,由于与本说明书方法实施例基于同一构思,具体内容可参见本说明书方法实施例中的叙述,此处不再赘述。
94.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
95.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
96.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献