结合UI执行自然语言命令的方法、设备、系统与存储介质转让专利

申请号 : CN201710632958.6

文献号 : CN107507614B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戴帅湘袁志伟李国华李龙飞张伟萌

申请人 : 北京小蓦机器人技术有限公司

摘要 :

本发明的目的是提供一种用于结合UI状态执行用户的自然语言命令的方法、设备与系统。具体地,检测UI状态是否发生变化;若发生变化,获取对应的相关信息;将相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;获取用户输入的自然语言命令,并将其发送至自然语言处理设备。与现有技术相比,本发明实现了在用户语音交互过程中结合UI状态来执行用户的自然语言命令,从而使得在用户语音交互过程中,设备的UI状态变化即便不是由于用户输入语音导致的,亦能够理解并正确响应用户的自然语言命令,提升了交互体验。

权利要求 :

1.一种在智能设备端用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:a检测UI状态是否发生变化;

b若发生变化,获取与UI状态变化对应的相关信息;

c将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;

d获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件,所述预定条件包括以下至少任一项:1)所述自然语言命令所对应的文本中含有预定类别词,2)所述自然语言命令所对应的文本具备语义缺失;

e将所述自然语言命令发送至所述自然语言处理设备,以使得所述自然语言处理设备根据所述相关信息执行所述自然语言命令。

2.根据权利要求1所述的方法,其中,根据以下至少任一项,触发所述UI状态发生变化:-所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化;

-所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化;

-所述智能设备中安装的第三方应用触发所述UI状态发生变化;

-所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改。

3.根据权利要求2所述的方法,其中,所述非语音交互操作的方式包括以下至少任一项:-遥控器;

-键盘;

-游戏杆;

-机载按键。

4.根据权利要求2或3所述的方法,其中,所述相关信息包括以下至少任一项:-若所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化,其中,所述相关信息至少包括所述非语音交互操作所对应的指令信息;

-若所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化,所述相关信息至少包括所述智能设备播放自动切换信息、所述智能设备的当前输出内容信息;

-若所述智能设备中安装的第三方应用触发所述UI状态发生变化,若所述第三方应用为导航应用,所述相关信息至少包括所述导航应用基于预定条件重新生成的导航线路;

-若所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改,所述相关信息至少包括更改后的数据信息。

5.根据权利要求1所述的方法,其中,所述步骤c包括:-通过预定协议将所述相关信息发送至所述自然语言处理设备。

6.根据权利要求1所述的方法,其中,所述步骤c包括:-将所述相关信息转换至对应的自然语言命令;

-将转换得到的自然语言命令发送至所述自然语言处理设备。

7.根据权利要求1所述的方法,其中,所述步骤b还包括:-若未发生变化,获取UI当前显示的内容,以作为所述相关信息。

8.一种在自然语言处理设备端辅助用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:A接收对应的智能设备发送的相关信息,其中,所述相关信息与UI状态变化对应;

B接收所述智能设备发送的自然语言命令,其中,所述自然语言命令满足预定条件,所述预定条件包括以下至少任一项:1)所述自然语言命令所对应的文本中含有预定类别词,

2)所述自然语言命令所对应的文本具备语义缺失;

C根据所述相关信息,执行所述自然语言命令。

9.一种用于结合UI状态执行用户的自然语言命令的智能设备,其中,该智能设备包括:检测装置,用于检测UI状态是否发生变化;

第一获取装置,用于若发生变化,获取与UI状态变化对应的相关信息;

第一发送装置,用于将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;

第二获取装置,用于获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件,所述预定条件包括以下至少任一项:1)所述自然语言命令所对应的文本中含有预定类别词,2)所述自然语言命令所对应的文本具备语义缺失;

第二发送装置,用于将所述自然语言命令发送至所述自然语言处理设备,以使得所述自然语言处理设备根据所述相关信息执行所述自然语言命令。

10.根据权利要求9所述的智能设备,其中,根据以下至少任一项,触发所述UI状态发生变化:-所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化;

-所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化;

-所述智能设备中安装的第三方应用触发所述UI状态发生变化;

-所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改。

11.根据权利要求10所述的智能设备,其中,所述非语音交互操作的方式包括以下至少任一项:-遥控器;

-键盘;

-游戏杆;

-机载按键。

12.根据权利要求10或11所述的智能设备,其中,所述相关信息包括以下至少任一项:-若所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化,其中,所述相关信息至少包括所述非语音交互操作所对应的指令信息;

-若所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化,所述相关信息至少包括所述智能设备播放自动切换信息、所述智能设备的当前输出内容信息;

-若所述智能设备中安装的第三方应用触发所述UI状态发生变化,若所述第三方应用为导航应用,所述相关信息至少包括所述导航应用基于预定条件重新生成的导航线路;

-若所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改,所述相关信息至少包括更改后的数据信息。

13.根据权利要求9所述的智能设备,其中,所述第一发送装置用于:-通过预定协议将所述相关信息发送至所述自然语言处理设备。

14.根据权利要求9所述的智能设备,其中,所述第一发送装置用于:-将所述相关信息转换至对应的自然语言命令;

-将转换得到的自然语言命令发送至所述自然语言处理设备。

15.根据权利要求9所述的智能设备,其中,所述第一获取装置还用于:若未发生变化,获取UI当前显示的内容,以作为所述相关信息。

16.一种用于结合UI状态执行用户的自然语言命令的自然语言处理设备,其中,该自然语言处理设备包括:第一接收装置,用于接收对应的智能设备发送的相关信息,其中,所述相关信息与UI状态变化对应;

第二接收装置,用于接收所述智能设备发送的自然语言命令,其中,所述自然语言命令满足预定条件,所述预定条件包括以下至少任一项:1)所述自然语言命令所对应的文本中含有预定类别词,2)所述自然语言命令所对应的文本具备语义缺失;

执行装置,用于根据所述相关信息,执行所述自然语言命令。

17.一种用于结合UI状态执行用户的自然语言命令的系统,其中,该系统包括根据权利要求9至15中任一项所述的智能设备,以及根据权利要求16所述的自然语言处理设备。

18.一种智能语音车载设备,其中,该智能语音车载设备包括根据权利要求9至15中任一项所述的智能设备。

19.一种智能语音电视,其中,该智能语音电视包括根据权利要求9至15中任一项所述的智能设备。

20.一种智能语音音箱,其中,该智能语音音箱包括根据权利要求9至15中任一项所述的智能设备。

21.一种计算设备,包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至8中任一所述的方法。

22.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1至8中任一项所述的方法。

说明书 :

结合UI执行自然语言命令的方法、设备、系统与存储介质

技术领域

[0001] 本发明涉及语音交互技术领域,尤其涉及一种用于结合UI状态执行用户的自然语言命令的技术。

背景技术

[0002] 用户与设备之间的交互包括按键控制、遥控器控制、体感控制、触摸操作控制、图形控制等。随着NLP(Natural Language Processing,自然语言处理)技术的发展,用户与设备之间又增加了一种交互方式,即语音交互控制。
[0003] 然而,现有的不同人机交互方式之间的指令是孤立的,并不能互通,用户与设备之间进行交互的过程中又存在多种交互模式间进行切换的需要,若用户在与设备进行语音交互的过程中,设备的UI(User Interface,用户界面)状态的变化不是由于用户输入语音导致的,会使得NLP设备丢掉UI的状态,又或用户输入的语音存在与UI状态相关的语义缺失,从而导致不能理解并正确响应用户的自然语言命令,降低了交互体验。

发明内容

[0004] 本发明的一个目的是提供一种用于结合UI状态执行用户的自然语言命令的方法、设备与系统。
[0005] 根据本发明的一个方面,提供了一种在智能设备端用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:
[0006] a检测UI状态是否发生变化;
[0007] b若发生变化,获取对应的相关信息;
[0008] c将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;
[0009] d获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件;
[0010] e将所述自然语言命令发送至所述自然语言处理设备。
[0011] 根据本发明的另一方面,还提供了一种在自然语言处理设备端辅助用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:
[0012] A接收对应的智能设备发送的相关信息,其中,所述相关信息与UI状态变化对应;
[0013] B接收所述智能设备发送的自然语言命令,其中,所述自然语言命令满足预定条件;
[0014] C根据所述相关信息,执行所述自然语言命令。
[0015] 根据本发明的一个方面,还提供了一种用于结合UI状态执行用户的自然语言命令的智能设备,其中,该智能设备包括:
[0016] 检测装置,用于检测UI状态是否发生变化;
[0017] 第一获取装置,用于若发生变化,获取对应的相关信息;
[0018] 第一发送装置,用于将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;
[0019] 第二获取装置,用于获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件;
[0020] 第二发送装置,用于将所述自然语言命令发送至所述自然语言处理设备。
[0021] 根据本发明的另一方面,还提供了一种用于结合UI状态执行用户的自然语言命令的自然语言处理设备,其中,该自然语言处理设备包括:
[0022] 第一接收装置,用于接收对应的智能设备发送的相关信息,其中,所述相关信息与UI状态变化对应;
[0023] 第二接收装置,用于接收所述智能设备发送的自然语言命令,其中,所述自然语言命令满足预定条件;
[0024] 执行装置,用于根据所述相关信息,执行所述自然语言命令。
[0025] 根据本发明的再一方面,还提供了一种用于结合UI状态执行用户的自然语言命令的系统,其中,该系统包括如前述根据本发明一个方面的一种结合UI状态执行用户的自然语言命令的智能设备,以及如前述根据本发明另一方面的一种结合UI状态执行用户的自然语言命令的自然语言处理设备。
[0026] 根据本发明的又一方面,还提供了一种智能语音车载设备,其中,该智能语音车载设备包括如前述根据本发明一个方面的一种结合UI状态执行用户的自然语言命令的智能设备。
[0027] 根据本发明的还一方面,还提供了一种智能语音电视,其中,该智能语音电视包括如前述根据本发明一个方面的一种结合UI状态执行用户的自然语言命令的智能设备。
[0028] 根据本发明的还一方面,还提供了一种智能语音音箱,其中,该智能语音音箱包括如前述根据本发明一个方面的一种结合UI状态执行用户的自然语言命令的智能设备。
[0029] 根据本发明的还一方面,还提供了一种计算设备,包括:
[0030] 一个或多个处理器;
[0031] 存储器,用于存储一个或多个程序,
[0032] 当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如前述根据本发明一个方面的一种用于结合UI状态执行用户的自然语言命令的方法,和/或如前述根据本发明另一方面的一种在自然语言处理设备端辅助用于结合UI状态执行用户的自然语言命令的方法。
[0033] 根据本发明的还一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如前述根据本发明一个方面的一种在智能设备端用于结合UI状态执行用户的自然语言命令的方法,和/或如前述根据本发明另一方面的一种在自然语言处理设备端辅助用于结合UI状态执行用户的自然语言命令的方法。
[0034] 与现有技术相比,本发明的一个实施例通过检测UI状态是否发生变化;若发生变化,获取对应的相关信息;将相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;获取用户输入的自然语言命令,并将其发送至自然语言处理设备,使得自然语言处理设备根据相关信息,执行自然语言命令,实现了在用户语音交互过程中结合UI状态来执行用户的自然语言命令,从而使得在用户语音交互过程中,设备的UI状态变化即便不是由于用户输入语音导致的、又或用户输入的语音存在与UI状态相关的语义缺失等情形,亦能够理解并正确响应用户的自然语言命令,提升了交互体验。

附图说明

[0035] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0036] 图1示出根据本发明一个方面的一种用于结合UI状态执行用户的自然语言命令的智能设备和自然语言处理设备的设备示意图;
[0037] 图2示出本发明一个实施例的用户在语音交互过程中因用户使用遥控器触发UI状态发生变化时对用户后续的自然语言命令的响应示意图;
[0038] 图3示出根据本发明另一个方面的智能设备和自然语言处理设备配合实现一种用于结合UI状态执行用户的自然语言命令的方法流程图;
[0039] 图4示出了适于用来实现本发明实施方式的示例性计算机系统/服务器的框图。
[0040] 附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

