CN113241066B - 语音交互方法及其系统、语音交互设备 - Google Patents
语音交互方法及其系统、语音交互设备 Download PDFInfo
- Publication number
- CN113241066B CN113241066B CN202010073273.4A CN202010073273A CN113241066B CN 113241066 B CN113241066 B CN 113241066B CN 202010073273 A CN202010073273 A CN 202010073273A CN 113241066 B CN113241066 B CN 113241066B
- Authority
- CN
- China
- Prior art keywords
- corpus
- voice
- nlp engine
- text
- intention
- 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
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000000463 material Substances 0.000 claims abstract description 34
- 238000012790 confirmation Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及语音交互方法及其系统、语音交互设备,方法包括:根据用户输入的第一语音指令获得第一语音文本;利用第一NLP引擎对第一语音文本进行识别得到第一意图和第一语料,利用第二NLP引擎对第一语音文本进行识别得到第一意图和第二语料;根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎或第二NLP引擎作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;选择NLP引擎后,当前NLP引擎根据其识别第一语音文本所得到的意图生成对应的控制指令,将控制指令发送至执行单元以执行相应任务。本发明能够避免采用多个NLP引擎的语音交互方式的NLP引擎冲突、混乱,提高用户体验。
Description
技术领域
本发明涉及车辆语音交互技术领域,具体涉及语音交互方法及其系统、语音交互设备。
背景技术
智能语音交互是当前人机交互的主流方式之一,对于车载语音交互而言,目前现有技术提出了采用基于细分场景的本地NLP引擎和在线NLP引擎对语音进行识别的交互方式,用户输入的语音识别有以下两种方式,第一种方式,用户通过车载终端的麦克风进行语音输入,车载终端通过本地NLP引擎得到识别结果;第二种方式,用户通过车载终端的麦克风进行语音输入,车载终端通过在线NLP引擎得到识别结果。可以理解的是,多个NLP引擎进行语义理解和返回结果后如何进行优选判断,以及为避免采用多NLP引擎带来的冲突、混乱和时延问题,需要一种合理的仲裁方法协调两个NLP引擎的工作机制,保障用户体验。
在实现本发明的过程中,发明人发现现有技术至少存在以下技术问题:
现有采用多NLP引擎的语音交互方式的NLP仲裁机制不够完善,不能有效提升回复的有效性,且容易引发回复结果的冲突、混乱,仲裁的过程过长,容易造成时间的延迟,导致整个系统的回复迟钝,带来不好的使用体验。
发明内容
本发明旨在提出一种语音交互方法及其系统、语音交互设备,以避免采用多个NLP引擎的语音交互方式的NLP引擎冲突、混乱,提高用户体验。
本发明实施例提出一种语音交互方法,包括:
获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
识别所述第一语音文本的对话状态;
利用第一NLP引擎对所述第一语音文本进行语义识别得到第一意图和第一语料,并利用第二NLP引擎对所述第一语音文本进行语义识别得到第二意图和第二语料;
根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则确定上一轮对话中所采用的NLP引擎作为当前NLP引擎;
当前NLP引擎根据其识别第一语音文本所得到的意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
优选地,根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎具体包括:
若第一语料的文本类型为有效语料,则选择第一NLP引擎作为当前NLP引擎;若第一语料的文本类型为兜底语料,则选择第二NLP引擎作为当前NLP引擎;
其中,所述有效语料为第一NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述兜底语料为第一NLP引擎无法识别所述第一语音文本语义时所得到的语料。
优选地,所述方法具体包括:
当选择第二NLP引擎作为当前NLP引擎时,判定所述第二语料的文本类型;
若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元以播放第二语料,并且第二NLP引擎生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元以播放第二语料以提示用户进行语音指令示教,并且,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述请求示教语料为第二NLP引擎无法识别所述第一语音文本语义时所得到的语料。
优选地,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图具体包括:
第二NLP引擎获取第二语音文本,并对所述第二语音文本进行语义识别得到第三意图,并生成第三语料;其中所述第二语音文本为根据用户输入的第二语音指令获得;
将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本的第二意图和第二语音文本的第三意图是否一致;
第二NLP引擎获取用户输入的确认信息,当该确认信息为确认一致,则第二NLP引擎生成与第三意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
优选地,所述方法还包括:
当所述确认信息为确认第一语音文本和第二语音文本的意图一致时,将所述第一语音文本和第二语音文本建立映射关系,并将所述第一语音文本作为新增语料增加至动态语料表中。
本发明实施例还提出一种语音交互系统,包括:
语音文本获取单元,用于获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
语音对话管理单元,用于识别所述第一语音文本的对话状态;
第一NLP引擎,用于对所述第一语音文本进行语义识别得到第一意图和第一语料,并且,当其作为当前NLP引擎时,根据第一意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
第二NLP引擎,用于对所述第一语音文本进行语义识别得到第二意图和第二语料,并且,当其作为当前NLP引擎时,生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
仲裁单元,用于根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则选择上一轮对话中所采用的NLP引擎作为当前NLP引擎。
优选地,所述仲裁单元具体用于:
若第一语料的文本类型为有效语料,则选择第一NLP引擎作为当前NLP引擎;若第一语料的文本类型为兜底语料,则选择第二NLP引擎作为当前NLP引擎;
其中,所述有效语料为第一NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述兜底语料为第一NLP引擎无法识别所述第一语音文本语义时所得到的语料。
优选地,所述第二NLP引擎具体用于:当第二NLP引擎作为当前NLP引擎时,判定所述第二语料的文本类型,并根据所述第二语料的文本类型执行相应策略;
其中,若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元以播放第二语料,并且第二NLP引擎生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元以播放第二语料以提示用户进行语音指令示教,并且,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述请求示教语料为第二NLP引擎无法识别所述第一语音文本语义时得到的语料。
优选地,所述第二NLP引擎具体用于:
接收第二语音文本,对所述第二语音文本进行语义识别得到第三意图、生成第三语料以及将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本的第二意图和第二语音文本的第三意图是否一致,并且,获取用户输入的确认信息,当该确认信息为确认一致时,生成与第三意图对应的控制指令以及将控制指令发送至执行单元以执行相应任务,并将所述第一语音文本和第二语音文本建立映射关系以及将所述第一语音文本作为新增语料增加至动态语料表中。
本发明实施例还提出一种语音交互设备,包括:根据上述实施例所述的语音交互系统;或者,存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行根据上述实施例所述语音交互方法的步骤。
以上技术方案至少具有以下优点:根据用户输入的第一语音指令获取第一语音文本,利用第一NLP引擎对所述第一语音文本进行识别得到第一语料,并利用第二NLP引擎对所述第一语音文本进行识别得到第二语料;若第一语音文本的对话类型为多轮对话,则不进行仲裁,直接选择上一轮对话中所采用的NLP引擎作为当前NLP引擎,若第一语音文本的对话类型为单轮对话,则进行仲裁,判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎。基于以上多NLP引擎语音交互方式,能够在面对多轮对话时,直接快速锁定第二NLP引擎进行识别和后续控制,在面对单轮对话时,根据第一语料的文本类型进行仲裁,并根据仲裁结果选择NLP引擎的处理结果作为输出结果,有效地避免采用多个NLP引擎的语音交互方式的NLP引擎冲突、混乱,提高语音交互的用户体验。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而得以体现。本发明的目的和其他优点可通过在说明书、权利要求书以及附图来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例中一种语音交互方法流程图。
图2本发明另一实施例中一种语音交互系统框架图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
另外,为了更好的说明本发明,在下文的具体实施例中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的手段未作详细描述,以便于凸显本发明的主旨。
本发明一实施例提出一种语音交互方法,采用NLP引擎仲裁后置的方式,即语音文本分别先进入多个NLP引擎进行语义识别后,再进行仲裁,图1为本实施例所述方法的流程图,参阅图1,本实施例方法包括如下步骤S101~S105:
步骤S101、获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
示例性地,用户语音通过麦克风发出的第一语音指令,可以利用外部自动语音识别(Automatic Speech Recognition,ASR)系统对用户发出的第一语音指令的PCM信号进行识别处理转换为第一语音文本,通过预设接口获取已转化成功的该第一语音文本。
步骤S102、识别所述第一语音文本的对话状态;
具体而言,语音交互中的对话状态包括多轮对话和单轮对话。其中,多轮对话例如是“很热”、“播放音乐”等,很热的目的可能是要打开天窗、打开车窗、打开空调等,“播放音乐”的目的可能是播放某一首歌,这种情况下用户需求比较复杂,有很多限制条件,可能需要分多轮进行陈述,用户在对话过程中可以不断修改或完善自己的需求。单轮对话例如是打开天窗”、“关闭天窗”,为一问一答的交互对话。步骤中如果识别第一语音文本的对话状态为多轮对话,则对所述第一语音文本进行多轮对话标记,以便于后续步骤中根据标记情况锁定当前NLP引擎。
步骤S103、利用第一NLP引擎对所述第一语音文本进行语义识别得到第一意图和第一语料,并利用第二NLP引擎对所述第一语音文本进行语义识别得到第二意图和第二语料;
具体而言,所述第一NLP引擎为在线NLP引擎,其包括离线语料表;所述第二NLP引擎为本地NLP引擎,其包括动态语料表。
其中,第一NLP引擎进行语义识别,判定离线语料表中是否存在与所述第一语音文本对应的语料,若存在,则将该语料作为第一语料,若不存在,则将兜底语料(例如理解失败、识别失败等)作为第一语料;
其中,第二NLP引擎进行语义识别,判定动态语料表中是否存在与所述第一语音文本对应的语料,若存在,则将该语料作为第二语料,若不存在,则将兜底语料(例如这个指令我不懂,请您教我等)作为第二语料;
需说明的是,所述离线语料表和动态语料表中的兜底语料具体可以自行设置。
步骤S104、根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则确定上一轮对话中所采用的NLP引擎作为当前NLP引擎;
具体而言,步骤S104中首先根据步骤S102的标记情况判定第一语音文本的对话状态,如果第一语音文本的对话状态为多轮对话,则不进行引擎仲裁,直接选择上一轮对话中所采用的NLP引擎作为当前NLP引擎;如果第一语音文本的对话状态为单轮对话,则进行仲裁,首先判定第一语料的文本类型,包括有效语料和兜底语料,然后根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;
其中,所述语音播报单元优选为TTS(Text To Speech)系统。
示例性地,第一语音文本为“打开空调”,第一意图则为想要打开空调,第一语料例如为“打开空调”、“为您打开空调”、“好的,空调正在打开”等等,具体第一语料为预先设置。
步骤S105、当前NLP引擎根据其识别第一语音文本所得到的意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
具体而言,在仲裁结束后,当前NLP引擎会接收到一个启动信号,当前NLP引擎根据其识别第一语音文本所得到的意图生成对应的控制指令,例如第一语音文本为“打开空调”,第一意图则为想要打开空调,与该第一意图对应的控制指令即为“启动空调”,执行单元对应为空调。
通过以上实施例描述可知,应用本实施例方法,能够有效提升回复的有效性,且避免引发回复结果的冲突、混乱,从而大大缩小NLP引擎仲裁时间,避免容易造成时间的延迟和导致整个系统的回复迟钝,大大提高了语音交互的用户体验。
在一具体实施例中地,步骤S104中的根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎具体包括:
若第一语料的文本类型为有效语料,则选择第一NLP引擎作为当前NLP引擎;
若第一语料的文本类型为兜底语料,则选择第二NLP引擎作为当前NLP引擎;
其中,所述有效语料为第一NLP引擎成功识别所述第一语音文本语义时所得到的语料,即离线语料表中与所述第一语音文本对应的语料;所述兜底语料为第一NLP引擎无法识别所述第一语音文本语义时所得到的语料,即离线语料表不存在与所述第一语音文本对应的语料,为一种不确定、笼统的回复语料。
在一具体实施例中地,所述方法还包括步骤S201、步骤S202和步骤203;
步骤S201、当选择第二NLP引擎作为当前NLP引擎时,判定所述第二语料的文本类型。
步骤S202、若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元以播放第二语料,并且第二NLP引擎生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
具体而言,步骤S202中所述有效语料为第二NLP引擎成功识别所述第一语音文本语义时所得到的语料,即动态语料表中与所述第一语音文本对应的语料。
步骤S203、若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元以播放第二语料以提示用户进行第一语音指令示教,并且,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述请求示教语料为第二NLP引擎无法识别所述第一语音文本语义时所得到的语料,即动态语料表不存在与所述第一语音文本对应的语料,为一种不确定、笼统的回复语料。
具体而言,如果第二语料的文本类型为请求示教语料,用户在得到第二语料的提示之后,输入第二语音指令,即示教信息,根据用户输入的第二语音指令可以获到与第二语音指令对应的意图,该意图与第一语音文本的意图是一致的且能够被第二NLP引擎识别,最后第二NLP引擎胜出该意图所对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
示例性地,第二语料为“这个指令我还不懂,请您教我”;此时,语音播放单元播放“这个指令我还不懂,请您教我”的语音内容。
需说明的是,很多情况下第二NLP引擎的动态语料表中也找不到有效的回复,从而无法成功回复。如果第二NLP引擎回复“这个指令我还不懂,请您教我”,将会在一定周期内锁定第二NLP引擎作为识别语音文本的引擎,进入到用户示教的多轮对话过程,通过与用户的交互补全不能理解的问题,直到系统定义的周期结束或者用户拒绝配合进行示教。
在一具体实施例中地,步骤S203中的第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图具体包括步骤S301~步骤S303:
步骤S301、第二NLP引擎获取第二语音文本,并对所述第二语音文本进行语义识别得到第三意图,并生成第三语料;其中所述第二语音文本为根据用户输入的第二语音指令获得;
具体而言,在输出提示用户进行第一语音指令示教的第二语料之后,获取用户输入的第二语音指令,并根据所述第二语音指令获得第二语音文本,第二语音文本的获得方式与第一语音文本的获得方式相同;第二NLP引擎对所述第二语音文本进行语义识别得到第二意图,并生成第三语料,示例性地,第一语音文本为打开冷气,第二语音文本为打开空调,则第三语料息例如为“打开冷气是不是打开空调的意思?”。
步骤S302、将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本和第二语音文本的意图是否一致;
步骤S303、第二NLP引擎获取用户输入的确认信息,当该确认信息为确认一致,则第二NLP引擎生成与第三意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
具体而言,用户在得到第三语料的提示后,通过语音方式或物理输入单元输入确认信息,例如“确认一致”。在获得用户的确认信息之后,判定确认信息是否为确认一致,若确认一致,则生成与所述第二意图对应的控制指令,例如第二语音文本为打开空调,则执行单元为空调,控制指令为启动空调。若确认不一致,则不生成所述第二意图对应的控制指令,并进一步请求用户进行示教,具体可以重新执行步骤S301~S303的流程。
在一具体实施例中地,所述方法还包括:
当所述确认信息为确认第一语音文本的第二意图和第二语音文本的第三意图一致时,将所述第一语音文本和第二语音文本建立映射关系,并将所述第一语音文本作为新增语料增加至动态语料表中。
具体而言,当将所述第一语音文本和第二语音文本建立映射关系,并将所述第一语音文本作为新增语料增加至动态语料表中之后,第二NLP引擎学习了第一语音指令,当用户再次发出第一语音指令时,第二NLP引擎能够对第一语音指令所对应的第一语音文本进行有效识别并进行回复。
需说明的是,本实施例提出了在第二NLP引擎无法识别第一语音文本的情况下,进行本地语料增量学习,能够持续性扩展动态语料表的内容和前端仲裁的能力,使得整个人机交互系统能够持续性的基于场景和用户个性化用语学习,实现人机交互的“千人千面”。
需说明的是,本文中的步骤序号仅为区别不同步骤,并不构成对步骤顺序的限定,步骤实际执行步骤顺序应根据技术方案整体确定其顺序的可能性方案。
本发明另一实施例还提出一种语音交互系统,图二为本实施例所述系统的框架图,参阅图2,本实施例所述系统包括:
语音文本获取单元1,用于获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
语音对话管理单元2,用于识别所述第一语音文本的对话状态;
第一NLP引擎3,用于对所述第一语音文本进行语义识别得到第一意图和第一语料,并且,当其作为当前NLP引擎时,根据第一意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
第二NLP引擎4,用于对所述第一语音文本进行语义识别得到第二意图和第二语料,并且,当其作为当前NLP引擎时,生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
仲裁单元5,用于根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎3和第二NLP引擎4之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元20以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎3和第二NLP引擎4之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则选择上一轮对话中所采用的NLP引擎作为当前NLP引擎。
在一具体实施例中地,所述仲裁单元5具体用于:
若第一语料的文本类型为有效语料,则选择第一NLP引擎3作为当前NLP引擎;若第一语料的文本类型为兜底语料,则选择第二NLP引擎4作为当前NLP引擎;
其中,所述有效语料为第一NLP引擎3成功识别所述第一语音文本语义时所得到的语料;所述兜底语料为第一NLP引擎3无法识别所述第一语音文本语义时所得到的语料。
在一具体实施例中地,所述第二NLP引擎4具体用于:当第二NLP引擎4作为当前NLP引擎时,判定所述第二语料的文本类型,并根据所述第二语料的文本类型执行相应策略;
其中,若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元20以播放第二语料,并且第二NLP引擎4生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元20以播放第二语料以提示用户进行语音指令示教,并且,第二NLP引擎4根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述请求示教语料为第二NLP引擎4无法识别所述第一语音文本语义时得到的语料。
在一具体实施例中地,所述第二NLP引擎4具体用于:
接收第二语音文本,对所述第二语音文本进行语义识别得到第三意图、生成第三语料以及将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本的第二意图和第二语音文本的第三意图是否一致,并且,获取用户输入的确认信息,当该确认信息为确认一致时,生成与第三意图对应的控制指令以及将控制指令发送至执行单元以执行相应任务,并将所述第一语音文本和第二语音文本建立映射关系以及将所述第一语音文本作为新增语料增加至动态语料表中。
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
需说明的是,上述实施例所述系统与上述实施例所述方法对应,因此,上述实施例所述系统未详述部分可以参阅上述实施例所述方法的内容得到,此处不再赘述。
并且,上述实施例所述语音交互系统如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
本发明另一实施例还提出一种语音交互设备,包括:根据上述实施例所述的语音交互系统;或者,存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行根据上述实施例所述语音交互方法的步骤。
当然,所述语音控制设备还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该语音控制设备还可以包括其他用于实现设备功能的部件,在此不做赘述。
示例性的,所述计算机程序可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述语音控制设备中的执行过程。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述语音控制设备的控制中心,利用各种接口和线路连接整个所述语音控制设备的各个部分。
所述存储器可用于存储所述计算机程序和/或单元,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或单元,以及调用存储在存储器内的数据,实现所述语音控制设备的各种功能。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种语音交互方法,其特征在于,包括:
获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
识别所述第一语音文本的对话状态;
利用第一NLP引擎对所述第一语音文本进行语义识别得到第一意图和第一语料,并利用第二NLP引擎对所述第一语音文本进行语义识别得到第二意图和第二语料;
根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则选择上一轮对话中所采用的NLP引擎作为当前NLP引擎;
当前NLP引擎根据其识别第一语音文本所得到的意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
2.根据权利要求1所述的语音交互方法,其特征在于,根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎具体包括:
若第一语料的文本类型为有效语料,则选择第一NLP引擎作为当前NLP引擎;若第一语料的文本类型为兜底语料,则选择第二NLP引擎作为当前NLP引擎;
其中,所述第一语料的文本类型为有效语料是指第一NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述兜底语料为第一NLP引擎无法识别所述第一语音文本语义时所得到的语料。
3.根据权利要求2所述的语音交互方法,其特征在于,所述方法具体包括:
当选择第二NLP引擎作为当前NLP引擎时,判定所述第二语料的文本类型;
若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元以播放第二语料,并且第二NLP引擎生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元以播放第二语料以提示用户进行语音指令示教,并且,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述第二语料的文本类型为有效语料是指第二NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述请求示教语料为第二NLP引擎无法识别所述第一语音文本语义时所得到的语料。
4.根据权利要求3所述的语音交互方法,其特征在于,所述第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图具体包括:
第二NLP引擎获取第二语音文本,并对所述第二语音文本进行语义识别得到第三意图,并生成第三语料;其中所述第二语音文本为根据用户输入的第二语音指令获得;
将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本的第二意图和第二语音文本的第三意图是否一致;
第二NLP引擎获取用户输入的确认信息,当该确认信息为确认一致,则第二NLP引擎生成与第三意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务。
5.根据权利要求4所述的语音交互方法,其特征在于,所述方法还包括:
当所述确认信息为确认第一语音文本的第二意图和第二语音文本的第三意图一致时,将所述第一语音文本和第二语音文本建立映射关系,并将所述第一语音文本作为新增语料增加至动态语料表中。
6.一种语音交互系统,其特征在于,包括:
语音文本获取单元,用于获取用户输入的第一语音指令,并根据所述第一语音指令获得第一语音文本;
语音对话管理单元,用于识别所述第一语音文本的对话状态;
第一NLP引擎,用于对所述第一语音文本进行语义识别得到第一意图和第一语料,并且,当其作为当前NLP引擎时,根据第一意图生成对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
第二NLP引擎,用于对所述第一语音文本进行语义识别得到第二意图和第二语料,并且,当其作为当前NLP引擎时,生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
仲裁单元,用于根据第一语音文本的对话状态、第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎,并将当前NLP引擎识别得到的语料发送至语音播报单元以播放语料;其中:若第一语音文本的对话状态为单轮对话,则判定第一语料的文本类型,并根据第一语料的文本类型选择第一NLP引擎和第二NLP引擎之一作为当前NLP引擎;若第一语音文本的对话状态为多轮对话,则选择上一轮对话中所采用的NLP引擎作为当前NLP引擎。
7.根据权利要求6所述的语音交互系统,其特征在于,所述仲裁单元具体用于:
若第一语料的文本类型为有效语料,则选择第一NLP引擎作为当前NLP引擎;若第一语料的文本类型为兜底语料,则选择第二NLP引擎作为当前NLP引擎;
其中,所述第一语料的文本类型为有效语料是指第一NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述兜底语料为第一NLP引擎无法识别所述第一语音文本语义时所得到的语料。
8.根据权利要求6所述的语音交互系统,其特征在于,所述第二NLP引擎具体用于:当第二NLP引擎作为当前NLP引擎时,判定所述第二语料的文本类型,并根据所述第二语料的文本类型执行相应策略;
其中,若第二语料的文本类型为有效语料,则将第二语料发送至语音播报单元以播放第二语料,并且第二NLP引擎生成与第二意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,若第二语料的文本类型为请求示教语料,则将第二语料发送至语音播报单元以播放第二语料以提示用户进行语音指令示教,并且,第二NLP引擎根据用户输入的示教信息确定第一语音文本的意图,并生成该第一语音文本的意图对应的控制指令,并将控制指令发送至执行单元以执行相应任务;
其中,所述第二语料的文本类型为有效语料是指第二NLP引擎成功识别所述第一语音文本语义时所得到的语料;所述请求示教语料为第二NLP引擎无法识别所述第一语音文本语义时得到的语料。
9.根据权利要求7所述的语音交互系统,其特征在于,所述第二NLP引擎具体用于:
接收第二语音文本,对所述第二语音文本进行语义识别得到第三意图、生成第三语料以及将所述第三语料发送至语音播放单元进行播放以提示用户确认第一语音文本的第二意图和第二语音文本的第三意图是否一致,并且,获取用户输入的确认信息,当该确认信息为确认一致时,生成与第三意图对应的控制指令以及将控制指令发送至执行单元以执行相应任务,并将所述第一语音文本和第二语音文本建立映射关系以及将所述第一语音文本作为新增语料增加至动态语料表中。
10.一种语音交互设备,包括:根据权利要求6-9任一项所述的语音交互系统;或者,存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行根据权利要求1-5中任一项所述语音交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010073273.4A CN113241066B (zh) | 2020-01-22 | 2020-01-22 | 语音交互方法及其系统、语音交互设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010073273.4A CN113241066B (zh) | 2020-01-22 | 2020-01-22 | 语音交互方法及其系统、语音交互设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113241066A CN113241066A (zh) | 2021-08-10 |
CN113241066B true CN113241066B (zh) | 2022-04-22 |
Family
ID=77129842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010073273.4A Active CN113241066B (zh) | 2020-01-22 | 2020-01-22 | 语音交互方法及其系统、语音交互设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113241066B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230138B1 (en) * | 2000-06-28 | 2001-05-08 | Visteon Global Technologies, Inc. | Method and apparatus for controlling multiple speech engines in an in-vehicle speech recognition system |
CN1723487A (zh) * | 2002-12-13 | 2006-01-18 | 摩托罗拉公司 | 用于选择性语音识别的方法和装置 |
CN103533154A (zh) * | 2012-06-28 | 2014-01-22 | Lg电子株式会社 | 移动终端及其识别语音的方法 |
CN109949817A (zh) * | 2019-02-19 | 2019-06-28 | 一汽-大众汽车有限公司 | 基于双操作系统双语音识别引擎的语音仲裁方法及装置 |
CN110265013A (zh) * | 2019-06-20 | 2019-09-20 | 平安科技(深圳)有限公司 | 语音的识别方法及装置、计算机设备、存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10706852B2 (en) * | 2015-11-13 | 2020-07-07 | Microsoft Technology Licensing, Llc | Confidence features for automated speech recognition arbitration |
-
2020
- 2020-01-22 CN CN202010073273.4A patent/CN113241066B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230138B1 (en) * | 2000-06-28 | 2001-05-08 | Visteon Global Technologies, Inc. | Method and apparatus for controlling multiple speech engines in an in-vehicle speech recognition system |
CN1723487A (zh) * | 2002-12-13 | 2006-01-18 | 摩托罗拉公司 | 用于选择性语音识别的方法和装置 |
CN103533154A (zh) * | 2012-06-28 | 2014-01-22 | Lg电子株式会社 | 移动终端及其识别语音的方法 |
CN109949817A (zh) * | 2019-02-19 | 2019-06-28 | 一汽-大众汽车有限公司 | 基于双操作系统双语音识别引擎的语音仲裁方法及装置 |
CN110265013A (zh) * | 2019-06-20 | 2019-09-20 | 平安科技(深圳)有限公司 | 语音的识别方法及装置、计算机设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113241066A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109326289B (zh) | 免唤醒语音交互方法、装置、设备及存储介质 | |
DE112016004863T5 (de) | Parametersammlung und automatische Dialogerzeugung in Dialogsystemen | |
CN111261151B (zh) | 一种语音处理方法、装置、电子设备及存储介质 | |
DE102014109121A1 (de) | Systeme und Verfahren zur Arbitrierung eines Sprachdialogdienstes | |
CN105702253A (zh) | 一种语音唤醒方法及装置 | |
CN108446321B (zh) | 一种基于深度学习的自动问答方法 | |
CN108519998B (zh) | 基于知识图谱的问题引导方法及装置 | |
CN110851221A (zh) | 一种智慧家居场景配置的方法及装置 | |
CN113421561B (zh) | 语音控制方法、语音控制装置、服务器和存储介质 | |
CN111178081B (zh) | 语义识别的方法、服务器、电子设备及计算机存储介质 | |
CN111968643A (zh) | 智能识别方法、机器人及计算机可读存储介质 | |
CN110659361A (zh) | 一种对话方法、装置、设备及介质 | |
CN108492826B (zh) | 音频处理方法、装置、智能设备及介质 | |
CN107680598B (zh) | 基于好友声纹通讯录的信息交互方法、装置及其设备 | |
CN113241066B (zh) | 语音交互方法及其系统、语音交互设备 | |
CN113241067B (zh) | 一种语音交互方法及其系统、语音交互设备 | |
CN109960489B (zh) | 生成智能问答系统的方法、装置、设备、介质及问答系统 | |
CN110633037B (zh) | 基于自然语言的人机交互方法、装置和计算机存储介质 | |
CN113160807A (zh) | 一种语料库更新方法及其系统、语音控制设备 | |
CN113035181A (zh) | 语音数据处理方法、设备和系统 | |
CN111382236A (zh) | 一种交互流程间的切换方法及其装置 | |
CN111949775B (zh) | 一种引导对话的生成的方法、装置、设备及介质 | |
CN112148864B (zh) | 语音交互方法、装置、计算机设备和存储介质 | |
CN114179083B (zh) | 一种引领机器人语音信息的生成方法、装置和引领机器人 | |
CN111081236B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |