CN111696534B - 语音交互设备和***、设备控制方法、计算设备以及介质 - Google Patents
语音交互设备和***、设备控制方法、计算设备以及介质 Download PDFInfo
- Publication number
- CN111696534B CN111696534B CN201910199373.9A CN201910199373A CN111696534B CN 111696534 B CN111696534 B CN 111696534B CN 201910199373 A CN201910199373 A CN 201910199373A CN 111696534 B CN111696534 B CN 111696534B
- Authority
- CN
- China
- Prior art keywords
- voice
- information
- voice interaction
- module
- natural language
- 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 148
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 81
- 238000004891 communication Methods 0.000 claims description 30
- 230000002452 interceptive effect Effects 0.000 claims 3
- 230000004044 response Effects 0.000 abstract description 9
- 230000004807 localization Effects 0.000 abstract description 2
- 238000004806 packaging method and process Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 14
- 230000002085 persistent effect Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 241000209140 Triticum Species 0.000 description 2
- 235000021307 Triticum Nutrition 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000002618 waking effect Effects 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
- 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- 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/26—Speech to text 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/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
-
- 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/225—Feedback of the input speech
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Telephonic Communication Services (AREA)
Abstract
公开了一种语音交互设备、语音交互***以及设备控制方法。该语音交互设备从物联网服务器接收并在本地的存储模块存储一个或多个设备的设备信息。语音交互模块与用户进行语音交互。语音交互设备本地的语音处理模块从语音交互模块接收到的语音中识别实体信息和意图信息。语音交互设备本地的设备管理模块向与实体信息对应的设备发送对应于意图信息的指令。通过在本地的语音交互设备上部署语音识别、自然语言理解和物联网设备控制指令封装模块,实现了物联网设备管理本地化,减少了云端链路上的网络开销,不需等待云端语音识别的结果,因此缩短了从用户说话到实现控制之间的响应时间,从而提升响应速度,改善用户体验。
Description
技术领域
本公开涉及一种语音交互领域,特别涉及通过语音控制设备的语音交互设备、语音交互***以及设备控制方法。
背景技术
随着物联网的普及与发展,业已实现用语音对各类物联网设备进行控制。
一般地,终端的语音交互设备将所接收到的语音上传到云端,借助云端强大的处理能力进行语音识别和自然语言理解。物联网服务器根据自然语言理解的结果生成控制指令下发到相应的物联网设备。
用户说话的同时,语音交互设备可以将音频文件上传到云端,通过云端自动语音识别(ASR)引擎识别并输出文本。
然而,在用户说完话后,语音交互设备需要经过算法判断用户是否说完话。一般地,语音交互设备会等待1秒左右,然后闭麦,即关闭麦克风。
然后,将云端ASR文本输出到云端自然语言理解(NLU)引擎,输出自然语言处理(NLP)信息。
在用户的语音涉及物联网设备控制时,云端将NLP信息发送到物联网IOT服务端。IOT服务端进行指令封装,并向对应的物联网设备下发控制指令。
然而,云端ASR引擎对音频文件的解析存在耗时情况,端上等待云端ASR的文本输出也需要等待时间,同时还需要有网络开销。
另外,IOT设备控制也需要经过IOT服务,这个过程中链路上应用比较多,中间各应用也会耗时。
这样,当通过语音交互设备控制IOT设备时,响应往往比较慢。
因此,需要一种新的语音交互方案,以提升响应速度,改善用户体验。
发明内容
本发明所要解决的技术问题是提供一种语音交互设备控制方案,其能够提升相应速度,改善用户体验。
根据本公开第一个方面,提供了一种语音交互设备,包括:存储模块,用于存储一个或多个设备的设备信息;语音交互模块,用于与用户进行语音交互;语音处理模块,用于从语音交互模块接收到的语音中识别实体信息和意图信息;以及设备管理模块,用于根据所述存储模块存储的设备信息,向与实体信息对应的设备发送对应于意图信息的指令。
可选地,语音处理模块包括:语音识别模块,用于将语音识别为文本;置信度判断模块,用于判断所识别的文本的置信度是否达到预定置信度阈值;以及自然语言理解模块,用于在判定置信度达到置信度阈值的情况下,对所识别的文本进行分析以得到实体信息和意图信息。
可选地,语音处理模块还从语音中识别与实体信息和/或意图信息相关联的属性信息,设备管理模块根据属性信息确定与实体信息对应的设备,并且/或者基于属性信息生成对应于意图信息的指令。
可选地,设备的设备信息包括针对设备的指令的指令协议,设备管理模块根据指令协议生成指令。
可选地,语音交互设备还包括:通信模块,用于与管理一个或多个设备的物联网服务器通信,从物联网服务器接收一个或多个设备的设备信息。
可选地,设备管理模块从存储模块查找与实体信息对应的设备的设备信息,在查找到与实体信息对应的设备的设备信息的情况下,设备管理模块生成指令,并向实体信息对应的设备发送指令。
可选地,通信模块还用于与语音处理服务器通信,向语音处理服务器上传语音交互模块接收到的语音,以便语音处理服务器进行语音识别和自然语言理解,并向物联网服务器发送自然语言理解的结果,在设备管理模块查找到与实体信息对应的设备的设备信息的情况下,通信模块向语音处理服务器发送终止语音识别和/或自然语言理解的消息。
可选地,在设备管理模块没有查找到与实体信息对应的设备的设备信息的情况下,或者所查找到的设备不适于执行对应于意图信息的操作的情况下,在语音交互模块判定语音结束后,通信模块向语音处理服务器发送语音结束消息,语音处理服务器对语音识别得到的文本进行自然语言理解,并向物联网服务器发送自然语言理解的结果。
可选地,维护命中标记,在设备管理模块查找到与实体信息对应的设备的设备信息以前,保持命中标记为表示没有命中的第一状态,在设备管理模块查找到与实体信息对应的设备的设备信息的情况下,将命中标记设置为表示命中的第二状态,通信模块根据命中标记确定是否向服务器发送终止语音识别和/或自然语言理解的消息和/或语音结束消息。
可选地,通信模块分批次接收物联网服务器下发的设备信息,每个批次的数据量不超过预定数据量阈值。
可选地,一个或多个设备是与语音交互设备关联的设备;并且/或者语音交互设备是智能音箱或者语音处理模组。
根据本公开第二个方面,提供了一种语音交互***,包括:一个或多个设备;以及语音交互设备,其上存储有一个或多个设备的设备信息,用于与用户进行语音交互,从用户的语音中识别实体信息和意图信息,并根据所存储的设备信息,向与实体信息对应的设备发送对应于意图信息的指令。
可选地,还包括:物联网服务器,管理一个或多个设备,并向语音交互设备下发一个或多个设备的设备信息。
可选地,物联网服务器分批次向语音交互设备下发设备信息,每个批次的数据量不超过预定数据量阈值。
可选地,还包括:语音处理服务器,从语音交互设备接收用户的语音,对所接收的语音进行语音识别和自然语言理解,并向物联网服务器发送自然语言理解的结果,其中,在语音交互设备查找到与实体信息对应的设备的设备信息的情况下,通信模块向语音处理服务器发送终止语音识别和/或自然语言理解的消息,在语音交互设备没有查找到与实体信息对应的设备的设备信息的情况下,或者所查找到的设备不适于执行对应于意图信息的操作的情况下,在判定语音结束后,语音交互设备向语音处理服务器发送语音结束消息,语音处理服务器响应于语音结束消息,向物联网服务器发送自然语言理解的结果。
根据本公开第三个方面,提供了一种设备控制方法,包括:本地存储一个或多个设备的设备信息;将所接收到的语音识别为文本;对所识别的文本进行分析以得到其中涉及的实体信息和意图信息;以及根据本地存储的设备信息,向与实体信息对应的设备发送对应于意图信息的指令。
可选地,该设备控制方法由智能音箱设备执行,或者由语音处理模组执行。
可选的,上述设备包括物联网设备。
可选地,实体信息对应的设备包括:智能家居设备;和/或与家居设备关联的处理模组。
可选地,还包括:判断所识别的文本的置信度是否达到预定置信度阈值,其中,在判定置信度达到置信度阈值的情况下,对所识别的文本进行分析。
可选地,还包括:从管理一个或多个设备的物联网服务器接收一个或多个设备的设备信息。
可选地,还包括:维护命中标记,在设备管理模块查找到与实体信息对应的设备的设备信息以前,保持命中标记为表示没有命中的第一状态,在设备管理模块查找到与实体信息对应的设备的设备信息的情况下,将命中标记设置为表示命中的第二状态,在命中标记处于第二状态的情况下,通信模块向语音处理服务器发送终止语音识别和/或自然语言理解的消息,在命中标记处于第一状态的情况下,在判定用户的语音结束后,通信模块向语音处理服务器发送语音结束消息。
根据本公开的第四个方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上述第三方面所述的方法。
根据本公开的第五个方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上述第三方面所述的方法。
通过将原本设置在云端的语音识别、自然语言理解和物联网设备控制指令封装工作移植到本地的语音交互设备上,减少了云端链路上的网络开销,不需等待云端语音识别的结果,因此缩短了从用户说话到实现控制之间的响应时间,从而提升响应速度,改善用户体验。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1是根据本公开的语音交互设备的示意性框图;
图2是根据本公开示例的本地语音处理模块的示意性框图;
图3是根据本公开的语音交互方法的示意性流程图;
图4是根据本公开的语音交互方案示例的流程示意图;
图5是根据本公开的语音交互方案另一示例的流程示意图。
图6是根据本发明一实施例可用于实现上述方法的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本公开的语音交互***包括一个或多个设备、以及语音交互设备。
语音交互设备上存储有该一个或多个设备的设备信息。
语音交互设备与用户进行语音交互,从用户的语音中识别实体信息和意图信息,并向与实体信息对应的设备发送对应于意图信息的指令。
另外,该语音交互***中还可以包括物联网服务器和语音处理服务器。下文中将详细描述各设备和服务器之间的功能。
下面参考图1至3描述根据本发明的语音交互设备和语音交互方法。
图1是根据本公开的语音交互设备的示意性框图。图3是根据本公开的语音交互方法的示意性流程图。该方法通过语音交互的方式实现了设备控制,因此,也可以视为一种设备控制方法。
根据本公开的语音交互设备10例如可以是智能音箱。通过智能音箱客户端和云端的配合,实现与用户的语音交互。
如图1所示,根据本公开的语音交互设备10可以包括通信模块11、存储模块12、语音交互模块13、语音处理模块14和设备管理模块15。
与现有的语音交互设备例如智能音箱不同,根据本公开的语音交互设备10在本地设置了语音处理模块14和设备管理模块15,使得语音交互设备10本地就具有了语音识别和自然语言理解的能力,并且具有了对物联网设备的管理能力。
在另一个示例中,语音交互设备10例如可以实现为语音处理模组。语音处理模组与其它设备(例如音箱、冰箱、计算机、人机交互设备等办公设备或家居设备)关联,以有线或无线方式通信连接,两者相配合以实现本公开的语音交互及设备控制方案。
下面结合图3的语音交互方法流程图,详细描述图1中各模块的功能。
参考图3,在步骤S10,语音交互设备10可以通过其通信模块11,从物联网服务器接收一个或多个设备的设备信息。
这一个或多个设备可以是与语音交互设备10关联的设备。这些设备可以是由物联网IOT服务器管理的物联网IOT设备。
通信模块11可以响应于语音交互设备10上电,向物联网服务器请求设备信息。在存储模块12本地存储了设备信息之后,可以仅在有新的设备信息时,进一步获取新的设备信息,以对本地存储的设备信息进行更新。
出于小型化等方面的考虑,语音交互设备10的数据传输能力往往较弱。因此,物联网服务器将较大数量的设备信息分批次下发到语音交互设备10,每个批次的数据量不超过预定数据量阈值。相应地,通信模块11分批次接收所述物联网服务器下发的设备信息。
另外,应当理解,语音交互设备10也可以通过其它方式获得设备信息,例如,预先设置,通过存储介质转存,人工输入等方式。
在步骤S20,在存储模块12中存储所获得的一个或多个设备的设备信息。
语音交互模块13与用户进行语音交互。在步骤S30和S50,语音处理模块14从语音交互模块13接收到的语音中识别实体信息和意图信息。这样,在步骤S60,设备管理模块15可以根据存储模块12存储的设备信息,向与实体信息对应的设备发送对应于意图信息的指令。
下面参考图2详细描述根据本公开示例的语音处理模块14对语音的处理。
图2是根据本公开示例的本地语音处理模块的示意性框图。
如图2所示,语音处理模块14可以包括语音识别模块(也可以称为“(本地)语音识别引擎”或“(本地)ASR引擎”)141、置信度判断模块142和自然语言理解模块(也可以称为“(本地)自然语言理解引擎”或“(本地)NLU引擎”)143。
在步骤S30,语音识别模块141将语音交互模块13所接收到的语音识别为文本。
在本公开的优选实施例中,在步骤S40,可以由置信度判断模块142判断所识别的文本的置信度是否达到预定置信度阈值。例如,可以通过对已识别的文本语料的文字数量等方面进行判断分析,以判断置信度是否达到该预定置信度阈值。
在判定置信度达到置信度阈值的情况下,将所识别的文本交给自然语言理解模块143进行分析。
在现有的语音交互设备中,在用户说完话后需要等待1秒左右才能判断用户是否说完话,判定用户说完话之后告知云端服务器用户说完话了,然后云端才进行NLU处理。这个时间消耗太长。
通过进行上述置信度判断,本公开除了将语音处理功能放在语音交互设备本地,还可以将开始NLU分析的时间进一步提前。不需要等到判定用户说完话了,即可开始进行NLU分析。
在步骤S50,由自然语言理解模块143对所识别的文本进行分析,以得到其中涉及的实体信息和意图信息。
例如,当用户发出语音“开灯”时,实体信息为“灯”,意图信息为“开”。
基于自然语言理解的结果,在步骤S60,设备管理模块15可以向与实体信息对应的设备发送对应于意图信息的指令。
具体说来,设备管理模块15可以从存储模块12查找与实体信息对应的设备的设备信息。
在查找到与实体信息对应的设备的设备信息的情况下,设备管理模块15生成指令,并向实体信息对应的设备发送指令。
例如,可以向灯发送开灯指令。
另外,语音处理模块14的自然语言理解模块143还可以从所识别的文本中识别出与实体信息和/或意图信息相关联的属性信息。
当属性信息与实体信息相关联时,设备管理模块15可以根据属性信息确定与实体信息对应的设备。
例如,当用户发出语音“打开客厅的灯”时,“客厅”为与“灯”关联的属性信息。设备管理模块15向客厅的灯发送开灯指令。
当属性信息与意图信息相关联时,基于属性信息生成对应于意图信息的指令。
例如,当用户发出语音“将空调温度调高2度”时,实体信息为“空调”,意图信息为“温度调高”,属性信息为与意图信息关联的“2度”。设备管理模块15向空调发送将温度调高2度的指令。
针对设备品类不同,属性信息也有所不同。例如,灯一般支持的属性信息有电源的打开/关闭、色温调节、温度控制,更高端的还支持颜色调节。
这样,针对不同类型的设备,指令的格式也会有所不同。
因此,存储模块12存储的例如通过通信模块11从物联网服务器接收的设备信息中,除了可以包括设备的ID、类型等信息之外,还可以包括针对该设备的指令的指令协议。指令协议可以包括操作码和属性值的格式,以及各字段所占用字节数等信息,由此可以限定指令的格式。。
设备管理模块15可以根据指令协议生成(或封装)指令。相应设备接收到由此生成的指令之后,能够执行相应的操作。
这样,通过向语音交互设备10下发指令协议信息,使得即使存在各种类型的设备,即使增添了新品类的设备,语音交互设备10本地的设备管理模块15也能够恰当地生成分别适用于这些设备的指令。
上面描述了语音交互设备10本地执行语音处理,并由本地的设备管理模块作为本地物联网控制端,向设备发送指令以基于用户语音实现设备控制的方案。
这样,由于在语音交互设备10本地存储了设备的设备信息,即使在断网的情况下,语音交互设备10也可以实现对设备的控制。
另一方面,语音交互设备10还可以同时向语音处理服务器上传语音。在本地语音控制处理失败的情况下,可以通过语音处理服务器和物联网服务器实现设备控制。事实上,由于本地设备处理能力的限制,以及置信度判断可能存在误差,本地存在一定的概率会处理失败。云端ASR、云端NLU、云端IOT的存在则能够确保实现用户期望的操作。
这样,通信模块还可以用于与语音处理服务器通信,向语音处理服务器上传语音交互模块接收到的语音。语音处理服务器例如可以包括云端ASR服务器(语音识别服务器)和云端NLU服务器(自然语言理解服务器),分别进行语音识别和自然语言理解,并向云端IOT服务器(物联网服务器)发送自然语言理解的结果。
同样地,自然语言理解的结果可以包括实体信息和意图信息,另外还可以包括属性信息。云端IOT服务器可以基于云端NLU服务器输出的自然语言理解结果,生成指向与实体信息对应的设备并对应于意图信息的指令。云端IOT服务器可以直接将该指令发送给相应设备,也可以经由语音交互设备10或语音交互设备10所连接的网关,转发给相应设备。
此时,就存在本地ASR加本地IOT和云端ASR加云端IOT两条路径同时处理用户语音。需要确保两条路径的幂等性,即不会由于通过两条路径发出请求而向设备发出两条重复的指令。
为解决这个问题,可以维护一个命中标记。该命中标记可以设置在通信模块11,可以在设备管理模块15,也可以在存储模块12或其它模块。
在设备管理模块15查找到与实体信息对应的设备的设备信息以前,保持命中标记为表示没有命中的第一状态,例如置为“0”。一些情况下,可以设置为,在没有查找到与实体信息对应的设备的设备信息,并且所查找到的设备不适于执行对应于意图信息的操作的情况下,或者说,在查找到与实体信息对应的设备的设备信息且所查找到的设备适于执行对应于意图信息的操作以前,将命中标记设置为表示命中的第二状态。
在设备管理模块查找到与实体信息对应的设备的设备信息的情况下,将命中标记设置为表示命中的第二状态,例如置为“1”。一些情况下,可以设置为,在查找到与实体信息对应的设备的设备信息,并且所查找到的设备适于执行对应于意图信息的操作的情况下,将命中标记设置为表示命中的第二状态。
通信模块11或语音交互设备10的控制模块(图中未示出)可以根据该命中状态了解当前本地处理的结果。
在设备管理模块15查找到与实体信息对应的设备的设备信息的情况下(命中标记为第二状态),通信模块11可以向语音处理服务器发送终止语音识别和/或自然语言理解的消息。一般而言,此时语音处理服务器尚未完成自然语言理解。这样,云端处理链路停止,由本地的设备管理模块15向设备发送指令。
另一方面,在设备管理模块15没有查找到与实体信息对应的设备的设备信息的情况下,或者所查找到的设备不适于执行对应于意图信息的操作的情况下,换言之,本地处理失败的情况下,在语音交互模块13判定语音结束后,通信模块11向语音处理服务器发送语音结束消息。
相应地,如上所述,语音处理服务器对语音识别得到的文本进行自然语言理解,并向物联网服务器发送自然语言理解的结果。物联网服务器向设备发送相应的指令。
这样,在本地语音控制处理失败的情况下,可以通过云端实现设备控制,同时能够确保本地和云端两方面的幂等性。
下面参考图4和图5描述本公开语音交互方案的两个示例。
图4是根据本公开的语音交互方案示例的流程示意图。
图4和图5中,将通信模块和控制模块统一表示为“通信及控制模块110”。应当理解,这两个模块可以是分开的,也可以是合在一起的。控制模块可以负责语音交互设备100的唤醒及对各模块的控制等。
在步骤S101,语音交互设备100上电后,在步骤S102,通信及控制模块110向IOT服务端请求IOT设备信息。
在步骤S103接收从IOT服务端500下发的IOT设备信息。
在步骤S104,将所获取的IOT设备信息存储在语音交互设备100本地的存储模块120。
在步骤S105,语音交互模块130接收用户的语音指令,比如"开灯"。另外,在语音指令之前还可以有预设的唤醒词。
在步骤S106,语音交互设备100被唤醒后,将语音交互模块130接收到的语音提供给本地ASR引擎140(即本地语音处理模块)进行语料文本识别。本地ASR引擎140负责用户语音的文本识别以及自然语言理解NLU。NLU信息输出包括语音文本的实体信息、意图信息、语料属性信息等。
本地ASR引擎140中设置有置信度阈值。如果用户语料达到该置信度阈值,则在步骤S107,对所识别出的文本进行NLU处理,输出相应的NLP信息。例如{“intent”:“open”,category:“灯”},即意图信息(intent)为“打开(open)”,实体信息(categor)为“灯”。
本地ASR模块处理完后会直接将NLU信息给语音交互设备100的本地IOT模块150(即设备管理模块)。本地IOT模块150负责IOT设备命中、IOT设备指令封装等。
在步骤S108,本地IOT模块根据NLU信息在存储模块120中查找对应于实体信息“灯”的IOT设备信息。如果命中(即查找到IOT设备信息),还可以在步骤S109判断该设备是否支持本地控制,以及是否支持该意图信息所指示的控制。
如果判定支持,则在步骤S110,本地IOT模块150封装IOT设备控制指令,并将所封装的指令发送给对应的IOT设备600。
在步骤S111,IOT设备上的控制模组根据所接收到的指令进行IOT设备控制,例如开灯操作。
在原有云端链路上,闭麦时间比较长,平均时长在3-4秒左右。在用户说完话后,语音交互设备100需要判断用户是否说完话,会额外等待1秒左右。在这种场景下,对原有云端链路进行优化并不能够到达理想的用户体验。
通过将云端链路移植到端上,链路上包括本地ASR、本地NLU、IOT控制模块本地化,避免上云,本地化支持,进而达到用户秒级体验,同时能够达到离线控制。
图5是根据本公开的语音交互方案另一示例的流程示意图。
在图5所示示例中,除了本地ASR引擎140、本地IOT模块150之外,还有云端ASR300、云端NLU 400、IOT服务器500。云端ASR 300、云端NLU 400可以合称为“语音处理服务器”。网关200可以是服务端网关。
在本地ASR引擎140进行语音识别的同时,通信及控制模块110还将语音上传已在云端进行处理。
此时,通过维护一命中标记flag,可以确保两条路径的幂等性,避免基于同一语音对设备重复发出同一指令。
在步骤S100,用户发出语音“开灯”,语音交互模块130接收用户的语音。
在步骤S200,通信及控制模块110会将语音音频上传到语音处理服务器。在S210,网关200将音频上传到云端ASR 300,执行语音识别。
另一方面,在步骤S310,语音被实时提供给本地ASR引擎140(语音处理模块)。这种情况下,可以提前400ms闭麦。
本地ASR引擎140进行语音识别,在步骤S320判断识别出的文本语料是否达到置信度阈值。
在达到置信度阈值的情况下,在步骤S410,将本地ASR引擎140的NLU结果提供给本地IOT模块150(设备管理模块)。
在步骤S420,本地IOT模块150在存储模块120中查找对应于NLU结果的实体。
如果没有命中,则在步骤S431不修改命中标记flag,继续走云端链路。
在命中标记没有修改,即表示本地没有命中的情况下,在语音交互模块130确定用户语音结束后,在步骤S500,通信及控制模块110向服务端发送语音结束消息(vadEnd)。
响应于语音结束消息,在步骤520,将云端ASR 300于步骤S510输出的ASR结果发送给云端NLU 400。
在步骤S530,将云端NLU 400的NLU结果发送给IOT服务器500。
IOT服务器500则根据云端NLU 400的NLU结果生成针对相应设备的相应指令,并例如可以直接,也可以经由网关200和/或语音交互设备的本地IOT模块150,发送给IOT设备600。
IOT设备600执行该指令,以实现用户语音期望实现的操作。
这样,即使本地语音控制处理失败,也可以经由云端链路实现用户期望的操作。
另一方面,如果在步骤S420命中,则本地IOT模块150在步骤S432本地执行设备控制,即封装指令并发送给对应的IOT设备600。这种情况下,修改命中标记flag,表示本地命中,已经发送控制指令。
另外,IOT设备可以包括支持本地端端控制(例如通过蓝牙)的设备和经由第三方云端接入的设备。第三方云端接入的设备只能通过云云请求来控制。因此,对于第三方云端接入的设备,可以在步骤S440向第三方云端发送控制请求。在断网的情况下,则不能对第三方云端接入的设备进行控制。
在步骤S600,响应于命中标记flag已经被修改为表示本地命中,通信及控制模块110向服务端,例如向网关200发送消息,提前发结束帧,终止ASR。
此时,虽然云端ASR 300可能已经识别了部分文本(S610),但是在步骤S620,阻断云端NLU请求,不向云端NLU 400发送ASR结果文本。云端链路结束。
由此,避免了在本地已经发出控制指令的情况下,又由云端链路再次发出相同控制指令,确保了幂等性。
图6示出了根据本发明一实施例可用于实现上述语音交互方法和设备控制方法的计算设备的结构示意图。
参见图6,计算设备1000包括存储器1010和处理器1020。
处理器1020可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器1020可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器1020可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器1010可以包括各种类型的存储单元,例如***内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器1020或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。***内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。***内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器1010可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器1010可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器1010上存储有可执行代码,当可执行代码被处理器1020处理时,可以使处理器1020执行上文述及的语音交互方法和设备控制方法。
上文中已经参考附图详细描述了根据本发明的语音交互设备、语音交互***和语音交互方法。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指s令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、语音处理服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的***和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (24)
1.一种语音交互设备,其特征在于,包括:
存储模块,用于存储一个或多个设备的设备信息;
语音交互模块,用于与用户进行语音交互;
语音处理模块,用于从所述语音交互模块接收到的语音中识别实体信息和意图信息;
设备管理模块,用于根据所述存储模块存储的设备信息,向与所述实体信息对应的设备发送对应于所述意图信息的指令;以及
通信模块,用于与语音处理服务器通信,向所述语音处理服务器上传所述语音交互模块接收到的语音,以便所述语音处理服务器进行语音识别和自然语言理解,并向管理所述一个或多个设备的物联网服务器发送所述自然语言理解的结果,
在所述设备管理模块从所述存储模块查找到与所述实体信息对应的设备的设备信息的情况下,所述通信模块向所述语音处理服务器发送终止语音识别和/或自然语言理解的消息。
2.根据权利要求1所述的语音交互设备,其特征在于,所述语音处理模块包括:
语音识别模块,用于将所述语音识别为文本;
置信度判断模块,用于判断所识别的文本的置信度是否达到预定置信度阈值;以及
自然语言理解模块,用于在判定所述置信度达到所述置信度阈值的情况下,对所识别的文本进行分析以得到所述实体信息和意图信息。
3.根据权利要求1所述的语音交互设备,其特征在于,
所述语音处理模块还从所述语音中识别与所述实体信息和/或所述意图信息相关联的属性信息,
所述设备管理模块根据所述属性信息确定与所述实体信息对应的设备,并且/或者基于所述属性信息生成对应于所述意图信息的指令。
4.根据权利要求1所述的语音交互设备,其特征在于,
设备的所述设备信息包括针对所述设备的指令的指令协议,
所述设备管理模块根据所述指令协议生成所述指令。
5.根据权利要求1所述的语音交互设备,其特征在于,
所述通信模块,还用于与所述物联网服务器通信,从所述物联网服务器接收所述一个或多个设备的设备信息。
6.根据权利要求5所述的语音交互设备,其特征在于,
所述设备管理模块从所述存储模块查找与所述实体信息对应的设备的设备信息,
在查找到与所述实体信息对应的设备的设备信息的情况下,所述设备管理模块生成所述指令,并向所述实体信息对应的设备发送所述指令。
7.根据权利要求1所述的语音交互设备,其特征在于,
在所述设备管理模块没有查找到与所述实体信息对应的设备的设备信息的情况下,或者所查找到的设备不适于执行对应于所述意图信息的操作的情况下,在所述语音交互模块判定所述语音结束后,所述通信模块向所述语音处理服务器发送语音结束消息,
所述语音处理服务器对语音识别得到的文本进行自然语言理解,并向物联网服务器发送所述自然语言理解的结果。
8.根据权利要求7所述的语音交互设备,其特征在于,
维护命中标记,
在所述设备管理模块没有查找到与所述实体信息对应的设备的设备信息以前,保持所述命中标记为表示没有命中的第一状态,
在所述设备管理模块查找到与所述实体信息对应的设备的设备信息的情况下,将所述命中标记设置为表示命中的第二状态,
所述通信模块根据所述命中标记确定是否向所述服务器发送所述终止语音识别和/或自然语言理解的消息和/或所述语音结束消息。
9.根据权利要求5所述的语音交互设备,其特征在于,
所述通信模块分批次接收所述物联网服务器下发的设备信息,每个批次的数据量不超过预定数据量阈值。
10.根据权利要求1所述的语音交互设备,其特征在于,
所述一个或多个设备是与所述语音交互设备关联的设备;并且/或者
所述语音交互设备是智能音箱或者语音处理模组。
11.一种语音交互***,其特征在于,包括:
一个或多个设备;
语音交互设备,其上存储有所述一个或多个设备的设备信息,用于与用户进行语音交互,从用户的语音中识别实体信息和意图信息,并根据所存储的设备信息向与所述实体信息对应的设备发送对应于所述意图信息的指令;以及
语音处理服务器,从所述语音交互设备接收用户的语音,对所接收的语音进行语音识别和自然语言理解,并向管理所述一个或多个设备的物联网服务器发送所述自然语言理解的结果,
其中,在所述语音交互设备查找到与所述实体信息对应的设备的设备信息的情况下,所述语音交互设备向所述语音处理服务器发送终止语音识别和/或自然语言理解的消息。
12.根据权利要求11所述的语音交互***,其特征在于,还包括:
所述物联网服务器,用于向所述语音交互设备下发所述一个或多个设备的设备信息。
13.根据权利要求12所述的语音交互设备,其特征在于,
所述物联网服务器分批次向所述语音交互设备下发所述设备信息,每个批次的数据量不超过预定数据量阈值。
14.根据权利要求11所述的语音交互***,其特征在于,
在所述语音交互设备没有查找到与所述实体信息对应的设备的设备信息的情况下,或者所查找到的设备不适于执行对应于所述意图信息的操作的情况下,在判定所述语音结束后,所述语音交互设备向所述语音处理服务器发送语音结束消息,
所述语音处理服务器响应于所述语音结束消息,向物联网服务器发送所述自然语言理解的结果。
15.根据权利要求11所述的语音交互***,其特征在于,所述语音交互设备是根据权利要求1至10中任何一项所述的语音交互设备。
16.一种设备控制方法,其特征在于,包括:
本地存储一个或多个设备的设备信息;
将所接收到的语音识别为文本;
对所识别的文本进行分析以得到其中涉及的实体信息和意图信息;根据本地存储的设备信息,向与所述实体信息对应的设备发送对应于所述意图信息的指令;
向语音处理服务器上传所述语音交互模块接收到的语音,以便所述语音处理服务器进行语音识别和自然语言理解,并向管理所述一个或多个设备的物联网服务器发送所述自然语言理解的结果;
在本地查找到与所述实体信息对应的设备的设备信息的情况下,向所述语音处理服务器发送终止语音识别和/或自然语言理解的消息。
17.根据权利要求16所述的设备控制方法,其特征在于,
所述设备控制方法由智能音箱设备执行,或者由语音处理模组执行。
18.根据权利要求16所述的设备控制方法,其特征在于,
所述设备包括物联网设备。
19.根据权利要求16所述的设备控制方法,其特征在于,所述实体信息对应的设备包括:
智能家居设备;和/或
与家居设备关联的处理模组。
20.根据权利要求16所述的设备控制方法,其特征在于,还包括:
判断所识别的文本的置信度是否达到预定置信度阈值,
其中,在判定所述置信度达到所述置信度阈值的情况下,对所识别的文本进行分析。
21.根据权利要求16所述的设备控制方法,其特征在于,还包括:
从所述物联网服务器接收所述一个或多个设备的设备信息。
22.根据权利要求16所述的设备控制方法,其特征在于,还包括:
维护命中标记,
在本地没有查找到与所述实体信息对应的设备的设备信息以前,保持所述命中标记为表示没有命中的第一状态,
在本地查找到与所述实体信息对应的设备的设备信息的情况下,将所述命中标记设置为表示命中的第二状态,
在所述命中标记处于第二状态的情况下,向所述语音处理服务器发送终止语音识别和/或自然语言理解的消息,
在所述命中标记处于第一状态的情况下,在判定用户的语音结束后,向所述语音处理服务器发送语音结束消息。
23.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求16-22中任何一项所述的方法。
24.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求16-22中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910199373.9A CN111696534B (zh) | 2019-03-15 | 2019-03-15 | 语音交互设备和***、设备控制方法、计算设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910199373.9A CN111696534B (zh) | 2019-03-15 | 2019-03-15 | 语音交互设备和***、设备控制方法、计算设备以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111696534A CN111696534A (zh) | 2020-09-22 |
CN111696534B true CN111696534B (zh) | 2023-05-23 |
Family
ID=72475497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910199373.9A Active CN111696534B (zh) | 2019-03-15 | 2019-03-15 | 语音交互设备和***、设备控制方法、计算设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111696534B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112287108B (zh) * | 2020-10-29 | 2022-08-16 | 四川长虹电器股份有限公司 | 一种物联领域的意图识别优化方法 |
CN112637264B (zh) * | 2020-11-23 | 2023-04-21 | 阿波罗智联(北京)科技有限公司 | 一种信息交互方法、装置、电子设备及存储介质 |
EP4318464A4 (en) * | 2021-04-17 | 2024-05-08 | Huawei Tech Co Ltd | VOICE INTERACTION METHOD AND DEVICE |
CN113593573B (zh) * | 2021-07-30 | 2024-01-12 | 思必驰科技股份有限公司 | 机器交互方法和装置 |
CN116192554A (zh) * | 2023-04-25 | 2023-05-30 | 山东工程职业技术大学 | 一种基于语音的物联网设备控制方法及*** |
CN116541118B (zh) * | 2023-06-29 | 2023-10-13 | 新华三技术有限公司 | 网络设备管理方法、装置及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683937A (zh) * | 2018-03-09 | 2018-10-19 | 百度在线网络技术(北京)有限公司 | 智能电视的语音交互反馈方法、***及计算机可读介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101505550B (zh) * | 2008-02-04 | 2012-08-22 | 华为技术有限公司 | 设备管理的方法和终端、装置、*** |
US9443527B1 (en) * | 2013-09-27 | 2016-09-13 | Amazon Technologies, Inc. | Speech recognition capability generation and control |
CN106469040B (zh) * | 2015-08-19 | 2019-06-21 | 华为终端有限公司 | 通信方法、服务器及设备 |
CN105096952A (zh) * | 2015-09-01 | 2015-11-25 | 联想(北京)有限公司 | 一种语音识别的辅助处理方法和服务器 |
JP2017192091A (ja) * | 2016-04-15 | 2017-10-19 | 泰安 盧 | 音声制御機能付きiotシステム及びその情報処理方法 |
CN105913847B (zh) * | 2016-06-01 | 2020-10-16 | 北京京东尚科信息技术有限公司 | 语音控制***、用户端设备、服务器和中央控制单元 |
US10319375B2 (en) * | 2016-12-28 | 2019-06-11 | Amazon Technologies, Inc. | Audio message extraction |
US10971157B2 (en) * | 2017-01-11 | 2021-04-06 | Nuance Communications, Inc. | Methods and apparatus for hybrid speech recognition processing |
EP3382696B1 (en) * | 2017-03-28 | 2022-09-14 | Samsung Electronics Co., Ltd. | Method for operating speech recognition service and electronic device supporting the same |
KR102060775B1 (ko) * | 2017-06-27 | 2019-12-30 | 삼성전자주식회사 | 음성 입력에 대응하는 동작을 수행하는 전자 장치 |
-
2019
- 2019-03-15 CN CN201910199373.9A patent/CN111696534B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683937A (zh) * | 2018-03-09 | 2018-10-19 | 百度在线网络技术(北京)有限公司 | 智能电视的语音交互反馈方法、***及计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111696534A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111696534B (zh) | 语音交互设备和***、设备控制方法、计算设备以及介质 | |
JP6683234B2 (ja) | 音声データ処理方法、装置、設備及びプログラム | |
US10657964B2 (en) | Method for controlling smart device, computer device and storage medium | |
WO2020042993A1 (zh) | 语音控制方法、装置及*** | |
US10185534B2 (en) | Control method, controller, and recording medium | |
US9953648B2 (en) | Electronic device and method for controlling the same | |
US11031011B2 (en) | Electronic device and method for determining electronic device to perform speech recognition | |
JP2020190752A (ja) | 記録メディアのホットワードトリガ抑制 | |
US11031008B2 (en) | Terminal device and method for controlling thereof | |
US10964327B2 (en) | Hub device, multi-device system including the hub device and plurality of devices, and method of operating the same | |
WO2018133307A1 (zh) | 一种实现语音控制的方法和终端 | |
US11508375B2 (en) | Electronic apparatus including control command identification tool generated by using a control command identified by voice recognition identifying a control command corresponding to a user voice and control method thereof | |
WO2020233363A1 (zh) | 语音识别的方法、装置、电子设备和存储介质 | |
WO2020015283A1 (zh) | 设备的控制方法及装置、存储介质和电子装置 | |
CN111309857A (zh) | 一种处理方法及处理装置 | |
CN111833857B (zh) | 语音处理方法、装置和分布式*** | |
CN114724564A (zh) | 语音处理方法、装置和*** | |
CN112187829B (zh) | 联机交易报文处理方法、装置及*** | |
US20210210088A1 (en) | Speech interaction method and apparatus, device and storage medium | |
CN111240634A (zh) | 音箱工作模式调整方法和装置 | |
KR20210004803A (ko) | 전자 장치 및 이의 제어 방법 | |
WO2017066988A1 (zh) | 手机物联网控制方法及*** | |
JP7375089B2 (ja) | 音声応答速度確定方法、装置、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム | |
WO2022158824A1 (en) | Method and device for controlling electronic apparatus | |
CN112152890A (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 |