基于语音通话的语音交互方法、装置、设备和存储介质与流程
本申请涉及人工智能技术领域和语音通话技术领域,特别是涉及一种基于语音通话的语音交互方法、装置、设备和存储介质。
背景技术:
随着人工智能技术的发展,出现了很多机器人替代人工的场景。语音机器人,则为一种常用的智能机器人,能够代替人工客服与用户进行通话,从而执行部分客服事务。比如,使用语音机器人进行外呼通话属于较为常见的场景。外呼通话,即指通过语音机器人主动呼叫用户,建立语音通话。
传统方法中,语音机器人只会按照预设的固定语音播放参数与用户进行语音交互应答,然后,使用固定语音播放参数进行交互应答过于局限,不适用于很多场景,从而,影响语音通话中的语音交互质量。
技术实现要素:
基于此,有必要针对上述技术问题,提供一种能够避免响应不灵活的基于语音通话的语音交互方法、装置、计算机设备和存储介质。
一种基于语音通话的语音交互方法,所述方法包括:
在语音机器人与用户终端的语音通话交互过程中,接收所述用户终端发送的语音流片段;
对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图;
若所述用户意图的意图类型包括语音播放参数调整意图,则
按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值;
按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,生成交互语音;
控制所述语音机器人,向所述用户终端输出所述交互语音。
在其中一个实施例中,所述对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图,包括:
对所述语音流片段进行语音识别,得到相应的文本信息;
对所述文本信息进行上下文语义理解和意图识别,得到所述语音流片段对应的用户意图。
在其中一个实施例中,所述按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值,包括:
从所述语音播放参数调整意图中,识别所指定调整的语音播放参数以及所述语音播放参数所对应的调整方向;
获取所述语音播放参数所对应的参数区间;
根据所述语音播放参数当前的参数值和所述参数区间,确定与所述语音播放参数对应的调节幅度;
将所述当前的参数值按所述调整方向和所述调节幅度进行调整;其中,调整后的参数值,位于所述参数区间之内。
在其中一个实施例中,指定调整的所述语音播放参数,包括音量参数和语速参数中的至少一种;
所述将所述当前的参数值按所述调整方向和所述调节幅度进行调整,包括:
若指定调整的所述语音播放参数包括音量参数,则
将所述音量参数当前的音量值,按照音量调整方向和音量调节幅度进行调整;
其中,所述音量调整方向,是所述音量参数所对应的调整方向;所述音量调节幅度是与所述音量参数对应的调节幅度。
在其中一个实施例中,所述将所述当前的参数值按所述调整方向和所述调节幅度进行调整还包括:
若指定调整的所述语音播放参数包括语速参数,则
将所述语速参数当前的语速值,按照语速调整方向和语速调节幅度调整;
其中,所述语速调整方向,是所述语速参数所对应的调整方向;所述语速调节幅度是与所述语速参数对应的调节幅度。
在其中一个实施例中,所述用户意图的意图类型中还包括业务意图;
所述按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,包括:
获取与所述业务意图对应的应答交互信息;
按照所述语音播放参数的调整后的参数值,对所述应答交互信息进行语音合成。
在其中一个实施例中,所述按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,还包括:
针对输出所述交互语音之后重新接收的语音流片段,若重新接收的所述语音流片段所表达的用户意图中不包括语音播放参数调整意图,则
继续按照所述语音播放参数的调整后的参数值,对重新接收的所述语音流片段中的业务意图所对应的应答交互信息进行语音合成,并控制所述语音机器人输出合成后的交互语音。
在其中一个实施例中,所述方法还包括:
对所述语音流片段进行语义情绪识别,得到语义情绪信息;
根据所述语义情绪信息,调整情感表达类的语音播放参数的参数值;
所述按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,包括:
按照由语音播放参数调整意图调整的语音播放参数的调整后的参数值,以及情感表达类的语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成。
在其中一个实施例中,在所述按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成之前,所述方法还包括:
判断所述语音流片段是否属于异常打断式语音;
若所述语音流片段不属于异常打断式语音,则按照所述语音播放参数的调整后的参数值,播放预设的询问话术;所述询问话术,用于询问所述语音播放参数的调整后的参数值是否合适;
若接收到所述用户终端针对所述调整后的参数值的肯定性回复语音,则执行所述按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成。
在其中一个实施例中,所述对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图,包括:
所述语音机器人对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图,并将所述用户意图传输至语音中控平台;
所述若所述用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值,包括:
若所述语音中控平台检测到所述用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
一种控制语音机器人响应的装置,所述装置包括:
语音接收模块,用于在语音机器人与用户终端的语音通话交互过程中,接收所述用户终端发送的语音流片段;
意图识别模块,用于对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图;
参数调整模块,用于若所述用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值;
语音合成模块,用于按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,生成交互语音;
语音输出模块,用于控制所述语音机器人,向所述用户终端输出所述交互语音。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
在语音机器人与用户终端的语音通话交互过程中,接收所述用户终端发送的语音流片段;
对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图;
若所述用户意图的意图类型包括语音播放参数调整意图,则
按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值;
按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,生成交互语音;
控制所述语音机器人,向所述用户终端输出所述交互语音。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在语音机器人与用户终端的语音通话交互过程中,接收所述用户终端发送的语音流片段;
对所述语音流片段进行意图识别,得到所述语音流片段所表达的用户意图;
若所述用户意图的意图类型包括语音播放参数调整意图,则
按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值;
按照所述语音播放参数的调整后的参数值,对所述语音机器人所对应的交互信息进行语音合成,生成交互语音;
控制所述语音机器人,向所述用户终端输出所述交互语音。
上述基于语音通话的语音交互方法、装置、计算机设备和存储介质,在语音机器人与用户终端的语音通话交互过程中,接收用户终端发送的语音流片段;对语音流片段进行意图识别,得到语音流片段所表达的用户意图;若用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。即,用户可以直接在语音通话过程中,表达语音机器人的语音播放参数进行调整的意图,从而指示调整语音播放参数,进而可以按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,生成更便于用户听的交互语音,进而可以提高语音通话质量。
附图说明
图1为一个实施例中基于语音通话的语音交互方法的应用环境图;
图2为一个实施例中基于语音通话的语音交互方法的流程示意图;
图3为一个实施例中播放参数调整步骤的流程示意图;
图4为一个实施例中实现基于语音通话的语音交互方法的系统架构图;
图5为一个实施例中基于语音通话的语音交互装置的结构框图;
图6为另一个实施例中基于语音通话的语音交互装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的基于语音通话的语音交互方法,可以应用于如图1所示的应用环境中。其中,呼叫平台102通过网络与用户终端104进行通信。呼叫平台102中的智能机器人可以与用户终端之间进行语音通话。其中,用户终端104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。呼叫平台102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。语音机器人是呼叫平台中的智能呼叫及应答模块,能够在语音通话中自动与用户进行语音对话。需要说明的是,语音机器人除了呼叫及应答功能以外,还可以具备其他语音处理功能,比如,具备语音识别、语音合成等功能。即,语音机器人可以是呼叫平台中一个或多个模块的集合。呼叫平台102可以是主动向用户终端发起呼叫的外呼平台,也可以是接收用户终端发起的呼叫的平台,对此不作限定。
呼叫平台102在语音机器人与用户终端104的语音通话交互过程中,可以接收用户终端104发送的语音流片段。呼叫平台102可以对语音流片段进行意图识别,得到语音流中所表达的用户意图。若用户意图的意图类型包括语音播放参数调整意图,则呼叫平台102可以按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。呼叫平台102可以按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,生成交互语音。呼叫平台102可以控制语音机器人,向用户终端104输出交互语音。
需要说明的是,图1仅是示意说明,在其他实施例中,语音机器人还可以是独立的计算机设备(比如,具备语音通话能力的人形仿真机器人),而并不限定于呼叫平台中的一个智能模块,可以由语音机器人自身和用户终端之间进行通信。那么,本申请各实施例中的基于语音通话的语音交互方法可以由语音机器人自身执行。
在一个实施例中,如图2所示,提供了一种基于语音通话的语音交互方法,以该方法应用于图1中的呼叫平台为例进行说明,包括以下步骤:
步骤202,在语音机器人与用户终端的语音通话交互过程中,接收用户终端发送的语音流片段。
其中,语音机器人,是呼叫平台中的、且能够与用户终端中的用户进行自主通话的人工智能机器人。语音流片段,是在语音通话中实时输入的用户的语音数据。即,语音流片段是实时地流式数据。
具体地,语音机器人可以与用户终端之间建立语音通话连接,在语音通话过程中,呼叫平台可以接收用户终端发送的语音流片段,也可以控制语音机器人向用户终端输出语音,以实现人机交互。其中,语音通话连接,是实时传播语音数据的通话连接。
需要说明的是,语音机器人与用户终端的语音通话的场景,与简单地向语音机器人输入语音指令并不相同,输入语音指令并不需要交互双方建立语音通话连接。
为了便于理解语音通话与简单输入语音指令的区别,现举例说明。比如,用户使用手机向客服中心打电话的时候,是由电话机器人接听电话的,那么,手机与电话机器人之间建立了语音通话。但是,用户如果向智能音箱输入播放歌曲的语音指令,就只是单纯的指令输入,用户与智能音箱之间并未建立实时的语音通话。
在一个实施例中,呼叫平台可以为外呼平台,则外呼平台中的语音机器人可以主动向用户终端发起呼叫,以与用户终端之间建立语音通话。
在一个实施例中,呼叫平台也可以是接收用户终端发起的呼叫的平台。即,用户终端主动向呼叫平台发起呼叫请求,以与呼叫平台中应答的语音机器人之间建立语音通话。可以理解,该实施例中的语音机器人则相当于具备语音通话功能的人工智能客服。
步骤204,对语音流片段进行意图识别,得到语音流片段所表达的用户意图。
其中,用户意图,是指用户在语音通话中发出声音的目的。
具体地,呼叫平台可以将语音流片段转换为文本信息,并对转换得到的文本信息进行意图识别,得到语音流片段所表达的用户意图。
需要说明的是,用户意图,用于体现语句内容本身直接表达的意思,与语气、语调等并不相同,因为语气、语调等并不是语句内容本身直接表达的意思,而是一种辅助的情感表达元素。
例如,用户发送的语音信息中包括“声音大一点”、“声音有点小”等,可以识别出对应的用户意图为“音量调大”对应的播放参数调整意图。再如用户发送的语音信息中包括“声音有点小,听不清”等信息时,可以识别出对应的用户意图为“音量调大、语速调慢”等对应的播放参数调整意图。
在一个实施例中,步骤204包括:对语音流片段进行语音识别,得到相应的文本信息;对文本信息进行上下文语义理解和意图识别,得到语音流片段对应的用户意图。
具体地,呼叫平台可以对语音流片段进行语音识别,将语音流片段转换为相应的文本信息,并对文本信息进行上下文语义理解和意图识别,得到语音流片段对应的用户意图。可以理解,呼叫平台可以通过语音机器人来对语音流片段进行语音识别、语义理解以及意图识别处理,以识别用户意图,呼叫平台也可以通过除语音机器人以外的其他模块来识别用户意图,对此不限定。
在一个实施例中,呼叫平台可以对语音流片段进行预处理,并将预处理后的语音流片段转换为文本信息,以进行意图识别处理。
在一个实施例中,呼叫平台可以对语音流片段进行去除环境音、以及声音增强等至少一种预处理。
步骤206,若用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
其中,语音播放参数,是与语音播放相关的、且用于形成最终的语音的基础参数。可以理解,由语音播放参数来对实质性的语言内容进行包装处理,形成最终播放出的语音。
语音播放参数可以为至少一种,比如,可以包括音量、语速、语气以及语调等中的至少一种语音播放参数。所以,语音播放参数调整意图可以包括对至少一种语音播放参数的调整意图。
需要说明的是,识别出的用户意图的意图类型可以包括语音播放参数调整意图和业务意图等中的至少一种。其中,业务意图,是与业务相关的意图,比如,业务咨询、业务办理、业务反馈等意图,都属于业务意图。语音播放参数调整意图,是对语音播放参数进行调整的意图。比如,用户说“请慢一点将优惠活动再介绍一遍”。那么,“慢一点”则表征语音播放参数调整意图,“将优惠活动再介绍一遍”则表征业务意图。
若用户意图的意图类型包括语音播放参数调整意图,说明用户表达了想要调整语音机器人的语音播放参数。呼叫平台则可以按照语音播放参数调整意图,调整语音机器人的至少一种语音播放参数的参数值。比如,呼叫平台可以按照语音播放参数调整意图,调整语音机器人的音量、语速、语气以及语调等中的至少一种。
在一个实施例中,步骤204包括:语音机器人对语音流片段进行意图识别,得到语音流片段所表达的用户意图,并将用户意图传输至语音中控平台。步骤206包括:若语音中控平台检测到用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
具体地,呼叫中心可以通过语音机器人对语音流片段进行意图识别,并将识别到的用户意图传输至语音中控平台,由语音中控平台按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
步骤208,按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,生成交互语音。
步骤210,控制语音机器人,向用户终端输出交互语音。
其中,语音机器人所对应的交互信息,是语音机器人针对接收的语音流片段,待向用户终端响应的信息。
具体地,呼叫平台可以按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,使得新合成的交互语音符合调整后的语音播放参数的参数值。呼叫平台可以控制语音机器人,向用户终端输出该交互语音。
在一个实施例中,呼叫平台可以通过语音中控平台调整语音机器人的语音播放参数的参数值,语音中控平台通过语音语义合成单元,以按照调整后的参数值对交互信息进行语音合成,得到交互语音。
在一个实施例中,若对语速参数的参数值进行调整,语音语义合成单元可以按照将当前语速的参数值调整为预设的合成速率,以使得输出的交互语音的语速与正常人的语速一致。即,使得用户在电话过程中,听到机器人播音的语速跟人说话的语速一致。比如,预设的合成速率,可以为每秒合成5个字或者每秒合成8个字。
可以理解,交互语音的语音播放参数与按照语音播放参数调整意图调整后的语音播放参数的参数值相符。比如,如果将音量调小到30,那么,新生成的交互语音的播放音量就会是30。再比如,如果将语速调慢了,那么,新生成的交互语音的语速就会变慢。
在一个实施例中,语音机器人所对应的交互信息可以为文本格式或者具备语音属性的信息。具备语音属性的信息,可以为音频格式的信息或者视频格式的信息等。可以理解,如果语音机器人与用户终端是通过视频的方式建立语音通话,那么,交互信息就可以为视频格式的信息。这里对交互信息的格式不做限定。
可以理解,若交互信息为文本格式,那么,呼叫平台则可以按照语音播放参数的调整后的参数值,将语音机器人所对应的文本格式的交互信息进行语音合成,生成语音格式的、且符合调整后的语音播放参数的参数值的交互语音。若交互信息本身就是具备语音属性的信息,那么,呼叫平台则可以按照语音播放参数的调整后的参数值,调整交互信息中的该语音播放参数,从而生成交互语音。比如,交互信息本身就属于语音,那么,就可以将该语音的语音播放参数进行相应调整,得到交互语音。
需要说明的是,语音播放参数调整意图不影响语音机器人原本待响应的交互信息的实质性语言内容,即,不影响语音机器人原本待响应的应答话术。比如,用户说“麻烦慢一点介绍优惠活动a”,那么,语音机器人需要向用户输出优惠活动a的具体介绍,只不过会依据用户的指示,对优惠活动a介绍的慢一点,而并不会对优惠活动a的具体介绍内容做改变。同样地,若用户意图中包括语音播放参数调整意图和业务意图,则语音播放参数调整意图并不会改变业务意图。从而根据语音播放参数调整意图对语音播放参数调整后,根据调整后的参数值来执行该业务意图。
上述基于语音通话的语音交互方法,在语音机器人与用户终端的语音通话交互过程中,接收用户终端发送的语音流片段;对语音流片段进行意图识别,得到语音流片段所表达的用户意图;若用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。即,用户可以直接在语音通话过程中,表达语音机器人的语音播放参数进行调整的意图,从而指示调整语音播放参数,进而可以按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,生成更便于用户听的交互语音,进而可以提高语音通话质量。
如图3所示,在一个实施例中,步骤206中按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值(简称播放参数调整步骤),具体包括以下步骤:
步骤302,从语音播放参数调整意图中,识别所指定调整的语音播放参数以及语音播放参数所对应的调整方向。
其中,语音播放参数所对应的调整方向,是对语音播放参数的参数值进行调整的方向。比如,将语音播放参数的参数值调大或者调小等调整方向。
具体地,语音播放参数可以有多个,用户终端可以通过语音流片段指定对其中的至少部分语音播放参数进行调整。因此,对语音流片段识别的语音播放参数调整意图中可以包括指定调整的语音播放参数以及语音播放参数所对应的调整方向。呼叫平台可以从语音播放参数调整意图中,识别所指定调整的语音播放参数以及对应的调整方向。语音播放参数调整意图中包括的指定调整的语音播放参数可以为一个或多个。多个即为至少两个。
在一个实施例中,指定调整的语音播放参数,包括音量参数、语速参数、以及音色参数等中的至少一种。
步骤304,获取语音播放参数所对应的参数区间。
其中,参数区间,是预先设置的语音播放参数的参数值所应当位于的区间范围。即,呼叫平台中对各个语音播放参数预先设置了参数区间,以约束各个语音播放参数的参数值在合理的范围内。
可以理解,不同语音播放参数都具有唯一对应的参数区间,当语音播放参数调整意图中包括多个指定调整的语音播放参数时,则可以分别针对指定的每个语音播放参数,执行步骤304~308。
步骤306,根据语音播放参数当前的参数值和参数区间,确定与语音播放参数对应的调节幅度。
具体地,针对语音播放参数调整意图中包括的每个语音播放参数,呼叫平台可以根据该语音播放参数当前的参数值、以及该语音播放参数所对应的参数区间,确定与该语音播放参数对应的调节幅度。
在一个实施例中,呼叫平台可以获取预设调节值,若语音播放参数当前的参数值按照相应调节方向调整预设调节值后仍在参数区间内,则可以直接将预设调节值作为与语音播放参数对应的调节幅度。若语音播放参数当前的参数值按照相应调节方向调整预设调节值后超出该参数区间,则可以将该参数区间中与该调整方向相应的边界值减去当前参数值,得到与语音播放参数对应的调节幅度。
比如,假设,音量参数对应的参数区间为[0-1.5],当前的音量值为默认的音量值1。如果用户说“请大声一点”,语音中控则可以识别出音量调整意图,确定音量调整方向为调大。假设预设调节值0.3,按照0.3调大1为1.3,是在区间[0-2]之内,所以,则可以直接将预设调节值0.3作为调节幅度,将音量值调大0.3,得到音量值为1.3。后续语音合成单元则可以按照调整后的音量值1.3来合成语音机器人的交互语音,从而实现语音机器人的音量调高。如果用户反馈还说“请再大声一点”,若再调整0.3则音量将会到达1.6,超出了[0-1.5]这个区间,那么,则可以将音量调大0.2(即用区间中对应调大方向的边界值1.5减去1.3得到调节幅度0.2)。
在另一个实施例中,呼叫平台可以根据历史数据预测参数区间中的最适宜参数值,若该最适宜参数值位于语音播放参数所对应的调整方向所指向的方向,则可以将最适宜参数值与语音播放参数当前的参数值之间的差值确定为调节幅度。若该最适宜参数值位于语音播放参数所对应的调整方向所指向的反方向,则可以将预设调节值作为与语音播放参数对应的调节幅度。
比如,假设,音量参数对应的参数区间为[0-1.5],当前的音量值为默认的音量值1。如果用户说“请大声一点”,语音中控则可以识别出音量调整意图,确定音量调整方向为调大。根据历史数据预测出调整到1.4最为适宜,则说明最适宜参数值1.4位于音量调大所指向的方向。因此,可以将1.4-1=0.4作为调节幅度,从而将音量调大0.4。又比如,假设当前音量值为1.2,如果用户说“请小声一点”,那么,最适宜参数值1.4位于音量调小所指向的反方向,则可以直接获取预设调节值0.3作为调节幅度,将音量值从1.2调小0.3。
在又一个实施例中,用户也可以在与语音机器人的通话中,直接指定调节幅度。那么,语音播放参数调整意图中则可以携带该调节幅度或者需要调整至的目标参数值,呼叫平台则可以直接从语音播放参数调整意图中提取调节幅度,或者从语音播放参数调整意图中提取目标参数值,根据该目标参数值与当前的参数值之间的差值,确定调节幅度。比如,用户可以直接说音量值调大2,那么,则可以从语音播放参数调整意图中直接提取调节幅度2。又比如,用户可以直接说音量值调到12,则12是目标音量值,假如当前的音量值为10,则可以目标音量值12与当前的音量值10之间的差值,确定音量的调节幅度为2。
可以理解,用户可以同时指定对至少一种语音播放参数进行调整。不同的语音播放参数,所对应的调整方向和调节幅度可以不同。
步骤308,将当前的参数值按调整方向和调节幅度进行调整。
具体地,呼叫平台可以将当前的参数值按调整方向和调节幅度进行调整。可以理解,语音播放参数的调整后的参数值,位于该语音播放参数所对应的参数区间之内。
在一个实施例中,指定调整的语音播放参数,包括音量参数和语速参数中的至少一种。步骤308将当前的参数值按调整方向和调节幅度进行调整,包括:若指定调整的语音播放参数包括音量参数,则将音量参数当前的音量值,按照音量调整方向和音量调节幅度进行调整。
其中,音量调整方向,是音量参数所对应的调整方向。音量调节幅度是与音量参数对应的调节幅度。
比如,假设语音机器人当前的音量值为10,调整方向是调大,调节幅度是2,那么,则将语音机器人当前的音量值调大2,从而调整为音量值为12。
在一个实施例中,将当前的参数值按调整方向和调节幅度进行调整还包括:若指定调整的语音播放参数包括语速参数,则将语速参数当前的语速值,按照语速调整方向和语速调节幅度调整。
其中,语速调整方向,是语速参数所对应的调整方向;语速调节幅度是与语速参数对应的调节幅度。
比如,假设语音机器人当前的语速为每秒8个字,调整方向是调慢,调节幅度是3个字/秒,那么,则将语音机器人的语速调整为每秒5个字。
上述实施例中,能够准确、便捷地调节语音播放参数的参数值,且,能够约束各个语音播放参数的参数值在合理的范围内,进而保证了语音通话质量。
在一个实施例中,用户意图的意图类型中还包括业务意图。步骤208中的按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,包括:获取与业务意图对应的应答交互信息;按照语音播放参数的调整后的参数值,对应答交互信息进行语音合成。
其中,业务意图,是与业务相关的意图,比如,业务咨询、业务办理、业务反馈等意图,都属于业务意图。与业务意图对应的应答交互信息,用于对业务意图进行应答响应的信息。
可以理解,语音机器人所对应的交互信息,是对用户的语音流片段进行应答响应的交互信息,如果用户想要交流业务方面的一些问题,用户意图中就包括了业务意图,那么,语音机器人所对应的交互信息中就可以包括与业务意图对应的应答交互信息,以应答用户在业务方面的问题。呼叫平台可以按照语音播放参数的调整后的参数值,对应答交互信息进行语音合成。
在一个实施例中,应答交互信息可以为文本或或者具备语音属性的信息。呼叫平台可以按照语音播放参数的调整后的参数值,对应答交互信息进行语音合成。使得合成后的交互语音,符合调整后的语音播放参数的参数值。
在一个实施例中,按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,还包括:针对输出交互语音之后重新接收的语音流片段,若重新接收的语音流片段所表达的用户意图中不包括语音播放参数调整意图,则继续按照语音播放参数的调整后的参数值,对重新接收的语音流片段中的业务意图所对应的应答交互信息进行语音合成,并控制语音机器人输出合成后的交互语音。
具体地,由于语音流片段是在语音通话过程中实时输入的,不同语音流片段可能具有不同的用户意图。若在要求调整语音播放参数的语音流片段之后,重新接收的语音流片段所表达的用户意图中不包括语音播放参数调整意图,则语音机器人后续的应答交互信息皆可以继续按照语音播放参数调整后的最新的参数值进行语音合成,以生成符合调整后的最新的语音播放参数的交互语音。
可以理解,语音机器人和用户终端进行语音通话,相当于语音机器人与用户终端之间建立了实时的会话,语音机器人每次交互响应相当于在执行会话任务。由于语音流片段是在语音通话过程中实时输入的,不同语音流片段可能具有不同的用户意图,所以,语音机器人需要不断地针对不同的用户意图进行交互响应,相当于需要执行多个会话任务。那么,在执行当前会话任务中,若所获取的用户意图包括语音播放参数调整意图和业务意图,那么,除了根据语音播放参数调整意图调整语音播放参数的参数值之外,语音机器人还需要响应当前会话任务中的业务意图,获取与当前会话任务中的业务意图对应的应答交互信息,并将该应答交互信息按照调整后的参数值进行语音合成,生成交互语音。若后续的会话任务中的用户意图仅包括业务意图而不包括语音播放参数调整意图,则可以将后续的会话任务中的业务意图所对应的应答交互信息,仍然按照语音播放参数的调整后的最新的参数值(即,最新一次调整后的参数值)进行语音合成,以输出相应的交互语音。
上述实施例中,按照语音播放参数的调整后的参数值,对与业务意图对应的应答交互信息进行语音合成。能够使得后续应答语音都符合用户听力需求,从而提高了后续语音通话的有效性,即提高了后续语音通话质量。
在一个实施例中,该方法还包括:对语音流片段进行语义情绪识别,得到语义情绪信息;根据语义情绪信息,调整情感表达类的语音播放参数的参数值。本实施例中,步骤208中按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,包括:按照由语音播放参数调整意图调整的语音播放参数的调整后的参数值,以及情感表达类的语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。
需要说明的是,意图识别得到的用户意图,用于体现语句内容本身直接表达的意思,与语气、语调等并不相同。即,意图识别的用户意图,相当于用户字面意思所表达的意图。语义情绪识别,相当于并不是识别语句内容本身直接表达的意思,而是对非语言内容表达的抽象的情绪识别。
在一个实施例中,语音播放参数可以包括非情感类的语音播放参数和情感表达类的语音播放参数。非情感类的语音播放参数,可以包括音量和语速等中的至少一种。情感表达类的语音播放参数,可以语气和语调等中的至少一种。可以理解,对语音流片段进行意图识别,得到的语音播放参数调整意图中通常包括的是非情感类的语音播放参数。即,用户通常会直接指定对音量、语速这种非情感类的语音播放参数进行调整。
需要说明的是,但不排除有些用户会直接在语音通话中指定调整语气、语调这些情感表达类的语音播放参数。即,语音播放参数调整意图中指定调整的语音播放参数也可以包括情感表达类的语音播放参数。本申请实施例并不对语音播放参数调整意图中指定调整的语音播放参数的类型做限定,只是列举示意出语音播放参数整体会包括多种不同的类型,以及说明呼叫平台可以从意图识别和语义情绪识别两方面来调整语音播放参数,以对语音播放参数进行合理调整。
具体地,呼叫平台除了对语音流片段进行意图识别以外,还可以对语音流片段进行语义情绪识别,得到语义情绪信息。根据语义情绪信息,调整情感表达类的语音播放参数的参数值。相当于对用户进行情绪识别,将情感表达类的语音播放参数的参数值调整至符合用户当前情绪需求或者情感需求。呼叫平台则可以按照由语音播放参数调整意图调整的语音播放参数的调整后的参数值,以及情感表达类的语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,相当于根据用户明确直接表达的需求,以及对用户的情感进行识别间接得到的用户需求这两方面,对语音播放参数进行合理调整,以合成符合用户需求的交互语音。从而提高了合成语音的准确性。
在一个实施例中,在按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成之前,该方法还包括:判断语音流片段是否属于异常打断式语音;若语音流片段不属于异常打断式语音,则按照语音播放参数的调整后的参数值,播放预设的询问话术;询问话术,用于询问语音播放参数的调整后的参数值是否合适;若接收到用户终端针对调整后的参数值的肯定性回复语音,则执行按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。
其中,异常打断式语音,是用户终端输入的用于打断语音机器人正在播放的语音,以阻止该语音播放的语音。可以理解,用户使用异常打断式语音,是为了使该语音机器人播放该语音受阻。所以,在语音机器人与用户终端的语音通话过程中接收到的语音流片段并不都属于异常打断式语音。比如,若语音机器人的语音播放完毕后接收到的语音流片段则就不属于异常打断式语音,因为并没有打断语音机器人的播音。又比如,若是语音机器人在播放语音过程中,接收到指示调整语音播放参数的语音流片段,那么,该语音流片段也不是为了阻止语音机器人播放该语音,而是希望语音机器人能够更清楚的播放该语音,所以,该指示调整语音播放参数的语音流片段也不属于异常打断式语音。
即,不属于异常打断式语音的语音流片段可以包括未在语音机器人的语音播放过程中接收的语音流片段、以及在语音机器人的语音播放过程中,接收的指示调整语音播放参数的语音流片段等中的至少一种。可以理解,不属于异常打断式语音的语音流片段,还可以包括其他情况下的语音流片段,对此不再列举,只要其不是用于阻止语音机器人正在播放的语音即可。
具体地,呼叫平台可以判断语音流片段是否属于异常打断式语音。若语音流片段不属于异常打断式语音,则在按照语音流片段所表达的语音播放参数调整意图对语音播放参数的参数值进行调整后,按照语音播放参数的调整后的参数值,播放预设的询问话术。其中,该询问话术,用于询问语音播放参数的调整后的参数值是否合适。若接收到用户终端针对调整后的参数值的肯定性回复语音,则执行按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。其中,针对调整后的参数值的肯定性回复语音,用于表示用户终端对调整后的参数值进行肯定。
比如,在语音机器人播音完毕了或者语音机器人在播音过程中,用户说“请声音小点”,这就不属于异常打断式语音,因为其并没有要阻止语音机器人播报的内容,只是,希望后面的播音的音量小一点。那么,呼叫平台可以通过语义识别模块识别出用户意图为需要音量调小声点,则可以将音量值调小,比如,将音量值由15调到12,并按调小的音量值12播放询问话术,以询问用户调整后的音量值是否合适。比如,播放“你看我现在的音量可以吗”。若用户反馈可以,则语音机器人可以按照调整后的音量值12继续与用户终端进行交互。比如,以音量值12继续播报未播报完的内容,或者,若已经播报完毕,则后续的交互信息都可以按照音量值12来生成交互语音。
上述实施例中,在根据不属于异常打断式语音的语音流片段中的意图,调整语音播放参数的参数值之后,通过询问话术衔接以跟用户确认调整是否合适,并在合适之后,再按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。能够在合理调整参数值之后再继续进行交互,提高了交互准确性,避免了因在调整不合理的情况下就进行语音合成导致的不必要的系统资源浪费。
图4为一个实施例中实现基于语音通话的语音交互方法的系统架构图。参见图4,该架构图中包括互动式语音应答单元ivr(interactivevoiceresponse)、语音中控平台、会话管理平台。
其中,互动式语音应答单元ivr可以进行预处理。
会话管理平台,用于管理场景流程、外呼管理、客户管理以及外呼历史管理等。
语音中控平台,包括:任务处理单元、bot语义识别单元、语音识别单元asr(automaticspeechrecognition)、语音合成单元tts(texttospeech,文字转语音)、逻辑控制单元vui(voiceuserinterface,语音用户界面)、以及录音库。
其中,任务处理单元,用于进行会话逻辑控制、存储节点词槽以及话术设计等。语义识别单元中包括知识库、深度学习模型以及执行自然语言处理(nlp,naturallanguageprocessing)的逻辑。
现结合图4描述一个实施例中基于语音通话的语音交互方法的处理步骤。具体包括如下步骤:
1、用户在用户终端中提出了“请说大声点”这样的需求,这个语音流片段从互动式语音应答单元ivr输入进来。
2、语音机器人获取用户发送的语音流片段,需要先给到asr语音识别模块去做语音识别处理,得到对应的文本信息。将识别出文本信息给到语音中控平台。
3、语音中控平台再给到bot语义识别单元,进行意图识别,得到对应的用户意图。
4、若用户意图中包括语音播报参数调整意图,则给到语音中控平台,以调整语音播放参数的参数值。
5、语音中控平台再通过语音合成单元根据语音播报参数的调整后的参数值,对当前以及之后的应答交互信息进行语音合成,生成应答交互语音。
6、通过互动式语音应答单元ivr模块将合成的应答交互语音发送给用户终端,以播放该应答交互语音。
应该理解的是,虽然本申请各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,本申请各实施例的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种基于语音通话的语音交互装置,包括:语音接收模块502、意图识别模块504、参数调整模块506和语音合成模块508,其中:
语音接收模块502,用于在语音机器人与用户终端的语音通话交互过程中,接收用户终端发送的语音流片段。
意图识别模块504,用于对语音流片段进行意图识别,得到语音流片段所表达的用户意图。
参数调整模块506,用于若用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
语音合成模块508,用于按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成,生成交互语音。
语音输出模块510,用于控制语音机器人,向用户终端输出交互语音。
在一个实施例中,意图识别模块504还用于对语音流片段进行语音识别,得到相应的文本信息;对文本信息进行上下文语义理解和意图识别,得到语音流片段对应的用户意图。
在一个实施例中,参数调整模块506还用于从语音播放参数调整意图中,识别所指定调整的语音播放参数以及语音播放参数所对应的调整方向;获取语音播放参数所对应的参数区间;根据语音播放参数当前的参数值和参数区间,确定与语音播放参数对应的调节幅度;将当前的参数值按调整方向和调节幅度进行调整;其中,调整后的参数值,位于参数区间之内。
在一个实施例中,指定调整的语音播放参数,包括音量参数和语速参数中的至少一种。参数调整模块506还用于若指定调整的语音播放参数包括音量参数,则将音量参数当前的音量值,按照音量调整方向和音量调节幅度进行调整;其中,音量调整方向,是音量参数所对应的调整方向;音量调节幅度是与音量参数对应的调节幅度。
在一个实施例中,参数调整模块506还用于若指定调整的语音播放参数包括语速参数,则将语速参数当前的语速值,按照语速调整方向和语速调节幅度调整;其中,语速调整方向,是语速参数所对应的调整方向;语速调节幅度是与语速参数对应的调节幅度。
在一个实施例中,用户意图的意图类型中还包括业务意图。语音合成模块508还用于获取与业务意图对应的应答交互信息;按照语音播放参数的调整后的参数值,对应答交互信息进行语音合成。
在一个实施例中,语音合成模块508还用于针对输出交互语音之后重新接收的语音流片段,若重新接收的语音流片段所表达的用户意图中不包括语音播放参数调整意图,则继续按照语音播放参数的调整后的参数值,对重新接收的语音流片段中的业务意图所对应的应答交互信息进行语音合成,并通知语音输出模块510控制语音机器人输出合成后的交互语音。
如图6所示,在一个实施例中,该装置还包括:
情绪识别模块505,用于对语音流片段进行语义情绪识别,得到语义情绪信息。
本实施例中,参数调整模块506还用于根据语义情绪信息,调整情感表达类的语音播放参数的参数值。语音合成模块508还用于按照由语音播放参数调整意图调整的语音播放参数的调整后的参数值,以及情感表达类的语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。
在一个实施例中,语音输出模块510还用于判断语音流片段是否属于异常打断式语音;若语音流片段不属于异常打断式语音,则按照语音播放参数的调整后的参数值,播放预设的询问话术;询问话术,用于询问语音播放参数的调整后的参数值是否合适;若接收到用户终端针对调整后的参数值的肯定性回复语音,则通知语音合成模块508执行按照语音播放参数的调整后的参数值,对语音机器人所对应的交互信息进行语音合成。
在一个实施例中,意图识别模块504还用于语音机器人对语音流片段进行意图识别,得到语音流片段所表达的用户意图,并将用户意图传输至语音中控平台;参数调整模块506还用于若语音中控平台检测到用户意图的意图类型包括语音播放参数调整意图,则按照语音播放参数调整意图,调整语音机器人的语音播放参数的参数值。
关于基于语音通话的语音交互装置的具体限定可以参见上文中对于基于语音通话的语音交互方法的限定,在此不再赘述。上述基于语音通话的语音交互装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是呼叫平台的服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于预设的交互信息,比如,预设询问话术。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于语音通话的语音交互方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现本申请各实施例中基于语音通话的语音交互方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请各实施例中基于语音通话的语音交互方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除