[0041] 下面结合附图对本发明作进一步详细描述。
[0042] 图1示出根据本发明一个方面的一种用于结合UI状态执行用户的自然语言命令的智能设备1和自然语言处理设备2的设备示意图,其中,智能设备1包括检测装置11、第一获取装置12、第一发送装置13、第二获取装置14和第二发送装置15,自然语言处理设备2包括第一接收装置21、第二接收装置22和执行装置23。具体地,智能设备1的检测装置11检测UI状态是否发生变化;若发生变化,第一获取装置12获取对应的相关信息;第一发送装置13将所述相关信息发送至对应的用于响应用户语音交互的自然语言处理设备2;相应地,自然语言处理设备2的第一接收装置21接收对应的智能设备1发送的相关信息,其中,所述相关信息与UI状态变化对应;智能设备1的第二获取装置14获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件;第二发送装置15将所述自然语言命令发送至所述自然语言处理设备2;相应地,自然语言处理设备2的第二接收装置22接收所述智能设备1发送的自然语言命令,其中,所述自然语言命令满足预定条件;执行装置23根据所述相关信息,执行所述自然语言命令。
[0043] 在此,所述智能设备1包括以下至少任一项;1)可以是任何一种与用户既能通过语音交互方式也能通过键盘、触摸板、触摸屏、遥控器或手写设备等非语音交互方式进行人机交互的电子产品,例如PC、手机、智能手机、PDA、可穿戴设备、掌上电脑PPC、智能可穿戴设备、平板电脑、智能语音车载设备、智能语音电视、智能语音音箱等;2)可以作为软件模块和/或硬件模块被包含于所述电子产品中;3)可以作为硬件设备与所述电子产品通过有线或无线的方式连接。在实际应用中,智能设备1中可搭载/安装对应于自然语言处理设备2的客户端(可以是APP形式),并输出自然语言处理设备2对用户的自然语言命令的响应结果,相应地,自然语言处理设备2为该客户端对应的服务器。
[0044] 在此,所述自然语言处理设备2是指能够理解、处理并响应用户的自然语言命令并将响应结果返回至输出设备(在具体应用中,输出设备可以是自然语言处理设备2所对应的智能设备)进行输出的设备,其包括但不限于如网络主机、单个网络服务器、多个网络服务器集、云端服务器或基于云计算的计算机集合等实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
[0045] 在具体实施例中,智能设备1与自然语言处理设备2之间通过网络进行通信,其中,所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。本领域技术人员应能理解上述智能设备1与自然语言处理设备2仅为举例,其他现有的或今后可能出现的智能设备或网络设备如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0046] 在此,智能设备1与自然语言处理设备2均包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。
[0047] 具体地,智能设备1的检测装置11通过智能设备1自身提供的应用程序接口(API),或者通过包含智能设备1的前述电子产品所提供的应用程序接口(API),检测智能设备1的UI状态是否发生变化,如检测智能设备1的UI状态是否发生变化。例如,当智能设备1本身即为前述的电子产品或者作为硬件模块与该电子产品相连时,UI状态是指智能设备1的UI状态;当智能设备1为包含于前述电子产品中的软件模块和/或硬件模块时,UI状态是指该电子产品下相应软件模块的UI状态或使得用户能够操作相应硬件模块的UI的UI状态,也即,此时UI状态亦是智能设备1的UI状态。
[0048] 在此,所述UI状态包括但不限于如UI界面显示的内容、UI界面中的元素数量、状态、是否被选中、设备输出音量大小、设备屏幕分辨率与色彩等。
[0049] 在此,根据以下至少任一项,触发所述UI状态发生变化:
[0050] -所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化;
[0051] -所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化;
[0052] -所述智能设备中安装的第三方应用触发所述UI状态发生变化;
[0053] -所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改。
[0054] 以下通过不同实施例对UI状态发生变化原因进行详细描述:
[0055] 实施例一:所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化
[0056] 在此,所述非语音交互操作的方式包括但不限于以下至少任一项:-遥控器;-键盘;-游戏杆;机载按键。
[0057] 例如,用户A以欲通过智能设备1(假设智能设备1为电子产品如智能语音电视)进行语音查找王菲的音乐,假设该智能语音电视中搭载了对应于自然语言处理设备2的客户端如Voice-APP,用户A打开该客户端,或者通过语音对其进行了唤醒,或者直接向该智能语音电视发出自然语言命令“王菲的音乐”,得到自然语言处理设备2返回的结果列表如list-1,此时用户A又通过电视遥控器选择了该列表中的第三首,因用户A的选择触发了该智能语音电视的UI状态发生了变化,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到用户A在与智能语音电视进行语音交互过程中因用户A执行的非语音交互操作即用户A用电视遥控器选择的操作触发了电视的UI状态发生了变化,如图2所示。
[0058] 再如,假设用户A向其智能语音电视发出自然语言命令“播放《三生三世十里桃花》第2集”,而在观看该电视剧《三生三世十里桃花》第2集的过程中,通过电视遥控器放大了音量,因用户A的通过电视遥控器进行的音量放大操作触发了该智能语音电视的UI状态发生了变化,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到用户A在与智能语音电视进行语音交互过程中因用户A执行的非语音交互操作即用户A用电视遥控器进行放大音量的操作触发了电视的UI状态发生了变化。
[0059] 实施例二:所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化
[0060] 还如,接上例,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到因智能语音电视播放完当前条目后自动切换至下一条目触发了电视的UI状态发生变化。
[0061] 在此,所述下一条目可以是下一首歌、下一集电视剧、下一期节目等篇幅较长的剧目或影视片中多个相对独立的段落、部分中的下一个。
[0062] 在此,需要说明的是,所述智能设备播放的所述条目可以是通过第三方多媒体网站(如视频网站等)、第三方应用(如视频APP、音乐APP等)播放的,也可以是通过电视频道播放的。
[0063] 实施例三:所述智能设备中安装的第三方应用触发所述UI状态发生变化[0064] 例如,假设用户A的智能设备1为智能车载设备,该智能车载设备中除搭载了对应于自然语言处理设备2的客户端如Voice-APP之外,还安装了第三方应用如导航APP,用户A驱车从location-A到location-B,在导航APP上设置了导航线路如Route-A,当导航APP导航到达目的地location-B后自动结束导航状态,或因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,则检测装置11通过第三方应用自身提供的应用程序接口(API)可获取到该等变化,便判断UI状态发生了变化,该变化是智能设备1中安装的第三方应用导航APP触发的。
[0065] 实施例四:所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改
[0066] 在此,所述更改包括但不限于如替换、删除、增加等。
[0067] 例如,对于用户A的自然语言命令“王菲的音乐”,自然语言处理设备2对其进行语义解析,得到如下语义解析结果如{歌手singer:王菲;内容类型content type:音乐},自然语言处理设备2在返回音乐结果列表list-1时,还返回该语义解析结果,对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1和用户A的自然语言命令“王菲的音乐”所对应的语音解析结果后,根据语义解析结果在本地数据库或第三方音乐库中进行查询,得到相应的音乐列表如list-2’,并利用音乐列表list-2’对基于语音“王菲的音乐”查找得到的王菲的音乐列表list-1进行了替换,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0068] 再如,对于用户A基于语音“王菲的音乐”查找得到的音乐列表list-1,但根据用户A的历史音乐查找、音乐播放等记录,捕捉到用户A偏好与王菲的《红豆》风格相同的音乐,因此自然语言处理设备2在返回音乐结果列表list-1时,还返回含有用户A偏好的语义解析结果如{歌手singer:王菲;内容类型content type:音乐;偏好preference:与王菲的《红豆》风格相同的音乐},对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1和含有用户A偏好的语义解析结果后,根据自然语言处理设备2返回的含有用户A偏好的语义解析结果,根据该语义解析结果查询了第三方数据,如查询第三方音乐库,或者查询本地数据库,得到相应的音乐列表如list-2,并利用音乐列表list-2对基于语音“王菲的音乐”查找得到的王菲的音乐列表list-1进行了替换,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0069] 又如,假设在音乐列表list-1中的某首歌涉及版权问题,对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1后,将list-1中涉及版权问题的歌曲进行删除,并将删除后的音乐结果列表进行输出,则检测装置11通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0070] 本领域技术人员应能理解上述触发UI状态发生变化的原因仅为举例,其他现有的或今后可能出现的触发UI状态发生变化的原因如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0071] 若发生变化,第一获取装置12获取对应的相关信息。在此,触发UI状态发生变化的原因不同,对应的相关信息也不相同。具体举例如下:
[0072] 1)若所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化,其中,所述相关信息至少包括所述非语音交互操作所对应的指令信息。
[0073] 例如,接续上述实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,则第一获取装置12可通过接收电视遥控器因用户的按键发出的红外遥控指令信号,然后对该指令信号进行解码,从而获得相应的指令信息,并将该指令信息作为所述相关信息。
[0074] 2)若所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化,所述相关信息至少包括所述智能设备的播放自动切换信息,以及切换后输出的内容信息。
[0075] 例如,接续上述实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,则第一获取装置12可通过智能语音电视自身所提供的应用程序接口(API),获取到智能语音电视的播放自动切换信息,以及切换后输出的内容信息即《三生三世十里桃花》第3集,并将该等信息作为所述相关信息。
[0076] 3)若所述智能设备中安装的第三方应用触发所述UI状态发生变化,若所述第三方应用为导航应用,所述相关信息至少包括所述导航应用基于预定条件重新生成的导航线路。在此,所述预定条件包括但不限于如结束导航、重新生成导航线路等。
[0077] 例如,接续上述实施例三,如导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,则第一获取装置12可通过导航APP自身所提供的应用程序接口(API),获取到重新生成的导航线路Route-B,并将此作为所述相关信息。
[0078] 4)若所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改,所述相关信息至少包括更改后的数据信息。
[0079] 例如,接续上述实施例四,对应于自然语言处理设备2的客户端Voice-APP利用根据用户A的自然语言命令“王菲的音乐”的语义解析结果查询得到音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,则第一获取装置12通过智能语音电视所提供的应用程序接口(API),可获取到音乐列表list-1被替换后的音乐列表list-2,并将此作为所述相关信息。
[0080] 本领域技术人员应能理解上述相关信息原因仅为举例,其他现有的或今后可能出现的相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0081] 本领域技术人员应能理解上述获取所述相关信息的方式仅为举例,其他现有的或今后可能出现的获取所述相关信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0082] 然后,第一发送装置13将所述相关信息发送至对应的用于响应用户语音交互的自然语言处理设备2。在此,第一发送装置13发送所述相关信息的方式包括但不限于以下至少任一项:
[0083] 1)通过预定协议将所述相关信息发送至所述自然语言处理设备。例如,在具体实施例中,可在预定协议中规定发送所述相关信息的语法、语义等要素,具体地,规定语法中发送所述相关信息的数据格式(如必要的字段),规定语义中发送所述相关信息的数据内容、含义等各项。在此,并不具体对所述预定协议中的语法、语义等要素进行特别说明。
[0084] 2)首先将所述相关信息转换至对应的自然语言命令,然后,再将转换得到的自然语言命令发送至所述自然语言处理设备。
[0085] 例如,对于上述实施例一涉及到的相关信息,即遥控器因用户A通过其选择了音乐结果列表list-1中的第三首所发出的指令,第一发送装置13可将该指令转换至对应自然语言命令如“选择第三首”,然后再将该自然语言命令发送至自然语言处理设备2。
[0086] 相应地,自然语言处理设备2的第一接收装置21接收对应的智能设备1发送的相关信息,其中,所述相关信息与UI状态变化对应,如所述相关信息与所述智能设备的UI状态变化对应。
[0087] 智能设备1的第二获取装置14通过智能设备1的拾音装置或通过声音采集设备如麦克风等,获取用户输入的自然语言命令,如获取用户接续输入的自然语言命令,其中,所述自然语言命令满足预定条件。在此,所述预定条件包括但不限于如:1)所述自然语言命令所对应的文本中含有预定类别词,在此,所述预定类别词是指使得所述子任务所对应的任务文本语义不完整的词,如缺失词、指代词等;2)所述自然语言命令所对应的文本具备语义缺失,也即语义不完整。在此,用户接续输入的自然语言命令满足预定条件,可使得自然语言处理设备2判断用户接续输入的自然语言命令与用户前一执行的自然语言命令和/或非语音交互操作相关联起来,将该等操作视为关联操作。
[0088] 例如,继续接实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,然后说“这首歌是什么名字”,则第二获取装置14通过声音采集设备便可采集到该自然语言命令。
[0089] 再如,继续接实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,此时用户A说“这是第几集”,则第二获取装置14通过声音采集设备便可采集到该自然语言命令。
[0090] 还如,继续接实施例三,导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,此时用户A说“前方是否行使畅通,最近的加油站/商店有哪些”,则第二获取装置14通过声音采集设备便可采集到该自然语言命令。
[0091] 又如,继续接实施例四,用户A用自行查询的音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,此时用户A说“第三首歌是什么名字”,则第二获取装置14通过声音采集设备便可采集到该自然语言命令。
[0092] 第二发送装置15将所述自然语言命令发送至所述自然语言处理设备2。
[0093] 相应地,自然语言处理设备2的第二接收装置22接收所述智能设备1发送的自然语言命令,其中,所述自然语言命令满足预定条件。
[0094] 执行装置23根据所述相关信息,执行所述自然语言命令。
[0095] 例如,继续接实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,然后说“这首歌是什么名字”,第一接收装置21接收到对应的智能设备1发送的相关信息为用户A通过电视遥控器选择列表list-1中的第三首的指令信息,第二接收装置22接收到用户A的自然语言命令“这首歌是什么名字”,则执行装置23根据第一接收装置21接收到的所述相关信息,便可知晓用户A的自然语言命令“这首歌是什么名字”中“这”指代的是列表list-1中的第三首如《红豆》,从而执行该自然语言命令,即对其作出响应,如对该命令进行语音回答“这首歌的名字是《红豆》”,如图2所示。
[0096] 再如,继续接实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,此时用户A说“这是第几集”,第一接收装置21接收到对应的智能设备1发送的相关信息为播放自动切换信息,以及切换后输出的内容信息即《三生三世十里桃花》第3集,则执行装置23根据第一接收装置21接收到的所述相关信息,便可知晓用户A的自然语言命令“这是第几集”中“这”指代的是《三生三世十里桃花》第3集,从而执行该自然语言命令,即对其作出响应,如对该命令进行语音回答“这是《三生三世十里桃花》第3集”。
[0097] 还如,继续接实施例三,导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,此时用户A说“前方是否行使畅通,最近的加油站/商店有哪些”,第一接收装置21接收到对应的智能设备1发送的相关信息为重新生成的导航线路Route-B,则执行装置23根据该相关信息,便可对用户A的自然语言命令“前方是否行使畅通,最近的加油站/商店有哪些”进行响应,如首先根据重新生成的导航路线Route-B,查询路况信息以及地图信息,并将查询结果进行语音播报如“前方行驶畅通,最近的加油站位于前方500米右转100米”。
[0098] 又如,继续接实施例四,用户A用自行查询的音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,此时用户A说“第三首歌是什么名字”,第一接收装置21接收到对应智能设备1发送的相关信息为音乐列表list-1被替换后的音乐列表list-2,则执行装置23根据该相关信息,便可知晓用户A的自然语言命令“第三首歌是什么名字”是指如孙燕姿的《时光小偷》,并将其播报,实现对用户A的自然语言命令“第三首歌是什么名字”响应。
[0099] 在另一个实施例中,若检测装置11检测到UI状态未发生变化,如检测到智能设备1的UI状态未发生变化,第一获取装置12还可获取UI当前显示的内容,以作为所述相关信息。
[0100] 例如,若用户A正在通过其智能设备1(如智能语音电视)播放某首歌曲,此时用户说“王菲的作品”,因检测装置11检测到智能设备1的UI状态未发生变化,则第一获取装置12可通过智能设备1自身所提供的应用程序接口(API),获取到智能设备1的UI当前显示的内容,并将其作为所述相关信息,从而使得自然语言处理设备2的第一接收装置21接收到该相关信息后,执行装置23根据该相关信息,便可知晓用户A的自然语言命令“王菲的作品”是指王菲的音乐,而不是王菲的电影,如根据该自然语言命令,播报王菲的音乐结果列表,从而实现对用户A的自然语言命令“王菲的作品”响应。
[0101] 再如,若用户A正在通过其智能设备1(如智能手机)打开了地图,此时用户说“放大”,因检测装置11检测到智能设备1的UI状态未发生变化,则第一获取装置12可通过智能设备1自身所提供的应用程序接口(API),获取到智能设备1的UI当前显示的内容,并将其作为所述相关信息,从而使得自然语言处理设备2的第一接收装置21接收到该相关信息后,执行装置23根据该相关信息,便可知晓用户A的自然语言命令“放大”是指放大地图,从而根据该自然语言命令,对当前UI界面显示的地图进行放大;还如,若智能设备1正在播放音乐,此时用户说“放大”,因检测装置11检测到智能设备1的UI状态未发生变化,则执行装置23可知晓用户A的自然语言命令“放大”是指调高音乐的音量,从而根据该自然语言命令,调高当前UI界面播放的音乐的音量。
[0102] 在此,本发明通过检测UI状态是否发生变化,若发生变化,获取对应的相关信息,并将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备,还获取用户输入的自然语言命令,并将其发送至自然语言处理设备,自然语言处理设备根据所述相关信息,执行所述自然语言命令,实现了在用户语音交互过程中结合UI状态来执行用户的自然语言命令,从而使得在用户语音交互过程中,设备的UI状态变化即便不是由于用户输入语音导致的、又或用户输入的语音存在与UI状态相关的语义缺失等情形,亦能够理解并正确响应用户的自然语言命令,提升了交互体验。
[0103] 在此,需要说明的是,在具体实施例中,第一发送装置13和第二发送装置15可以为独立的模块,也可作为同一模块集成在一起;第一发送装置13和第二发送装置15可同步执行,也可异步执行。
[0104] 在另一实施例中,检测装置11可以在第二获取装置14获取用户输入自然语言命令之前检测UI状态是否发生变化,此时,第二获取装置14获取所述用户接续输入的自然语言命令;检测装置11也可以在第二获取装置14获取用户输入自然语言命令之后检测UI状态是否在用户输入自然语言命令之前发生变化,具体地,可以设置一个时间阈值,检测装置11检测用户输入自然语言命令之前时间阈值内UI状态是否发生变化;或者具体地,检测装置11检测自用户上一条自然语言命令至最近一条自然语言命令之间UI状态是否发生变化,如果没有检测到上一条自然语言命令,则检测自开机至最近一条自然语言命令之间UI状态是否发生变化。
[0105] 图3示出根据本发明另一个方面的智能设备和自然语言处理设备配合实现一种用于结合UI状态执行用户的自然语言命令的方法流程图。
[0106] 其中,该方法包括步骤S1、步骤S2、步骤S3、步骤S4、步骤S5和步骤S6。
[0107] 具体地,在步骤S1中,智能设备1检测UI状态是否发生变化;若发生变化,在步骤S2中,智能设备1获取对应的相关信息;在步骤S3中,智能设备1将所述相关信息发送至对应的用于响应用户语音交互的自然语言处理设备2;相应地,自然语言处理设备2接收对应的智能设备1发送的相关信息,其中,所述相关信息与UI状态变化对应;在步骤S4中,智能设备1获取用户输入的自然语言命令,其中,所述自然语言命令满足预定条件;在步骤S5中,智能设备1将所述自然语言命令发送至所述自然语言处理设备2;相应地,自然语言处理设备2接收所述智能设备1发送的自然语言命令,其中,所述自然语言命令满足预定条件;在步骤S6中,自然语言处理设备2根据所述相关信息,执行所述自然语言命令。
[0108] 在此,所述智能设备1包括以下至少任一项:1)可以是任何一种与用户既能通过语音交互方式也能通过键盘、触摸板、触摸屏、遥控器或手写设备等非语音交互方式进行人机交互的电子产品,例如PC、手机、智能手机、PDA、可穿戴设备、掌上电脑PPC、智能可穿戴设备、平板电脑、智能语音车载设备、智能语音电视、智能语音音箱等;2)可以作为软件模块和/或硬件模块被包含于所述电子产品中;3)可以作为硬件设备与所述电子产品通过有线或无线的方式连接。在实际应用中,智能设备1中可搭载/安装对应于自然语言处理设备2的客户端(可以是APP形式),并输出自然语言处理设备2对用户的自然语言命令的响应结果,相应地,自然语言处理设备2为该客户端对应的服务器。
[0109] 在此,所述自然语言处理设备2是指能够理解、处理并响应用户的自然语言命令并将响应结果返回至输出设备(在具体应用中,输出设备可以是自然语言处理设备2所对应的智能设备)进行输出的设备,其包括但不限于如网络主机、单个网络服务器、多个网络服务器集、云端服务器或基于云计算的计算机集合等实现。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
[0110] 在具体实施例中,智能设备1与自然语言处理设备2之间通过网络进行通信,其中,所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。本领域技术人员应能理解上述智能设备1与自然语言处理设备2仅为举例,其他现有的或今后可能出现的智能设备或网络设备如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0111] 在此,智能设备1与自然语言处理设备2均包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。
[0112] 具体地,在步骤S1中,智能设备1通过其自身提供的应用程序接口(API),或者通过包含智能设备1的前述电子产品所提供的应用程序接口(API),检测UI状态是否发生变化,如检测智能设备1的UI状态是否发生变化。例如,当智能设备1本身即为前述的电子产品或者作为硬件模块与该电子产品相连时,UI状态是指智能设备1的UI状态;当智能设备1为包含于前述电子产品中的软件模块和/或硬件模块时,UI状态是指该电子产品下相应软件模块的UI状态或使得用户能够操作相应硬件模块的UI的UI状态,也即,此时UI状态亦是智能设备1的UI状态。
[0113] 在此,所述UI状态包括但不限于如UI界面显示的内容、UI界面中的元素数量、状态、是否被选中、设备输出音量大小、设备屏幕分辨率与色彩等。
[0114] 在此,根据以下至少任一项,触发所述UI状态发生变化:
[0115] -所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化;
[0116] -所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化;
[0117] -所述智能设备中安装的第三方应用触发所述UI状态发生变化;
[0118] -所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改。
[0119] 以下通过不同实施例对UI状态发生变化原因进行详细描述:
[0120] 实施例一:所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化
[0121] 在此,所述非语音交互操作的方式包括但不限于以下至少任一项:-遥控器;-键盘;-游戏杆;机载按键。
[0122] 例如,用户A以欲通过智能设备1(假设智能设备1为电子产品如智能语音电视)进行语音查找王菲的音乐,假设该智能语音电视中搭载了对应于自然语言处理设备2的客户端如Voice-APP,用户A打开该客户端,或者通过语音对其进行了唤醒,或者直接向该智能语音电视发出自然语言命令“王菲的音乐”,得到自然语言处理设备2返回的结果列表如list-1,此时用户A又通过电视遥控器选择了该列表中的第三首,因用户A的选择触发了该智能语音电视的UI状态发生了变化,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到用户A在与智能语音电视进行语音交互过程中因用户A执行的非语音交互操作即用户A用电视遥控器选择的操作触发了电视的UI状态发生了变化,如图2所示。
[0123] 再如,假设用户A向其智能语音电视发出自然语言命令“播放《三生三世十里桃花》第2集”,而在观看该电视剧《三生三世十里桃花》第2集的过程中,通过电视遥控器放大了音量,因用户A的通过电视遥控器进行的音量放大操作触发了该智能语音电视的UI状态发生了变化,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到用户A在与智能语音电视进行语音交互过程中因用户A执行的非语音交互操作即用户A用电视遥控器进行放大音量的操作触发了电视的UI状态发生了变化。
[0124] 实施例二:所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化
[0125] 还如,接上例,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到因智能语音电视播放完当前条目后自动切换至下一条目触发了电视的UI状态发生变化。
[0126] 在此,所述下一条目可以是下一首歌、下一集电视剧、下一期节目等篇幅较长的剧目或影视片中多个相对独立的段落、部分中的下一个。
[0127] 在此,需要说明的是,所述智能设备播放的所述条目可以是通过第三方多媒体网站(如视频网站等)、第三方应用(如视频APP、音乐APP等)播放的,也可以是通过电视频道播放的。
[0128] 实施例三:所述智能设备中安装的第三方应用触发所述UI状态发生变化[0129] 例如,假设用户A的智能设备1为智能车载设备,该智能车载设备中除搭载了对应于自然语言处理设备2的客户端如Voice-APP之外,还安装了第三方应用如导航APP,用户A驱车从location-A到location-B,在导航APP上设置了导航线路如Route-A,当导航APP导航到达目的地location-B后自动结束导航状态,或因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,则在步骤S1中,智能设备1通过第三方应用自身提供的应用程序接口(API)可获取到该等变化,便判断UI状态发生了变化,该变化是智能设备1中安装的第三方应用导航APP触发的。
[0130] 实施例四:所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改
[0131] 在此,所述更改包括但不限于如替换、删除、增加等。
[0132] 例如,对于用户A的自然语言命令“王菲的音乐”,自然语言处理设备2对其进行语义解析,得到如下语义解析结果如{歌手singer:王菲;内容类型content type:音乐},自然语言处理设备2在返回音乐结果列表list-1时,还返回该语义解析结果,对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1和用户A的自然语言命令“王菲的音乐”所对应的语音解析结果后,根据语义解析结果在本地数据库或第三方音乐库中进行查询,得到相应的音乐列表如list-2’,并利用音乐列表list-2’对基于语音“王菲的音乐”查找得到的王菲的音乐列表list-1进行了替换,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0133] 再如,对于用户A基于语音“王菲的音乐”查找得到的音乐列表list-1,但根据用户A的历史音乐查找、音乐播放等记录,捕捉到用户A偏好与王菲的《红豆》风格相同的音乐,因此自然语言处理设备2在返回音乐结果列表list-1时,还返回含有用户A偏好的语义解析结果如{歌手singer:王菲;内容类型content type:音乐;偏好preference:与王菲的《红豆》风格相同的音乐},对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1和含有用户A偏好的语义解析结果后,根据自然语言处理设备2返回的含有用户A偏好的语义解析结果,根据该语义解析结果查询了第三方数据,如查询第三方音乐库,或者查询本地数据库,得到相应的音乐列表如list-2,并利用音乐列表list-2对基于语音“王菲的音乐”查找得到的王菲的音乐列表list-1进行了替换,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0134] 又如,假设在音乐列表list-1中的某首歌涉及版权问题,对应于自然语言处理设备2的客户端Voice-APP接收到自然语言处理设备2返回的音乐结果列表list-1后,将list-1中涉及版权问题的歌曲进行删除,并将删除后的音乐结果列表进行输出,则在步骤S1中,智能设备1通过该智能语音电视自身所提供的应用程序接口(API),检测到其UI状态发生了变化,变化的原因是自然语言处理设备2基于用户A的前一自然语言命令“王菲的音乐”响应的内容被更改。
[0135] 本领域技术人员应能理解上述触发UI状态发生变化的原因仅为举例,其他现有的或今后可能出现的触发UI状态发生变化的原因如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0136] 若发生变化,在步骤S2中,智能设备1获取对应的相关信息。在此,触发UI状态发生变化的原因不同,对应的相关信息也不相同。具体举例如下:
[0137] 1)若所述用户在与所述智能设备进行语音交互过程中因执行的非语音交互操作触发所述UI状态发生变化,其中,所述相关信息至少包括所述非语音交互操作所对应的指令信息。
[0138] 例如,接续上述实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,则在步骤S2中,智能设备1可通过接收电视遥控器因用户的按键发出的红外遥控指令信号,然后对该指令信号进行解码,从而获得相应的指令信息,并将该指令信息作为所述相关信息。
[0139] 2)若所述智能设备播放完当前条目后自动切换至下一条目触发所述UI状态发生变化,所述相关信息至少包括所述智能设备的播放自动切换信息,以及切换后输出的内容信息。
[0140] 例如,接续上述实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,则在步骤S2中,智能设备1可通过智能语音电视自身所提供的应用程序接口(API),获取到智能语音电视的播放自动切换信息,以及切换后输出的内容信息即《三生三世十里桃花》第3集,并将该等信息作为所述相关信息。
[0141] 3)若所述智能设备中安装的第三方应用触发所述UI状态发生变化,若所述第三方应用为导航应用,所述相关信息至少包括所述导航应用基于预定条件重新生成的导航线路。在此,所述预定条件包括但不限于如结束导航、重新生成导航线路等。
[0142] 例如,接续上述实施例三,如导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,则在步骤S2中,智能设备1可通过导航APP自身所提供的应用程序接口(API),获取到重新生成的导航线路Route-B,并将此作为所述相关信息。
[0143] 4)若所述自然语言处理设备基于所述用户的前一自然语言命令响应的内容被更改,所述相关信息至少包括更改后的数据信息。
[0144] 例如,接续上述实施例四,对应于自然语言处理设备2的客户端Voice-APP利用根据用户A的自然语言命令“王菲的音乐”的语义解析结果查询得到音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,则在步骤S2中,智能设备1通过智能语音电视所提供的应用程序接口(API),可获取到音乐列表list-1被替换后的音乐列表list-2,并将此作为所述相关信息。
[0145] 本领域技术人员应能理解上述相关信息原因仅为举例,其他现有的或今后可能出现的相关信息如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0146] 本领域技术人员应能理解上述获取所述相关信息的方式仅为举例,其他现有的或今后可能出现的获取所述相关信息的方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0147] 然后,在步骤S3中,智能设备1将所述相关信息发送至对应的用于响应用户语音交互的自然语言处理设备2。在此,在步骤S3中,智能设备1发送所述相关信息的方式包括但不限于以下至少任一项:
[0148] 1)通过预定协议将所述相关信息发送至所述自然语言处理设备。例如,在具体实施例中,可在预定协议中规定发送所述相关信息的语法、语义等要素,具体地,规定语法中发送所述相关信息的数据格式(如必要的字段),规定语义中发送所述相关信息的数据内容、含义等各项。在此,并不具体对所述预定协议中的语法、语义等要素进行特别说明。
[0149] 2)首先将所述相关信息转换至对应的自然语言命令,然后,再将转换得到的自然语言命令发送至所述自然语言处理设备。
[0150] 例如,对于上述实施例一涉及到的相关信息,即遥控器因用户A通过其选择了音乐结果列表list-1中的第三首所发出的指令,在步骤S3中,智能设备1可将该指令转换至对应自然语言命令如“选择第三首”,然后再将该自然语言命令发送至自然语言处理设备2。
[0151] 相应地,自然语言处理设备2接收对应的智能设备1发送的相关信息,其中,所述相关信息与UI状态变化对应,如所述相关信息与所述智能设备的UI状态变化对应。
[0152] 在步骤S4中,智能设备1通过其自身的拾音装置或通过声音采集设备如麦克风等,获取用户输入的自然语言命令,如获取用户接续输入的自然语言命令,其中,所述自然语言命令满足预定条件。在此,所述预定条件包括但不限于如:1)所述自然语言命令所对应的文本中含有预定类别词,在此,所述预定类别词是指使得所述子任务所对应的任务文本语义不完整的词,如缺失词、指代词等;2)所述自然语言命令所对应的文本具备语义缺失,也即语义不完整。在此,用户接续输入的自然语言命令满足预定条件,可使得自然语言处理设备2判断用户接续输入的自然语言命令与用户前一执行的自然语言命令和/或非语音交互操作相关联起来,将该等操作视为关联操作。
[0153] 例如,继续接实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,然后说“这首歌是什么名字”,则在步骤S4中,智能设备1通过声音采集设备便可采集到该自然语言命令。
[0154] 再如,继续接实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,此时用户A说“这是第几集”,则在步骤S4中,智能设备1通过声音采集设备便可采集到该自然语言命令。
[0155] 还如,继续接实施例三,导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,此时用户A说“前方是否行使畅通,最近的加油站/商店有哪些”,则在步骤S4中,智能设备1通过声音采集设备便可采集到该自然语言命令。
[0156] 又如,继续接实施例四,用户A用自行查询的音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,此时用户A说“第三首歌是什么名字”,则在步骤S4中,智能设备1通过声音采集设备便可采集到该自然语言命令。
[0157] 在步骤S5中,智能设备1将所述自然语言命令发送至所述自然语言处理设备2。
[0158] 相应地,自然语言处理设备2接收所述智能设备1发送的自然语言命令,其中,所述自然语言命令满足预定条件。
[0159] 在步骤S6中,自然语言处理设备2根据所述相关信息,执行所述自然语言命令。
[0160] 例如,继续接实施例一,用户A通过电视遥控器选择了通过自然语言命令“王菲的音乐”返回的列表list-1中的第三首,然后说“这首歌是什么名字”,在步骤S3中,自然语言处理设备2接收到对应的智能设备1发送的相关信息为用户A通过电视遥控器选择列表list-1中的第三首的指令信息,在步骤S5中,自然语言处理设备2接收到用户A的自然语言命令“这首歌是什么名字”,则在步骤S6中,自然语言处理设备2根据其在步骤S3中接收到的所述相关信息,便可知晓用户A的自然语言命令“这首歌是什么名字”中“这”指代的是列表list-1中的第三首如《红豆》,从而执行该自然语言命令,即对其作出响应,如对该命令进行语音回答“这首歌的名字是《红豆》”,如图2所示。
[0161] 再如,继续接实施例二,用户A的智能语音电视播放完《三生三世十里桃花》第2集之后,自动切换至下一集进行播放,此时用户A说“这是第几集”,在步骤S3中,自然语言处理设备2接收到对应的智能设备1发送的相关信息为播放自动切换信息,以及切换后输出的内容信息即《三生三世十里桃花》第3集,则在步骤S6中,自然语言处理设备2根据其在步骤S3中接收到的所述相关信息,便可知晓用户A的自然语言命令“这是第几集”中“这”指代的是《三生三世十里桃花》第3集,从而执行该自然语言命令,即对其作出响应,如对该命令进行语音回答“这是《三生三世十里桃花》第3集”。
[0162] 还如,继续接实施例三,导航APP因车辆没有按原导航线路Route-A行驶导致导航APP重新生成了导航线路Route-B,此时用户A说“前方是否行使畅通,最近的加油站/商店有哪些”,在步骤S3中,自然语言处理设备2接收到对应的智能设备1发送的相关信息为重新生成的导航线路Route-B,则在步骤S6中,自然语言处理设备2根据该相关信息,便可对用户A的自然语言命令“前方是否行使畅通,最近的加油站/商店有哪些”进行响应,如首先根据重新生成的导航路线Route-B,查询路况信息以及地图信息,并将查询结果进行语音播报如“前方行驶畅通,最近的加油站位于前方500米右转100米”。
[0163] 又如,继续接实施例四,用户A用自行查询的音乐列表list-2对基于语音“王菲的音乐”查找得到的音乐列表list-1进行了替换,此时用户A说“第三首歌是什么名字”,在步骤S3中,自然语言处理设备2接收到对应智能设备1发送的相关信息为音乐列表list-1被替换后的音乐列表list-2,则在步骤S6中,自然语言处理设备2根据该相关信息,便可知晓用户A的自然语言命令“第三首歌是什么名字”是指如孙燕姿的《时光小偷》,并将其播报,实现对用户A的自然语言命令“第三首歌是什么名字”响应。
[0164] 在另一个实施例中,若在步骤S1中,智能设备1检测到UI状态未发生变化,如检测到智能设备1的UI状态未发生变化,在步骤S2中,智能设备1还可获取UI当前显示的内容,以作为所述相关信息。
[0165] 例如,若用户A正在通过其智能设备1(如智能语音电视)播放某首歌曲,此时用户说“王菲的作品”,因在步骤S1中,智能设备1检测到其UI状态未发生变化,则在步骤S2中,智能设备1可通过智能设备1自身所提供的应用程序接口(API),获取到智能设备1的UI当前显示的内容,从而使得在步骤S3中,自然语言处理设备2接收到该相关信息后,在步骤S6中,自然语言处理设备2根据该相关信息,便可知晓用户A的自然语言命令“王菲的作品”是指王菲的音乐,而不是王菲的电影,如根据该自然语言命令,播报王菲的音乐结果列表,从而实现对用户A的自然语言命令“王菲的作品”响应。
[0166] 再如,若用户A正在通过其智能设备1(如智能手机)打开了地图,此时用户说“放大”,因在步骤S1中,智能设备1检测到其UI状态未发生变化,则在步骤S2中,智能设备1可通过其自身所提供的应用程序接口(API),获取到智能设备1的UI当前显示的内容,从而使得在步骤S3中,自然语言处理设备2接收到该相关信息后,在步骤S6中,自然语言处理设备2根据该相关信息,便可知晓用户A的自然语言命令“放大”是指放大地图,从而根据该自然语言命令,对当前UI界面显示的地图进行放大;还如,若智能设备1正在播放音乐,此时用户说“放大”,因在步骤S1中,智能设备1检测到智能设备1的UI状态未发生变化,则在步骤S6中,自然语言处理设备2可知晓用户A的自然语言命令“放大”是指调高音乐的音量,从而根据该自然语言命令,调高当前UI界面播放的音乐的音量。
[0167] 在此,本发明通过检测UI状态是否发生变化,若发生变化,获取对应的相关信息,并将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备,还获取用户输入的自然语言命令,并将其发送至自然语言处理设备,自然语言处理设备根据所述相关信息,执行所述自然语言命令,实现了在用户语音交互过程中结合UI状态来执行用户的自然语言命令,从而使得在用户语音交互过程中,设备的UI状态变化即便不是由于用户输入语音导致的、又或用户输入的语音存在与UI状态相关的语义缺失等情形,亦能够理解并正确响应用户的自然语言命令,提升了交互体验。
[0168] 在此,需要说明的是,在具体实施例中,步骤S3和步骤S5可同步执行,也可异步执行。
[0169] 在另一实施例中,步骤S1可以步骤S4之前执行,此时,在步骤S4中,智能设备1获取所述用户接续输入的自然语言命令;步骤S1也可以在步骤S4之后执行,此时,在步骤S1中,智能设备1检测的是用户输入自然语言命令之前的UI状态是否发生变化,具体地,可以设置一个时间阈值,在步骤S1中,智能设备1检测用户输入自然语言命令之前时间阈值内UI状态是否发生变化;或者具体地,在步骤S1中,智能设备1检测自用户上一条自然语言命令至最近一条自然语言命令之间UI状态是否发生变化,如果没有检测到上一条自然语言命令,则检测自开机至最近一条自然语言命令之间UI状态是否发生变化。
[0170] 图4示出了适于用来实现本发明实施方式的示例性计算机系统/服务器3的框图。图4显示的计算机系统/服务器3仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0171] 如图4所示,计算机系统/服务器3以通用计算设备的形式表现。计算机系统/服务器3的组件可以包括但不限于:一个或者多个处理器或者处理单元31、系统存储器32、连接不同系统组件(包括系统存储器32和处理单元31)的总线33。
[0172] 总线33表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线、微通道体系结构(MAC)总线、增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
[0173] 计算机系统/服务器3典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器3访问的可用介质,包括易失性和非易失性介质、可移动的和不可移动的介质。
[0174] 系统存储器32可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)321和/或高速缓存存储器322。计算机系统/服务器3可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统323可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线33相连。系统存储器32可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0175] 具有一组(至少一个)程序模块325的程序/实用工具324,可以存储在例如系统存储器32中,这样的程序模块325包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块325通常执行本发明所描述的实施例中的功能和/或方法。
[0176] 计算机系统/服务器3也可以与一个或多个外部设备35(例如键盘、指向设备、显示器34等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器3交互的设备通信,和/或与使得该计算机系统/服务器3能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口36进行。并且,计算机系统/服务器3还可以通过网络适配器30与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图4所示,网络适配器30通过总线33与计算机系统/服务器3的其它模块通信。应当明白,尽管图4中未示出,可以结合计算机系统/服务器3使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0177] 处理单元31通过运行存储在系统存储器32中的程序,从而执行各种功能应用以及数据处理,例如实现以下一种在智能设备端用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:
[0178] a检测UI状态是否发生变化;
[0179] b若发生变化,获取对应的相关信息;
[0180] c将所述相关信息发送至对应的用于响应用户语音交互命令的自然语言处理设备;
[0181] d获取所述用户接续输入的自然语言命令,其中,所述自然语言命令满足预定条件;
[0182] e将所述自然语言命令发送至所述自然语言处理设备。
[0183] 在另一实施例中,处理单元31通过运行存储在系统存储器32中的程序,从而执行各种功能应用以及数据处理,例如实现以下一种在自然语言处理设备端辅助用于结合UI状态执行用户的自然语言命令的方法,其中,该方法包括以下步骤:
[0184] A接收对应的智能设备发送的相关信息,其中,所述相关信息与UI状态变化对应;
[0185] B接收所述智能设备发送的自然语言命令,其中,所述自然语言命令满足预定条件;
[0186] C根据所述相关信息,执行所述自然语言命令。
[0187] 需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤的电路。
[0188] 另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
[0189] 对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。