对话机器人的主动对话方法、装置、电子设备及存储介质与流程

文档序号:33319856发布日期:2023-03-03 19:45阅读:31来源:国知局
对话机器人的主动对话方法、装置、电子设备及存储介质与流程

1.本发明实施方式涉及对话机器人技术领域,更具体的说,涉及一种对话机器人的主动对话方法、装置、电子设备及存储介质。


背景技术:

2.对话机器人是可以与使用者实现自然对话的硬件与计算机程序的组合。在对话机器人的对话中,用户的声音信息先后经历:(1)、语音识别(asr)处理:经过断句等预处理,将语音转成文本,方便机器理解;(2)、自然语言理解(nlu):提取文本中的语义信息,如情绪、句式(疑问句或陈述句)、意图和槽位等;(3)、对话管理器(dm):结合会话历史、当前语义信息以及相关数据给出响应策略;(4)、自然语言生成(nlg):结合上下文信息,将响应策略转换为自然语言文本;(5)语音合成(tts):将自然语言文本转换为语音信号,播放语音信号。
3.然而,目前的对话机器人大多以被动回答为主,不会主动发问。


技术实现要素:

4.本发明实施方式提出一种对话机器人的主动对话方法、装置、电子设备及存储介质。
5.本发明实施方式的技术方案如下:
6.一种对话机器人的主动对话方法,包括:
7.检测对话机器人与对话对象的对话过程中的、所述对话对象的对话参数;
8.当所述对话参数符合预先设定的主动对话条件时,基于所述对话机器人模拟的用户账号的属性信息,生成主动对话内容;
9.基于与所述对话对象的当前对话状态相独立的主动对话方式,播放所述主动对话内容。
10.在示范性实施方式中,所述属性信息包括兴趣信息;
11.所述当所述对话参数符合预先设定的主动对话条件时,生成主动对话内容包括下列中的至少一个:
12.当所述对话对象的连续静音时长大于或等于预先设定的静音门限值时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容;
13.当所述对话对象的连续讲述时长大于或等于预先设定的讲述时长门限值时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容;
14.当所述对话对象的讲述内容与所述兴趣信息相匹配时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容。
15.在示范性实施方式中,所述基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容包括:
16.确定所述对话过程中的上下文信息;
17.基于所述上下文信息,确定所述对话对象已讲述的兴趣因子;
18.从所述兴趣信息中去除所述兴趣因子,得到剩余的兴趣信息;
19.基于与所述剩余的兴趣信息相关联的提问模板,生成所述主动对话内容。
20.在示范性实施方式中,在所述基于与所述对话对象的当前对话状态相独立的主动对话方式,播放所述主动对话内容之前,所述方法还包括:
21.对所述对话过程中的、对话对象的语音执行语音识别处理,以生成所述语音的文本内容;
22.对所述文本内容执行语义识别;
23.基于语义识别结果,确定所述对话机器人的回复内容;
24.当所述对话参数不符合所述主动对话条件,或所述对话参数符合所述主动对话条件且所述对话机器人发起主动对话的次数超过预先设定的主动对话次数门限值时,将所述主动对话内容更新为所述回复内容。
25.在示范性实施方式中,还包括:
26.检测所述对话过程中的、所述对话对象的静音信号分片;
27.将连续n个静音信号分片,集中发送到服务器端,其中n为预先设定的正整数值;
28.其中在服务器端,基于所述n个静音信号分片的总时长确定所述连续静音时长;
29.其中所述n、所述静音门限值和所述静音信号分片的时间长度中的至少一个是可调整的。
30.一种对话机器人的主动对话装置,包括:
31.检测模块,用于检测对话机器人与对话对象的对话过程中的、所述对话对象的对话参数;
32.生成模块,用于当所述对话参数符合预先设定的主动对话条件时,基于所述对话机器人模拟的用户账号的属性信息,生成主动对话内容;
33.播放模块,用于基于与所述对话对象的当前对话状态相独立的主动对话方式,播放所述主动对话内容。
34.在示范性实施方式中,所述属性信息包括兴趣信息;
35.所述生成模块,用于执行下列中的至少一个:
36.当所述对话对象的连续静音时长大于或等于预先设定的静音门限值时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容;
37.当所述对话对象的连续讲述时长大于或等于预先设定的讲述时长门限值时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容;
38.当所述对话对象的讲述内容与所述兴趣信息相匹配时,基于与所述兴趣信息相关联的提问模板,生成所述主动对话内容。
39.在示范性实施方式中,所述生成模块,用于确定所述对话过程中的上下文信息;基于所述上下文信息,确定所述对话对象已讲述的兴趣因子;从所述兴趣信息中去除所述兴趣因子,得到剩余的兴趣信息;基于与所述剩余的兴趣信息相关联的提问模板,生成所述主动对话内容。
40.在示范性实施方式中,所述生成模块,在播放模块基于与所述对话对象的当前对话状态相独立的主动对话方式,播放所述主动对话内容之前,对所述对话过程中的、所述对话对象的语音执行语音识别处理,以生成所述语音的文本内容;对所述文本内容执行语义
识别;基于语义识别结果,确定所述对话机器人的回复内容;当所述对话参数不符合所述主动对话条件,或所述对话参数符合所述主动对话条件且所述对话机器人发起主动对话的次数超过预先设定的主动对话次数门限值时,将所述主动对话内容更新为所述回复内容。
41.在示范性实施方式中,检测模块,用于检测所述对话过程中的、所述对话对象的静音信号分片;将连续n个静音信号分片,集中发送到服务器端,其中n为预先设定的正整数值;其中在服务器端,基于所述n个静音信号分片的总时长确定所述连续静音时长;其中所述n、所述静音门限值和所述静音信号分片的时间长度中的至少一个是可调整的。
42.一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时可实现如上任一项所述的对话机器人的主动对话方法的步骤。
43.一种电子设备,该电子设备包括:
44.处理器;
45.存储器,用于存储所述处理器的可执行指令;
46.所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现如上任一项所述的对话机器人的主动对话方法。
47.一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实施如上任一项所述的对话机器人的主动对话方法。
48.从上述技术方案可以看出,在本发明实施方式中,检测对话机器人与对话对象的对话过程中的、对话对象的对话参数;当对话参数符合预先设定的主动对话条件时,基于对话机器人模拟的用户账号的属性信息,生成主动对话内容;基于与对话对象的当前对话状态相独立的主动对话方式,播放主动对话内容。由此可见,本发明实施方式的对话机器人可以利用对话对象的对话参数,发起与对话对象的当前对话状态相独立的主动对话,实现了全双工人机对话,可以更准确地模拟出与聊天对象沟通的用户。
49.而且,本发明实施方式基于与兴趣信息相关联的提问模板生成主动对话内容,从而对话内容可控,降低了使用风险。
50.另外,由于n、静音门限值和静音信号分片的时间长度都是可调整的,因此本发明实施方式还实现了可伸缩的对话控制。比如,当服务器端压力大时,可以提升n降低请求量,反之,可以降低n以提升机器人主动对话的灵敏度。
附图说明
51.为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
52.图1是人机对话模式的示意图。
53.图2是本发明实施方式的对话机器人的主动对话方法的示范性流程图。
54.图3是本发明实施方式的对话机器人的对话处理逻辑的示范性示意图。
55.图4是本发明实施方式的对话机器人参与培训经纪人的示范性示意图。
56.图5是本发明实施方式的对话机器人的主动对话装置的示范性结构图。
57.图6是本发明实施方式的电子设备的示范性结构图。
具体实施方式
58.为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
59.为了描述上的简洁和直观,下文通过描述若干代表性的实施方式来对本发明的方案进行阐述。实施方式中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据
……”
是指“至少根据
……
,但不限于仅根据
……”
。由于汉语的语言习惯,下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。
60.本发明实施方式的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施方式例如能够以除在这里图示或描述的那些以外的顺序实施。
61.图1是人机对话模式的示意图。人机对话模式主要包括:单工模式、半双工模式和全双工模式。
62.在单工模式中:用户11说话,机器人12只录音,不做回答,此时的机器人12相当于录音机。在半双工模式中:用户11说话,机器人12等用户说完才作答,此时的机器人12相当于对讲机。在全双工模式中:用户11和机器人12可以同时说话,如用户11还未说完(比如:“您准备多少首付,我看够
……”
),机器人12就开始说话,即机器人12可以中途打断用户11。
63.目前的对话机器人主要工作于半双工模式,而且以单轮会话为主,多轮会话为辅,通过预设的有限状态机驱动多轮会话。对话机器人主要采用多路召回再排序的流程以生成回复内容,召回渠道包括分类、检索、匹配等子功能。比如:用户问“你准备多少首付”,半双工模式中的对话机器人识别出用户的购房意图后,通过规则、分类、检索和匹配等多个渠道分别召回各自的回答模板,针对各个回答模板打分排序后,选择最高的回答模板作为最终回复,返回给用户。
64.申请人发现:工作于半双工模式的对话机器人难以准确模拟真实的对话场景。在半双工模式中,只有用户提问时,对话机器人才回答;如果用户不提问,则对话机器人不会主动说话。然而,在很多场景中,需要对话机器人具有打断用户谈话以主动发问的功能。比如:在虚拟现实(vr)带看中,当经纪人询问客户的首付预算时,客户除直接回复“大概xx万”外,还可能拒绝回答(比如,不说话)、模糊回答(比如,说“不确定”)或反问(比如,说“这个房子要多少首付?”),甚至不等经纪人说完(“你准备多少首付,我看够
…”
)即打断经纪人(“大概xx万吧”)。因此,半双工模式的对话机器人并不能较好模拟客户的真实表现。
65.本发明实施方式提出一种对话机器人的主动对话方案,对话机器人可以基于对话参数实现主动对话,即可以工作于全双工模式,从而更准确地模拟出与聊天对象(比如,经纪人)沟通的用户(比如,客户)。
66.图1是本发明实施方式的对话机器人的主动对话方法的示范性流程图。图1所示方法可以由对话机器人执行。如图1所示,该方法包括:
67.步骤101:检测对话机器人与对话对象的对话过程中的、对话对象的对话参数。
68.在这里,对话对象通常是与对话机器人对话的人类,还可以是与对话机器人对话
的、另外的对话机器人。对话机器人模拟用户账号所对应的用户与对话对象对话。比如,对话对象可以为经纪人,用户账号可以为该经纪人服务的用户的标识。对话对象的对话参数具体实施为与对话对象相关的、对话过程中的时长参数或对话内容。比如,对话参数可以实施为对话对象的连续静音时长、连续讲述时长或讲述内容,等等。
69.步骤102:当对话参数符合预先设定的主动对话条件时,基于对话机器人模拟的用户账号的属性信息,生成主动对话内容。
70.在一个实施方式中,属性信息包括兴趣信息;步骤102具体包括:当对话对象的连续静音时长大于或等于预先设定的静音门限值时,基于与兴趣信息相关联的提问模板,生成主动对话内容。
71.具体地:可以预先设定对话机器人模拟的用户账号的一或多个兴趣信息,以及对应于每个兴趣信息的一或多个提问模板。比如,用户账号的兴趣信息包含两个,分别为:(1)、表征对应于用户账号的用户偏好三居室户型的兴趣信息1;(2)、表征对应于用户账号的用户关注税率的兴趣信息2。其中:兴趣信息1的提问模板为:“你觉得三居室户型如何?”;兴趣信息2的提问模板为:“这套房子的税率如何?”。
72.当对话对象的连续静音时长大于或等于预先设定的静音门限值时,则认定对话参数符合预先设定的主动对话条件,此时对话机器人可以基于预定的选择策略(比如,随机选择或基于兴趣信息的优先级)从兴趣信息1和兴趣信息2的提问模板中选中一个提问模板,并基于该提问模板生成主动对话内容。在基于提问模板生成主动对话内容的过程中,可以直接将提问模板确定为主动对话内容,也可以对提问模板进行编辑(比如,基于对话的上下文增加内容或删除内容)以生成主动对话内容。
73.因此,本发明实施方式可以将对话对象的连续静音时长作为主动对话的触发条件,可以避免长时间内没有对话的尴尬场景。
74.在一个实施方式中,属性信息包括兴趣信息;步骤102具体包括:当对话对象的连续讲述时长大于或等于预先设定的讲述时长门限值时,基于与兴趣信息相关联的提问模板,生成主动对话内容。
75.具体地:可以预先设定对话机器人模拟的用户账号的一或多个兴趣信息,以及对应于每个兴趣信息的一或多个提问模板。比如,用户账号的兴趣信息包含两个,分别为:(1)、表征对应于用户账号的用户关注房龄的兴趣信息1;(2)、表征对应于用户账号的用户关注税率的兴趣信息2。其中:兴趣信息1的提问模板为:“这套房子使用多少年了?”;兴趣信息2的提问模板为:“这套房子的税率如何?”。
76.当对话对象的连续讲述时长大于或等于预先设定的讲述时长门限值时,则认定对话参数符合预先设定的主动对话条件,此时对话机器人可以基于预定的选择策略(比如,随机选择或基于兴趣信息的优先级)从兴趣信息1和兴趣信息2的提问模板中选中一个提问模板,并基于该提问模板生成主动对话内容。在基于提问模板生成主动对话内容的过程中,可以直接将提问模板确定为主动对话内容,也可以对提问模板进行编辑(比如,基于对话的上下文增加内容或删除内容)以生成主动对话内容。
77.因此,本发明实施方式可以将对话对象的连续讲述时长作为主动对话的触发条件,可以避免持续单方面对话的尴尬场景。
78.在一个实施方式中,属性信息包括兴趣信息;步骤102具体包括:当对话对象的讲
述内容与兴趣信息相匹配时,基于与兴趣信息相关联的提问模板,生成主动对话内容。
79.可以预先设定对话机器人模拟的用户账号的一或多个兴趣信息,以及对应于每个兴趣信息的一或多个提问模板。
80.具体地,基于与兴趣信息相关联的提问模板,生成主动对话内容,包括:
81.(1)基于与讲述内容匹配的兴趣信息的单独提问模板,生成主动对话内容:
82.比如,用户账号的兴趣信息包含两个,分别为:(1)、表征对应于用户账号的用户偏好三居室户型的兴趣信息1;(2)、表征对应于用户账号的用户关注税率的兴趣信息2。其中:兴趣信息1的提问模板为:“你觉得三居室户型如何?”;兴趣信息2的提问模板为:“这套房子的税率如何?”。当讲述内容因关联“三居室户型”而匹配兴趣信息1时,则选中对应于该命中兴趣信息1的提问模板:“你觉得三居室户型如何?”,并基于该提问模板生成主动对话内容。当讲述内容因关联“税率”而匹配兴趣信息2时,则选中兴趣信息2的提问模板:“这套房子的税率如何?”,并基于该提问模板生成主动对话内容。类似地,在基于该提问模板生成主动对话内容的过程中,可以直接将提问模板确定为主动对话内容,也可以对提问模板进行编辑(比如,基于对话的上下文增加内容或删除内容)以生成主动对话内容。
83.(2)、从与讲述内容匹配的兴趣信息的多个提问模板中,基于上下文信息滤除更接近之前已经讲述过内容的提问模板,并基于剩下的提问模板生成主动对话内容。
84.比如:用户账号的兴趣信息包含1个,其中该兴趣信息表征对应于用户账号的用户偏好小区a。而且,兴趣信息对应的提问模板包括:提问模板1:“你觉得现在入手小区a是否合适?”;提问模板2:“你觉得小区a的三居室户型怎么样?”。当对话对象的讲述内容匹配兴趣信息时(比如,讲话对象提到了小区a),则认定对话对象的讲述内容与兴趣信息相匹配,此时可以基于预定的选择策略从提问模板1和提问模板2中确定出一个提问模板,并基于该提问模板生成主动对话内容。其中:在选择提问模板的过程中可以结合对话的上下文信息以滤除更接近之前已经讲述过内容的提问模板。比如,对话对象之前已经讲述过关于入手小区a是否合适的相关观点,则不选择提问模板1,而是选择提问模板2。类似地,在基于该提问模板2生成主动对话内容的过程中,可以直接将提问模板2确定为主动对话内容,也可以对提问模板2进行编辑(比如,基于对话的上下文增加内容或删除内容以生成主动对话内容)。
85.因此,本发明实施方式可以将讲述内容作为主动对话的触发条件,可以进行深入的对话沟通。
86.在一个实施方式中,步骤102具体包括:确定对话过程中的上下文信息;基于上下文信息,确定对话对象已讲述的兴趣因子;从兴趣信息中去除兴趣因子,得到剩余的兴趣信息;基于与剩余的兴趣信息相关联的提问模板,生成主动对话内容。
87.具体地:可以预先设定对话机器人模拟的用户账号的一或多个兴趣信息,以及对应于每个兴趣信息的一或多个提问模板。比如,用户账号的兴趣信息包含三个,分别为:(1)、表征对应于用户账号的用户关注房龄的兴趣信息1;(2)、表征对应于用户账号的用户关注税率的兴趣信息2;(3)、表征对应于用户账号的用户偏好三居室户型的兴趣信息3。其中:兴趣信息1的提问模板为:“这套房子使用多少年了?”;兴趣信息2的提问模板为:“这套房子的税率如何?”;兴趣信息3的提问模板为:“你觉得三居室户型如何?”。
88.当对话过程中的上下文信息包含三居室相关话题时,则确定对话对象已讲述的兴
趣因子为:三居室。然后,从用户账号的兴趣信息中去除关于三居室的兴趣信息3,剩余的兴趣信息为:兴趣信息1和兴趣信息2。然后,再根据兴趣信息1和兴趣信息2的提问模板,生成主动对话内容。
89.可见,本发明实施方式可以上下文信息去除兴趣信息,可以避免重复话题的多次讨论。
90.步骤103:基于与对话对象的当前对话状态相独立的主动对话方式,播放所述主动对话内容。
91.在这里,与对话对象的当前对话状态相独立的主动对话方式的含义是:无论对话对象的当前对话状态为正在说话或静音,即刻以语音方式播放主动对话内容,即无需关注对话对象的当前对话状态,尤其是无需等待聊天对象结束说话。
92.在一个实施方式中,在基于与对话对象的当前对话状态相独立的主动对话方式,播放主动对话内容之前,方法还包括:对对话过程中的、对话对象的语音执行语音识别处理,以生成语音的文本内容;对文本内容执行语义识别;基于语义识别结果,确定对话机器人的回复内容;当对话参数不符合主动对话条件,或对话参数符合主动对话条件且对话机器人发起主动对话的次数超过预先设定的主动对话次数门限值时,将主动对话内容更新为回复内容。
93.可见,本发明实施方式可以生成回复内容,当对话参数不符合主动对话条件时,播放回复内容,从而兼容半双工模式。而且,当对话参数符合主动对话条件且对话机器人发起主动对话的次数超过预先设定的主动对话次数门限值,依然播放回复内容,而不发起播放主动对话内容的主动对话,从而避免频繁打断谈话对象。
94.在一个实施方式中,还包括:检测对话过程中的、对话对象的静音信号分片;将连续n个静音信号分片,集中发送到服务器端,其中n为预先设定的正整数值;其中在服务器端,基于n个静音信号分片的总时长确定连续静音时长;其中n、静音门限值和静音信号分片的时间长度中的至少一个是可调整的。
95.可见,通过将静音信号分片集中发送到服务器,可以避免服务器频发响应请求,降低服务器的处理压力。而且,由于n、静音门限值和静音信号分片的时间长度都是可调整的,实现了一种可伸缩的对话控制。比如,当服务器端压力大时,通过提升n来降低请求量,代价是机器人主动对话的灵敏度下降;反之,可以降低n,提升机器人主动对话的灵敏度。
96.图3是本发明实施方式的对话机器人的对话处理逻辑的示范性示意图。
97.在图3中,对话对象11发出语音,对话机器人12的对话处理逻辑具体包括:
98.(1)、asr:经过断句等预处理,将语音转成文本以方便机器理解;而且向数据处理发送静音信号。其中,asr对静音信号执行分片缓存,如根据服务器性能,每隔10个片段集中发一次静音信号到服务器,以避免服务器的请求压力过大。
99.(2)、数据处理,具体执行:(2.1):对文本执行分句工作,保证传给nlu的是相对完整的片段。(2.2):维护会话过程中的上下文全局变量,如已静音时长、用户已陈述时长以及已主动对话次数,等等。
100.(3)、nlu:在对话中控的统一控制下,提取文本中的语义信息,如情绪、句式(疑问句或陈述句)、意图和槽位等。
101.(4)、dm:包含对话测量(dp)和对话状态追踪(dst),用于在对话中控的统一控制
下,结合会话历史、当前语义信息以及相关数据给出响应策略。比如,可以基于上下文给出常见问题的答案(q/a问答)或根据多路召回再排序算法生成回复内容。
102.(5)、发问检测:持续检测对话机器人12与对话对象11的对话过程中的、对话对象11的对话参数;当对话参数符合主动对话条件时,基于对话机器人12模拟的用户账号的属性信息,生成适配于提出发问的主动对话内容。
103.(6)、响应决策:用于从回复内容和主动对话内容中选择一路输出,其中:当对话参数不符合主动对话条件时,选择回复内容作为输出;当对话参数符合主动对话条件且对话机器人发起主动对话的次数超过主动对话次数门限值时,选择回复内容作为输出;当对话参数符合主动对话条件且对话机器人发起主动对话的次数没有超过主动对话次数门限值时,选择主动对话内容作为输出。
104.(7)、nlg:结合上下文信息,将响应决策的输出转换为自然语言文本。
105.(8)、tts:将自然语言文本转换为语音信号,播放语音信号。
106.可见,本发明实施方式针对传统流水线式架构做出改进,新增数据处理以及发问检测处理。在对话过程中,asr并不忽略静音信息,而是按照一定时间单位(如200ms)发送静音信息到数据处理,通过适当缓存静音信号以降低请求量。每次请求都更新计时器(如已静音时长、已陈述时长、已主动对话次数等)。发问检测根据计时器更新静音信息(连续时长),同时通过上下文记录对话对象已经说过的意图。当主动对话条件不被满足时,机器人正常回复;一旦满足主动对话条件(如静音超时(如静音2s)、对话对象说话过长、命中兴趣)则触发主动发问逻辑。在主动发问逻辑中,机器人主动提问,此时机器人可以打断对话对象的当前陈述。
107.图3的对话处理逻辑实现了机器人全双工会话能力,既能被动回答,还可以主动提问,而且不要求预定义实时话术模板,同时可以根据服务器性能设置静音缓存窗口(比如,10个分片),调节灵敏度,既能较好模拟双工对话模式,又能低成本实现,且内容可控。
108.可以将图3所示对话处理逻辑应用到多种场景中。比如,应用到利用对话机器人模拟客户对经纪人进行培训的直播场景中。
109.图4是本发明实施方式的对话机器人参与培训经纪人的示范性示意图。在图4中,对话机器人12模拟客户。经纪人11发出语音以开始介绍房源,对话机器人12的对话处理逻辑具体包括:
110.(1)、asr:经过断句等预处理,将语音转成文本以方便机器理解;而且向数据处理发送静音信号。其中,asr对静音信号执行分片缓存,如根据服务器性能,集中发一次静音信号到服务器,以避免服务器的请求压力过大。
111.(2)、数据处理,具体执行:(2.1):对文本执行分句工作,保证传给nlu的是相对完整的片段。比如,实时文本流:“您准备多少首付,我看够不够___”(其中__表示被打断),经过分句转换为3个片段:“你准备多少首付”、“我看够不够__”以及静音信号;(2.2):维护会话过程中的上下文全局变量,如已静音时长、用户已陈述时长以及已主动对话次数,等等。
112.(3)、nlu:提取文本中的语义信息,如情绪、句式(疑问句或陈述句)、意图和槽位等。
113.(4)、dm:包含dp和dst,用于结合会话历史、当前语义信息以及相关数据给出响应策略。对话机器人12可以支持单轮会话,也可以支持多轮会话,其中通过预设的有限状态机
驱动多轮会话。在多轮会话中,对话机器人12采用多路召回再排序的流程以生成回复内容,召回渠道包括分类、检索、匹配等子功能。比如:用户问“你准备多少首付”,nlu识别出用户的购房意图后,通过规则、分类、检索和匹配等多个渠道分别召回各自的回答模板,针对各个回答模板打分排序后,选择最高的回答模板(比如,大概xx万)作为最终的回复内容。
114.(5)、发问检测:检测对话机器人12与经纪人11的对话过程中的、对话对象11的对话参数;当对话参数符合主动对话条件时,基于对话机器人12模拟的客户的属性信息,生成适配于提出发问的主动对话内容。其中,客户的属性信息可以从客户的用户画像中获取。其中:主动对话条件包括:1、连续静音超时(如>5s);2、经纪人讲述超时(如>3分钟);、命中客户关心的意图(如房子税费)。可以利用提问模板生成主动对话内容,其中提问模板的话术与画像信息中的客户兴趣相关联。
115.(6)、响应决策:用于从回复内容和主动对话内容中选择一路输出,其中:当对话参数不符合主动对话条件时,选择回复内容作为输出;当对话参数符合主动对话条件且对话机器人发起主动对话的次数超过主动对话次数门限值时,选择回复内容作为输出;当对话参数符合主动对话条件且对话机器人发起主动对话的次数没有超过主动对话次数门限值时,选择主动对话内容作为输出。
116.(7)、nlg:结合上下文信息,将响应决策的输出转换为自然语言文本。
117.(8)、tts:将自然语言文本转换为语音信号,播放语音信号。
118.假定经纪人11的已陈述时长超时超过预定门限值而满足主动对话条件时,此时经纪人11说出“您准备多少首付,我看够不够___”(其中__表示被打断),对话机器人12触发主动发问逻辑。对话机器人12查询客户的用户画像,发现对税率感兴趣,并语音输出“这个房子税率多少?”,从而打断经纪人11的陈述。
119.图5是本发明实施方式的对话机器人的主动对话装置的示范性结构图。如图5所示,对话机器人的主动对话装置500包括:
120.检测模块501,用于检测对话机器人与对话对象的对话过程中的、对话对象的对话参数;
121.生成模块502,用于当对话参数符合预先设定的主动对话条件时,基于对话机器人模拟的用户账号的属性信息,生成主动对话内容;
122.播放模块503,用于以语音方式播放主动对话内容。
123.在示范性实施方式中,属性信息包括兴趣信息;生成模块502,用于执行下列中的至少一个:当对话对象的连续静音时长大于或等于预先设定的静音门限值时,基于与兴趣信息相关联的提问模板,生成主动对话内容;当对话对象的连续讲述时长大于或等于预先设定的讲述时长门限值时,基于与兴趣信息相关联的提问模板,生成主动对话内容;当对话对象的讲述内容与兴趣信息相匹配时,基于与兴趣信息相关联的提问模板,生成主动对话内容。
124.在示范性实施方式中,生成模块502,用于确定对话过程中的上下文信息;基于上下文信息,确定对话对象已讲述的兴趣因子;从兴趣信息中去除兴趣因子,得到剩余的兴趣信息;基于与剩余的兴趣信息相关联的提问模板,生成主动对话内容。
125.在示范性实施方式中,生成模块502,在播放模块以语音方式播放主动对话内容之前,对对话过程中的、对话对象的语音执行语音识别处理,以生成语音的文本内容;对文本
内容执行语义识别;基于语义识别结果,确定对话机器人的回复内容;当对话参数不符合主动对话条件,或对话参数符合主动对话条件且对话机器人发起主动对话的次数超过预先设定的主动对话次数门限值时,将主动对话内容更新为所述回复内容。
126.在示范性实施方式中,检测模块501,用于检测对话过程中的、对话对象的静音信号分片;将连续n个静音信号分片,集中发送到服务器端,其中n为预先设定的正整数值;其中在服务器端,基于n个静音信号分片的总时长确定连续静音时长;其中n、静音门限值和静音信号分片的时间长度中的至少一个是可调整的。
127.综上所述,在本发明实施方式中,检测对话机器人与对话对象的对话过程中的、对话对象的对话参数;当对话参数符合预先设定的主动对话条件时,基于对话机器人模拟的用户账号的属性信息,生成主动对话内容;基于与对话对象的当前对话状态相独立的主动对话方式,播放主动对话内容。由此可见,本发明实施方式的对话机器人可以利用对话对象的对话参数发起主动对话,实现了全双工人机对话,可以更准确地模拟出与聊天对象沟通的用户。
128.而且,本发明实施方式基于与兴趣信息相关联的提问模板生成主动对话内容,从而对话内容可控,降低了使用风险。
129.另外,由于n、静音门限值和静音信号分片的时间长度都是可调整的,因此本发明实施方式还实现了可伸缩的对话控制。比如,当服务器端压力大时,可以提升n降低请求量,反之,可以降低n以提升机器人主动对话的灵敏度。
130.本发明实施方式还提供一种计算机可读介质,计算机可读存储介质存储指令,指令在由处理器执行时可执行如上的对话机器人的主动对话方法中的步骤。实际应用中的计算机可读介质可以是上述实施方式中描述的设备/装置/系统中所包含的,也可以是单独存在而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,可以实现上述各实施方式描述的对话机器人的主动对话方法。根据本发明公开的实施方式,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件,或者上述的任意合适的组合,但不用于限制本发明保护的范围。在本发明公开的实施方式中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
131.如图6所示,本发明实施方式还提供一种电子设备,其中可以集成本发明实施方式实现方法的装置。如图6所示,其示出了本发明实施方式所涉及的电子设备的示范性结构图,
132.具体地:该电子设备可以包括一个或一个以上处理核心的处理器601、一个或一个以上计算机可读存储介质的存储器602以及存储在存储器上并可在处理器上运行的计算机程序。在执行存储器602的程序时,可以实现上述媒体流的传输方法。
133.在实际应用中,该电子设备还可以包括电源603、输入单元604、以及输出单元605等部件。本领域技术人员可以理解,图6中示出的电子设备的结构并不构成对该电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:处理器601是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,
通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行服务器的各种功能和处理数据,从而对该电子设备进行整体监控。存储器602可用于存储软件程序以及模块,即上述计算机可读存储介质。处理器601通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器601对存储器602的访问。
134.该电子设备还包括给各个部件供电的电源603,可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源603还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。该电子设备还可包括输入单元604,该输入单元604可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。该电子设备还可以包括输出单元605,该输出单元605可以用于显示由用户输入的信息或提供给用户的信息以及各种图像用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
135.本发明实施方式还提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令在被处理器执行时实施如上述任一实施方式所述的方法。
136.本发明附图中的流程图和框图,示出了按照本发明公开的各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标注的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
137.本文中应用了具体实施方式对本发明的原理及实施方式进行了阐述,以上实施方式的说明只是用于帮助理解本发明的方法及其核心思路,并不用于限制本发明。对于本领域的技术人员来说,可以依据本发明的思路、精神和原则,在具体实施方式及应用范围上进行改变,其所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1