首页 > 乐器声学 专利正文
语音控制方法、装置、服务器、终端设备及存储介质与流程

时间:2022-02-03 阅读: 作者:专利查询

语音控制方法、装置、服务器、终端设备及存储介质与流程

1.本技术涉及通信技术领域,尤其涉及一种语音控制方法、装置、终端设备及存储介质。


背景技术:

2.目前,部署有语音助手的电子设备能够通过智能对话或即时问答的方式实现用户交互。实际应用时,存在跨设备执行的场景,即唤醒设备接收语音指令,执行设备执行语音指令指示的相关操作的场景。相关技术中,语音指令跨设备执行的延迟较高。


技术实现要素:

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.本技术实施例还提供了一种终端设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
28.其中,所述处理器用于运行所述计算机程序时,执行上述语音控制方法的步骤。
29.本技术实施例还提供了一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述语音控制方法的步骤。
30.在本技术实施例中,第一服务器接收第一终端设备发送的第一请求;第一请求携带有第一语音指令;在第一语音指令对应的执行设备为第二终端设备的情况下,第一服务器将第一语音指令和表征第二终端设备相关状态的第一信息输入对话系统,对话系统基于第一信息解析第一语音指令得到用于指示第二终端设备执行第一操作的第一控制指令,第一服务器得到对话系统返回的第一控制指令,并发出第一控制指令。这样,在跨设备执行时,第一服务器只需要与唤醒设备,即第一终端设备通信,就能确定出与语音指令对应的控制指令,指示对应的执行设备,即第二终端设备执行对应的操作,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。
附图说明
31.图1为相关技术中语音控制方法的示意图;
32.图2为本技术实施例提供的语音控制系统的示意图;
33.图3为本技术实施例提供的语音控制方法的实现流程示意图;
34.图4为本技术另一实施例提供的语音控制方法的实现流程示意图;
35.图5为本技术实施例提供的语音控制方法的交互图;
36.图6为本技术另一实施例提供的语音控制方法的交互图;
37.图7为本技术应用实施例提供的语音控制方法的实现流程示意图;
38.图8为本技术实施例提供的语音控制结构的结构示意图;
39.图9为本技术另一实施例提供的语音控制结构的结构示意图;
40.图10为本技术实施例提供的终端设备的硬件组成结构示意图。
具体实施方式
41.在日常生活中,用户可以通过部署有语音助手的手机对智能电视进行语音控制。如图1示出的实现方案,手机接收用户的语音指令,向云端服务器发送该语音指令;云端服务器的对话系统根据语音指令得到分类结果,执行对话管理流程,并将返回的对话管理结果发送给手机;基于对话管理结果,手机将语音指令发送给智能电视,智能电视向服务器发送该语音指令和智能电视的相关状态信息,如播放状态、播放模式等,由服务器的对话系统根据语音指令和相关状态信息,返回对应的协议。这样,智能电视能够根据返回的协议能够获取对应的资源,并执行对应的播放动作。但是,由于手机和智能电视都需要与服务器的对话系统交互,整个语音控制过程的信息传输耗时较长,导致语音指令跨设备执行的延迟较高。此外,在语音控制过程中,对话系统需要接收到来自手机和智能电视的重复信息,浪费网络资源与计算成本。
42.基于此,本技术实施例提供了一种语音控制方法,第一服务器接收第一终端设备发送的第一请求;第一请求携带有第一语音指令;在第一语音指令对应的执行设备为第二终端设备的情况下,第一服务器将第一语音指令和表征第二终端设备相关状态的第一信息输入对话系统,对话系统基于第一信息解析第一语音指令得到用于指示第二终端设备执行第一操作的第一控制指令,第一服务器得到对话系统返回的第一控制指令,并发出第一控制指令。这样,在跨设备执行时,第一服务器只需要与唤醒设备,即第一终端设备通信,就能确定出与语音指令对应的控制指令,指示对应的执行设备,即第二终端设备执行对应的操作,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。
43.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
44.图2为本技术实施例提供的语音控制系统的示意图。其中,语音控制系统中部署有由至少两个终端设备组成的终端设备间互联互通的群组,终端设备之间基于短距离无线通信技术进行通信。短距离无线通信技术包括蓝牙通信技术或无线保真(wifi,wireless fidelity)通信技术。当群组中包括多个终端设备时,终端设备之间可以基于短距离无线通信技术进行一对一通信、一对多通信或多对一通信。实际应用时,互联互通群组可以基于第三方通信框架建立,例如基于第三方协议建立的oaf通信框架(oplus accessory framework)。至少两个终端设备组成的群组与服务器21进行无线通信,在跨设备执行场景下,通常称接收到语音指令的终端设备22为唤醒设备,称执行语音指令对应的控制指令指示的操作的终端设备23为执行设备。例如,用户向手机输入第一语音指令“在电视上播放电视剧a”,手机为唤醒设备,智能电视为执行设备。
45.需要说明的是,图2所示的语音控制系统中的终端设备均安装有第一应用,例如,第一应用可以为语音助手。第一应用用于支持用户输入语音指令,以及支持在应用层实现终端设备与云端(即,服务器21),以及终端设备之间的交互。基于第一应用,用户可以通过输入语音指令实现对群组内任一终端设备的操作。
46.实际应用时,示例性地,图2中的终端设备可以包括以下至少一种:
47.手机、智能音箱、笔记本电脑、智能手表、平板电脑和电视、冰箱、空调等各类物联
网终端。
48.在物联网场景下,以家庭为单位,一个群组中的终端设备至少包括家庭成员使用的各类终端设备和智能家电。例如,家庭成员和客人所使用的终端设备,以及家中的智能家电之间均基于短距离无线通信技术建立群组,由此,可以使得上述所有终端设备之间均基于短距离无线通信技术进行通信,可通过对群组内的任一终端设备发出语音指令,以控制另一终端设备执行语音指令对应的操作,其中,语音指令对应的唤醒设备和执行设备不必是依赖于同一账号的终端设备。在实际应用时,家庭成员或客人可以使用不同的唤醒设备对智能电视进行语音控制。
49.下面将通过实施例并结合附图具体地对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
50.图3为本技术实施例提供的语音控制方法的实现流程示意图。本流程的执行主体为第一服务器,第一服务器为图2中的服务器21。
51.如图3示出的,语音控制方法包括:
52.步骤301:接收第一终端设备发送的第一请求;所述第一请求携带有第一语音指令。
53.在用户想要通过第一终端设备对群组内的第二终端设备进行语音控制时,用户通过第一终端设备中的第一应用向第一终端设备输入第一语音指令。第一服务器接收到第一终端设备发送的携带有第一语音指令的第一请求。其中,第二终端设备不同于第一终端设备。第一语音指令至少包括设备槽位和技能意图,设备槽位表征执行对应操作的执行设备,技能意图表征用户想要在对应的终端设备支持的技能内实现的目标,用于指示对应的终端设备执行第一操作。技能泛指终端设备具备的能力或可实现的功能。在自然语言理解中,主要包括意图识别和槽位填充两部分,槽位指对话中的重要信息,对设备槽位的识别能够明确语音指令对应的执行设备。
54.例如,第一语音指令为“在电视上打开电视剧a”,第一服务器通过自然语言处理(nlp,natural language processing)提取设备槽位为电视,技能意图为播放电视剧a。
55.步骤302:在所述第一语音指令对应的执行设备为第二终端设备的情况下,将所述第一语音指令和所述第二终端设备的第一信息输入对话系统;所述第一信息表征终端设备的相关状态。
56.第一服务器接收到第一语音指令,确定第一语音指令对应的执行设备,在第一语音指令对应的执行设备为第二终端设备的情况下,也就是说,第一语音指令对应的执行设备不是接收用户输入第一语音指令的第一终端设备,此时为跨设备执行语音指令,第一服务器将第一语音指令和第二终端设备,即执行设备的相关状态输入对话系统,由对话系统对第一语音指令进行语义理解,从而解析得到技能意图。其中,第一终端设备和第二终端设备均为互联互通的群组中的终端设备。对话系统的硬件设备为服务器,对话系统可以为实现语音指令理解的软件系统。
57.这里,可以在第一服务器新建设备协调服务模块,由设备协调服务模块根据设备决策以及语义结果返回的信息进行建模,判断是否为跨设备执行操作。在实际应用中,设备协调服务模块根据第一终端设备,即唤醒设备采集的互联设备相关信息(可以认为是第一
信息中的一种)以及nlp识别出的槽位信息综合进行建模。例如,手机发现与唤醒设备互联互通的终端设备有智能电视、智能手表,用户的语音指令为“在电视上打开
×××
(电视剧)”,设备协调服务模块基于手机的互联设备相关信息,获知与手机连接状态,得知此刻与手机连接的有智能电视a、智能手表b等终端设备;而通过nlp,提取语音指令这句话的设备槽位为“电视”,由于“电视”并不是接收语音指令的“手机”,且此时有智能电视a与手机连接,判断此时为跨设备执行操作。这样,能够提升基于语音指令识别执行对象的精确度,从而提高基于语音指令解析得到的控制指令的精确度。
58.这里,第一信息可以在对话系统进行语义理解时和对话管理流程时使用,进而提高基于语音指令解析得到的控制指令的精确度。在语义理解时,对话系统基于终端设备的相关状态对理解得到的多个结果进行排序。第二终端设备的第一信息,包括但不限于:终端设备上安装的应用、终端设备的当前播放状态、终端设备支持获取资源的渠道和播放模式。
59.需要说明的是,在第一语音指令对应的执行设备为第一终端设备的情况下,也就是说,第一语音指令对应的执行设备是接收用户输入第一语音指令的第一终端设备,此时并不是跨设备执行语音指令,但仍可以采用本技术实施例的语音控制方法。
60.步骤303:得到所述对话系统返回的第一控制指令;所述第一控制指令由所述对话系统基于所述第一信息解析所述第一语音指令得到,用于指示所述第二终端设备执行第一操作。
61.这里,第一终端设备得到对话系统基于第一信息解析第一语音指令得到的第一控制指令。其中,第一控制指令用于指示第二终端设备执行第一操作,也就是第一语音指令中的技能意图,表征用户想要在对应的终端设备支持的技能内实现的目标。
62.步骤304:发出第一控制指令。
63.这里,第一服务器发送第一控制指令对象不限,可以是向第一服务器发送第一请求的第一终端设备,也可以是其它设备,如物联网终端的管理设备,或执行第一操作的执行设备,即第二终端设备。
64.在本实施例中,第一服务器接收第一终端设备发送的第一请求;第一请求携带有第一语音指令;在第一语音指令对应的执行设备为第二终端设备的情况下,第一服务器将第一语音指令和表征第二终端设备相关状态的第一信息输入对话系统,对话系统基于第一信息解析第一语音指令得到用于指示第二终端设备执行第一操作的第一控制指令,第一服务器得到对话系统返回的第一控制指令,并发出第一控制指令。这样,在跨设备执行时,第一服务器只需要与唤醒设备,即第一终端设备通信,就能确定出与语音指令对应的控制指令,指示对应的执行设备,即第二终端设备执行对应的操作,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。
65.考虑到群组中的终端设备是可以动态变化的,每个终端设备的第一信息也是动态变化的,在一实施例中,在所述将所述第一语音指令和所述第二终端设备的第一信息输入对话系统之前,所述方法还包括:
66.接收所述第一终端设备上报的至少一个终端设备的第一信息;
67.在所述至少一个终端设备的第一信息中确定出所述第二终端设备的第一信息;其中,
68.所述至少一个终端设备中的每个终端设备与所述第一终端设备互联互通。
69.第一服务器接收到第一终端设备上报的与第一终端设备互联互通的至少一个终端设备的第一信息,根据第一语音指令确定出的第二终端设备,从接收到的终端设备的第一信息中确定出第二终端设备的第一信息。其中,第一终端设备上报的第一信息,可以是与第一终端设备互联互通的终端设备中的部分或全部终端设备的第一信息。
70.这里,第一服务器接收到第一信息的时机,不限于和第一请求一并接收,也可以是在确定出为跨设备执行时,向第一终端发送请求后接收到第一终端对应发送的。第一终端设备上报第一信息,可以是主动上报的(例如,和第一请求一并发送),也可以是响应于第一服务器发送的请求而上报的。
71.这样,第一服务器能够准确地确定出执行设备和对应的技能意图,避免对执行设备发送错误的控制指令,从而提高语音控制的精准度。
72.此外,至少一个终端设备的第一信息也不限于是由第一终端设备上报的,例如,还可以是群组内的终端设备每隔设定周期上报的。
73.前文提及,第一服务器发送第一控制指令对象不限,因此,在一实施例中,所述发出第一控制指令,包括:
74.向所述第一终端设备发送第一消息;所述第一消息携带有所述第一控制指令,以使所述第一终端设备响应于所述第一消息,向所述第二终端设备发送所述第一控制指令。
75.由于第一服务器发送的控制指令的接收对象并不是实际执行第一控制指令的第二终端设备,而是第一终端设备,因而在发送前第一服务器需要改写第一控制指令,以指示第一终端设备在接收到对应的消息时,向对应的执行设备进行转发。这里,第一服务器改写第一控制指令,可以采用以下方式:基于第一控制指令,生成携带有第一控制指令的第一消息,并向第一终端设备发送生成的第一消息,这样,第一终端设备在接收到第一消息时,响应于第一消息中的设定字段,向第二终端设备发送至少携带有第一控制指令的消息,也就是说,执行第一控制指令的终端设备,即第二终端设备能够基于第一服务器对第一控制指令的改写而收到第一控制指令。那么,在语音控制过程中,第二终端设备无须与第一服务器交互,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。同时,第一终端设备和第二终端设备处于同一群组中,第一终端设备在接收到第一消息后可以通过oaf通信框架,基于蓝牙通信技术等短距离无线通信技术向第二终端设备发送第一控制指令,也就是说,不再要求每个终端设备都具备上云的能力,降低了对终端设备的软硬件要求。
76.进一步地,由于第一控制指令是根据第一语音指令的技能意图,由对应的对话系统的技能侧产生的,其中,技能侧表示执行设备可执行的技能意图的类型,例如智能电视的播放功能、智能烹饪电器的调节功能。在一些实施例中,还可以在第一服务器中新建模式层,由模式层负责感知跨设备执行场景。在跨设备执行的情况下,由模式层对对话系统返回的第一控制指令进行改写,替换为多设备互联的协议。在每次出现新的跨设备执行的场景时,对话系统中的技能侧不需要配合修改,也就是说,对话系统无须感知执行设备的状态信息。这样,用户维护对话系统的难度降低,且在语音控制过程中支持使用第三方开发的对话系统,从而提高基于语音指令解析得到的控制指令的精确度。
77.前文提及,第一服务器发送第一控制指令对象不限,因此,在一实施例中,所述发出第一控制指令,包括:
78.向所述第二终端设备发送所述第一控制指令。
79.这里,由第一服务器根据用户的账户,查询用户的设备信息,并直接向第二终端设备发送第一控制指令,这样,能够进一步降低语音控制过程的信息传输耗时,减少语音指令跨设备执行的延迟,提高跨设备执行的执行效率。
80.图4为本技术实施例提供的语音控制方法的实现流程示意图。本流程的执行主体为第一终端设备,第一终端设备为图2中的终端设备22。
81.如图4示出的,语音控制方法包括:
82.步骤401:接收第一语音指令。
83.在用户想要通过第一终端设备对群组内的第二终端设备进行语音控制时,用户通过第一终端设备中的第一应用向第一终端设备输入第一语音指令。其中,第一语音指令至少包括设备槽位和技能意图,设备槽位表征执行对应操作的执行设备,技能意图表征用户想要在对应的终端设备支持的技能内实现的目标,用于指示对应的终端设备执行第一操作。
84.需要说明的是,在接收时第一语音指令的设备槽位可以是第一终端设备或第二终端设备,但通常是指不同于第一终端设备的第二终端设备,在这种情况下为跨设备执行操作的场景,能够实现对应的技术效果。
85.步骤402:向第一服务器发送第一请求;所述第一请求携带有所述第一语音指令。
86.第一终端设备在接收到第一语音指令之后,生成并向第一服务器发送第一请求,第一请求中携带有第一语音指令。
87.步骤403:接收所述第一服务器基于所述第一请求对应发送的第一消息,并响应于所述第一消息,向第二终端设备发送所述第一消息携带的第一控制指令;其中,
88.所述第一控制指令基于对所述第一语音指令解析得到,用于指示所述第二终端设备执行第一操作。
89.第一终端设备接收第一服务器基于第一请求对应发送的第一消息,响应于接收到的第一消息,第一终端设备向第二终端设备发送第一消息携带的第一控制指令。其中,第一控制指令基于第一服务器对第一语音指令解析得到,用于指示解析得到的第二终端设备,即执行设备,执行对应的第一操作,基于第一语音指令的设备槽位解析得到执行设备,基于第一语音指令的技能意图解析得到第一操作。这样,在跨设备执行时,第一服务器只需要与唤醒设备,即第一终端设备通信,就能确定出与语音指令对应的控制指令,指示唤醒设备向对应的执行设备,即第二终端设备发送命令指令,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。
90.前文提及,第一服务器的对话系统可以在进行语义理解时和对话管理流程时使用至少一个终端设备的第一信息,至少一个终端设备的第一信息也不限定上报的终端设备。例如,在实际应用中,从集群中具备上云的能力的终端设备中确定一个管理设备,集群中的终端设备可以每隔设定周期向该管理设备上报第一信息,由管理设备向第一服务器发送至少一个终端设备的第一信息。
91.考虑到第一终端设备与第一服务器通信,至少具备上云的能力,在一实施例中,所述方法还包括:
92.接收至少一个终端设备发送的第一信息;
93.向所述第一服务器发送所述至少一个终端设备中的每个终端设备的第一信息。
94.第一终端设备接收到所在群组中至少一个终端设备发送的第一信息,并向第一服务器发送接收到的第一信息。
95.这样,第一终端设备,即唤醒设备能够采集到的互联互通设备的相关状态信息,也就是说,唤醒设备能够获知可以控制的执行设备,即第二终端设备,和每个第二终端设备对应的状态信息,从而提高基于语音指令解析得到的控制指令的精确度。
96.在物联网场景下,考虑到群组中的终端设备是可以动态变化的,每个终端设备的第一信息也是动态变化的,在一实施例中,所述接收至少一个终端设备发送的第一信息,包括:
97.基于短距离无线通信技术,广播第二消息;所述第二消息用于请求对应的终端设备返回第一信息;
98.接收所述至少一个终端设备基于所述第二消息发送的第一信息。
99.基于短距离无线通信技术,第一终端设备向群组中的至少一个终端设备广播第二消息,以请求对应的终端设备返回对应的第一信息,
100.这里,第一终端设备广播第二消息的时机,不限于是接收到第一语音指令之前或之后。
101.第一终端设备在接收到第一语音指令之后,广播第二消息以采集第一信息,能够准确地确定出群组中的终端设备的第一信息,这样,第一服务器基于实时采集到的终端设备的相关状态,能够准确地确定出执行设备和对应的技能意图,避免对执行设备发送错误的控制指令,从而提高语音控制的精准度。
102.作为本技术的实施例,下面结合图5和图6示出的语音控制方法的交互图,详细说明图2的语音控制系统实现语音控制的过程。其中,图5对应的实施例与图6对应的实施例的区别在于,图5对应的实施例中,由第一终端设备转发携带有第一控制指令的第一信息;图6对应的实施例中由云端服务器直接向第二终端设备发送第一控制指令。
103.图5为本技术实施例提供的语音控制方法的交互图,如图5示出的,语音控制方法包括:
104.步骤501:第一终端设备接收第一语音指令。
105.其中,步骤501与步骤401相同,实现过程请参照步骤401中的相关描述。
106.步骤502:第一终端设备接收至少一个终端设备发送的第一信息。
107.第一终端设备接收群组中至少一个终端设备发送的第一信息,其中,包括第二终端设备发送的第一信息。群组中的终端设备互联互通。
108.步骤503:第一终端设备向云端服务器发送第一请求。
109.其中,第一请求中携带有第一语音指令;步骤503与步骤301、步骤402相同,实现过程请参照步骤301、步骤402中的相关描述。
110.步骤504:第一终端设备向云端服务器发送至少一个终端设备的第一信息。
111.这里,第一终端设备向云端服务器发送至少一个终端设备的第一信息,至少包括在步骤502中接收到的至少一个终端设备发送的第一信息。
112.步骤505:在第一语音指令对应的执行设备为第二终端设备的情况下,云端服务器将第一语音指令和第二终端设备的第一信息输入对话系统。
113.其中,步骤505与步骤302相同,实现过程请参照步骤302中的相关描述。
114.步骤506:云端服务器得到对话系统返回的第一控制指令。
115.其中,第一控制指令由对话系统基于第一信息解析第一语音指令得到,用于指示对应的第二终端设备执行第一操作。步骤506与步骤303相同,实现过程请参照步骤303中的相关描述。
116.步骤507:基于第一控制指令,云端服务器生成并向第一终端设备发送第一消息。
117.其中,第一消息携带有第一控制指令,以使第一终端设备响应于所述第一消息,向第二终端设备发送第一控制指令。
118.步骤508:响应于第一消息,第一终端设备向第二终端设备发送第一控制指令。
119.步骤509:在接收到第一控制指令的情况下,第二终端设备执行第一操作。
120.在本实施例中,在语音控制过程中,第二终端设备无须与第一服务器交互,从而降低了语音控制过程的信息传输耗时,减少了语音指令跨设备执行的延迟,提高了跨设备执行的执行效率。同时,第一终端设备和第二终端设备处于同一群组中,第一终端设备在接收到第一消息后可以通过oaf通信框架,基于蓝牙通信技术等短距离无线通信技术向第二终端设备发送第一控制指令,也就是说,不再要求每个终端设备都具备上云的能力,降低了对终端设备的软硬件要求。
121.图6为本技术实施例提供的语音控制方法的交互图。图6对应的实施例与图5对应的实施例的区别在于步骤607。如图6示出的,语音控制方法包括:
122.步骤601:第一终端设备接收第一语音指令。
123.其中,步骤601与步骤401相同,实现过程请参照步骤401中的相关描述。
124.步骤602:第一终端设备接收至少一个终端设备发送的第一信息。
125.第一终端设备接收群组中至少一个终端设备发送的第一信息,其中,包括第二终端设备发送的第一信息。群组中的终端设备互联互通。
126.步骤603:第一终端设备向云端服务器发送第一请求。
127.其中,第一请求中携带有第一语音指令;步骤603与步骤301、步骤402相同,实现过程请参照步骤301、步骤402中的相关描述。
128.步骤604:第一终端设备向云端服务器发送至少一个终端设备的第一信息。
129.这里,第一终端设备向云端服务器发送至少一个终端设备的第一信息,至少包括在步骤502中接收到的至少一个终端设备发送的第一信息。
130.步骤605:在第一语音指令对应的执行设备为第二终端设备的情况下,云端服务器将第一语音指令和第二终端设备的第一信息输入对话系统。
131.其中,步骤605与步骤302相同,实现过程请参照步骤302中的相关描述。
132.步骤606:云端服务器得到对话系统返回的第一控制指令。
133.其中,第一控制指令由对话系统基于第一信息解析第一语音指令得到,用于指示第二终端设备执行第一操作。步骤606与步骤303相同,实现过程请参照步骤303中的相关描述。
134.步骤607:云端服务器向第二终端设备发送第一控制指令。
135.步骤608:在接收到第一控制指令的情况下,第二终端设备执行第一操作。
136.在本实施例中,由云端服务器的底层服务端根据用户的唯一账户,查询用户的设
备信息,并直接向第二终端设备发送第一控制指令,这样,能够进一步地降低语音控制过程的信息传输耗时,减少语音指令跨设备执行的延迟,提高跨设备执行的执行效率。
137.以下结合应用实施例对本技术实施例进行进一步说明:
138.下面以手机、云端服务器、智能电视的跨设备执行为场景,结合应用实施例对本技术再作进一步详细的描述。
139.图7为本技术应用实施例提供的语音控制方法的实现流程示意图。如图7示出的,语音控制方法包括:
140.步骤701:手机采集终端设备的相关信息。
141.这里,手机处于互联互通的集群中,集群至少包括手机、智能电视。手机对这些连接的终端设备的相关信息进行采集,对智能电视的采集,能够得到电视上安装的应用、电视的当前播放状态、电视支持获取资源的渠道和播放模式等。
142.步骤702:手机向云端服务器发送采集到的终端设备的相关信息。
143.手机在向云端服务器发出第一语音指令之前,向云端服务器发送采集到的终端设备的相关信息。
144.步骤703:云端服务器根据终端设备的相关信息以及语义结果返回的信息进行建模,判断是否为跨设备执行操作。
145.这里,云端服务器通过新建设备协调服务模块,根据手机采集的互联设备相关信息以及通过nlp提取设备槽位信息进行建模,判断是否为跨设备执行操作。例如,云端服务器基于接收到的相关信息,得知与手机连接的有电视、手表等终端设备。并接收到语音指令为“在电视上打开
×××
(电视剧)”,云端服务器通过nlp提取这句话的设备槽位为“电视”,技能意图为“播放
×××
(电视剧)”。这样,设备协调服务模块认为执行设备是电视,技能意图是想在电视上播放
×××
(电视剧),同时基于接收到语音指令的终端设备为手机,可知为跨设备执行操作。
146.步骤704:在判断为跨设备执行的情况下,云端服务器替换输入对话系统的相关信息。
147.在判断为跨设备执行的情况下,设备协调服务模块在服务器接收到的终端设备相关信息中确定出对应的智能电视的相关信息,以智能电视(执行设备)的相关信息替换手机(唤醒设备)的相关信息,并输入对话系统。
148.在实际应用中,终端设备的相关信息,即第一信息、端态信息,可以在对话系统进行语义理解时和对话管理流程时使用,进而提高基于语音指令解析得到的控制指令的精确度。在语义理解时,对话系统基于智能电视的相关状态对理解得到的多个结果进行排序。
149.例如,以语音指令为“播放电视剧a”为例进行说明,得到以下几种语音指令的理解结果:
150.继续播放电视剧a;
151.打开并播放电视剧a。
152.如果智能电视的第一信息表示终端设备处于播放电视剧b的状态,则“打开并播放电视剧a”的结果优先;如果智能电视的第一信息表示终端设备处于暂停播放电视剧a的状态,则“继续播放电视剧a”的结果优先。
153.步骤705:云端服务器得到对话系统输出的控制指令。
154.步骤706:基于第一控制指令,云端服务器生成并向第一终端设备发送第一消息。
155.这里,云端服务器通过新建模式层,由模式层负责感知跨设备执行场景,同时统一管理对话系统返回的跨设备执行相关的控制指令。在跨设备执行的情况下,由模式层对对话系统返回的第一控制指令进行改写,替换成多设备互联的协议。在每次出现新的跨设备执行的场景时,对话系统中的技能侧不需要配合修改,也就是说,对话系统无须感知执行设备的状态信息。其中,技能侧表示执行设备可执行的技能意图的类型,例如智能电视的播放功能、智能烹饪电器的调节功能。
156.例如,返回的技能侧的协议是智能电视可执行的,但与对话系统连接的是手机,而手机无法执行针对智能电视的控制指令,此时需要改写控制指令,通过返回特定的协议告诉手机,通过oaf传输给电视,由电视执行对应的控制指令。
157.步骤707:手机基于接收到的信息,通过oaf向电视发送控制指令。
158.手机基于接收到的信息,通过oaf向电视发送控制指令。
159.为实现本技术实施例的语音控制方法,本技术实施例还提供了一种语音控制装置,如图8所示,该语音控制装置包括:
160.第一接收单元801,用于接收第一终端设备发送的第一请求;所述第一请求携带有第一语音指令;
161.第一处理单元802,用于在所述第一语音指令对应的执行设备为第二终端设备的情况下,将所述第一语音指令和所述第二终端设备的第一信息输入对话系统;所述第一信息表征终端设备的相关状态;
162.第二处理单元803,用于得到所述对话系统返回的第一控制指令;所述第一控制指令由所述对话系统基于所述第一信息解析所述第一语音指令得到,用于指示所述第二终端设备执行第一操作;
163.第一发送单元804,用于发出第一控制指令。
164.其中,在一个实施例中,所述语音控制装置还包括:
165.第二接收单元,用于接收所述第一终端设备上报的至少一个终端设备的第一信息;
166.第三处理单元,用于在所述至少一个终端设备的第一信息中确定出所述第二终端设备的第一信息;其中,
167.所述至少一个终端设备中的每个终端设备与所述第一终端设备互联互通。
168.在一个实施例中,所述第一发送单元804,用于:
169.向所述第一终端设备发送第一消息;所述第一消息携带有所述第一控制指令,以使所述第一终端设备响应于所述第一消息,向所述第二终端设备发送所述第一控制指令。
170.在一个实施例中,所述第一发送单元804,用于:
171.向所述第二终端设备发送所述第一控制指令。
172.实际应用时,所述第一接收单元801、所述第二接收单元可由基于语音控制装置中的通信接口实现,所述第一处理单元802、所述第二处理单元803、所述第三处理单元可由基于语音控制装置中的处理器实现,所述第一发送单元804可由基于语音控制装置中的处理器结合通信接口实现。
173.需要说明的是:上述实施例提供的语音控制装置在进行语音控制时,仅以上述各
程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的语音控制装置与语音控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
174.为实现本技术实施例的语音控制方法,本技术实施例还提供了一种语音控制装置,如图9所示,该语音控制装置包括:
175.第二接收单元901,用于接收第一语音指令;
176.第二发送单元902,用于向第一服务器发送第一请求;所述第一请求携带有所述第一语音指令;
177.第三发送单元903,用于接收所述第一服务器基于所述第一请求对应发送的第一消息,并响应于所述第一消息,向第二终端设备发送所述第一消息携带的第一控制指令;其中,
178.所述第一控制指令基于对所述第一语音指令解析得到,用于指示所述第二终端设备执行第一操作。
179.其中,在一个实施例中,所述语音控制装置还包括:
180.第三接收单元,用于接收至少一个终端设备发送的第一信息;
181.第四发送单元,用于向所述第一服务器发送所述至少一个终端设备中的每个终端设备的第一信息。
182.在一个实施例中,所述第三接收单元,用于:
183.基于短距离无线通信技术,广播第二消息;所述第二消息用于请求对应的终端设备返回第一信息;
184.接收所述至少一个终端设备基于所述第二消息发送的第一信息。
185.实际应用时,所述第二接收单元901、所述第二发送单元902、所述第三接收单元、所述第四发送单元可由基于语音控制装置中的通信接口实现,所述第三发送单元903可由基于语音控制装置中的处理器结合通信接口实现。
186.需要说明的是:上述实施例提供的语音控制装置在进行语音控制时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的语音控制装置与语音控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
187.基于上述程序模块的硬件实现,且为了实现本技术实施例的方法,本技术实施例还提供了一种终端设备。图10为本技术实施例终端设备的硬件组成结构示意图,如图10所示,终端设备包括:
188.通信接口1,能够与其它设备比如网络设备等进行信息交互;
189.处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的语音控制方法。而所述计算机程序存储在存储器3上。
190.当然,实际应用时,终端设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源
总线、控制总线和状态信号总线。但是为了清楚说明起见,在图10中将各种总线都标为总线系统4。
191.本发明实施例中的存储器3用于存储各种类型的数据以支持终端设备的操作。这些数据的示例包括:用于在终端设备上操作的任何计算机程序。
192.可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本发明实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。
193.上述本发明实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
194.处理器2执行所述程序时实现本发明实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
195.在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
196.在本技术所提供的几个实施例中,应该理解到,所揭露的装置、终端和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,
仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
197.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
198.另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
199.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
200.或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
201.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一个”表示多个中的任意一个或多个中的至少两个的任意组合,例如,包括a、b、c中的至少一个,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
202.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。