用户、自动化助理和其它计算服务之间的多模态交互的制作方法

allin2025-05-20  73


本技术涉及用户、自动化助理和其它计算服务之间的多模态交互。


背景技术:

1、人类可以参与与在本文中称为“自动化助理”(也称为“聊天机器人”、“交互式个人助理”、“智能个人助理”、“个人话音助理”、“谈话代理”等)的交互式软件应用的人机对话。例如,人类(其在他们与自动化助理交互时可以被称为“用户”)可以使用自由形式自然语言输入来提供命令、查询和/或请求(在本文中统称为“查询”),该自由形式自然语言输入可以包括被转换成文本并且然后被处理的有声话语和/或键入的自由形式自然语言输入。在许多情况下,必须首先例如使用预定义口头调用短语来“调用”自动化助理。

2、存在能够与自动化助理交互的许多计算服务(也称为“软件代理”或“代理”)。这些计算服务常常由将在本文中被称为“第三方”(或“第三方开发者”)的人开发和/或提供,因为提供计算服务的实体常常不直接与提供自动化助理的实体紧密联系。然而,计算服务不限于由第三方开发的计算服务,并且可以由实现自动化助理的同一实体实现。计算服务可以被配置成解析各种不同的用户意图,其中的许多意图可能无法由自动化助理解析。此类意图可以涉及但是当前不限于控制或配置智能设备、接收用于执行任务的分步指令以及与在线服务交互。因此,许多自动化助理可以同时地与用户和第三方计算服务两者交互,从而有效地作为用户与第三方之间的调解者或中介。

3、一些第三方计算服务可以依照对话状态机操作,这些对话状态机有效地定义多个状态以及那些状态之间的转变,这些转变是基于从用户和/或在别处(例如,传感器、web服务等)接收到的各种输入而发生。当用户在与第三方计算服务的一个或多个对话“轮次(turn)”期间(通过自动化助理作为调解者)提供(口头的或键入的)自由形式自然语言输入时,与第三方计算服务相关联的对话状态机将在各种对话状态之间前进。最终,对话状态机可以达到解析用户的意图的状态。


技术实现思路

1、随着自动化助理变得更普遍,专门地设计用来促进与自动化助理交互的计算设备—在本文中称为“助理设备”—正变得更平凡。许多助理设备使得用户能够参与与自动化助理的无接触交互。例如,助理设备常常包括允许用户提供有声话语作为输入的麦克风。附加地,越来越多的助理设备现在包括显示能力。

2、因此,在本文中描述了用于用户、自动化助理和其它计算服务之间的多模态交互的技术和框架。更特别地但不排他地,本文描述的一些实现方式允许用户使用除口头自由形式自然语言输入以外的输入模态如视觉/触觉模态来前进通过与第三方计算服务相关联的对话状态机。如本文所使用的,“口头”将是指能够由用户通过与键盘交互和/或通过提供有声话语(其可以使用语音辨识被转换为文本内容)来提供的自由形式自然语言输入。附加地或替换地,本文描述的一些实现方式允许用户触发与和第三方计算服务相关联的图形用户界面的无接触交互。在本文中设想了其它变型。提供用于使得用户能够使用口头输入和非口头输入两者的组合来与第三方服务交互的机制可以促进由健全用户和具有各式各样残疾的用户两者对第三方服务的访问(并且可以减少对于服务的特殊适配版本的需要)。这不仅是因为该机制可以使得用户能够以最适于他们的方式与第三方服务交互。

3、在一些实现方式中,自动化助理可以包括客户端部分和服务器部分。自动化助理的客户端部分可以作为“助理应用”在客户端设备(例如,智能电话、智能手表、助理设备等)上操作。自动化助理的服务器部分可以在一个或多个服务器上操作,这些服务器有时在本文中被称为“云”计算系统或“云”。在各种实现方式中,客户端设备可以包括显示器,该显示器例如由自动化助理的客户端部分使用来渲染图形用户界面(“gui”)。在一些实现方式中,gui可以采取嵌入式web浏览器的形式,该嵌入式web浏览器基于由第三方计算服务提供的基础标记语言(例如,html、xml)来渲染图形。gui的提供可以使得用户能够以比单独通过音频交互可能的更高效方式与第三方计算服务交互。

4、在用户正在与自动化助理接洽以便进一步与第三方计算服务接洽的一些实现方式中,第三方计算服务可以依照口头对话状态机和/或视觉对话状态机与用户接洽。口头对话状态机可以支配用户与计算服务之间的口头对话,其中用户提供键入和/或有声自由形式自然语言输入。视觉对话状态机可以支配作为沉浸式体验的一部分在gui上渲染的东西。在一些此类实现方式中,可以将口头对话状态机的一个或多个口头对话状态链接到视觉对话状态机的一个或多个视觉对话状态,使得当口头对话达到特定状态时渲染特定gui,并且/或者当用户以特定方式与gui交互以使视觉对话状态机前进到特定视觉对话状态时,口头对话自动地前进到特定状态。

5、在一些实现方式中,用户可以能够使用通过自动化助理的服务器部分来灌进的口头命令或其它无接触输入(指示用户的意图)来与由第三方计算服务提供的gui无接触交互。例如,假设用户(通过自动化助理)与允许控制智能家居设备的第三方计算服务接洽。可以在gui上例如在gui的多个块片内呈现与控制/配置智能家居设备有关的各种选项。除了能够选择这些块片中的一个(例如,使用鼠标或触摸屏)之外,用户还能够通过发出口头命令如“let’s configure my device(让我们配置我的设备)”或“i need help(我需要帮助)”来选择这些块片中的一个。这可以触发与gui的无接触交互,该无接触交互前进到界面模块,该界面模块允许用户配置设备或提供可选faq的列表。作为另一示例,用户可以通过发出口头命令如“scroll down one screen(向下滚动一个屏幕)”或“move to the nextparagraph(移动到下一个段落)”来浏览作为gui的一部分渲染的文档。除了通过自动化助理的服务器部分将口头命令/其它无接触输入灌进到第三方计算服务之外,还可以经由自动化助理的服务器部分引导从第三方计算服务到客户端设备的所有数据和命令。这可以用来增加客户端设备的安全性,因为自动化助理的服务器部分可以防止源自第三方计算服务或者经由第三方计算服务接收的恶意消息等到达客户端设备。

6、在一些实现方式中,用户可以与由第三方计算服务提供的gui交互以便前进通过视觉对话状态机和口头对话状态机两者。作为一个示例,用户可以操作gui来放大特定对象,然后提供诸如“what’s this?(这是什么?)”的口头查询。通过将gui聚焦在特定对象上,用户还使口头状态机前进到特定对象聚焦的状态。因此,可以将查询“what’s this?”中的术语“this”解析为特定对象。

7、作为另一示例,假设第三方计算服务提供基于多选择轮次的对话(例如,与用于执行任务的分步指导有关)。对于特定问题,在客户端计算设备处渲染的gui可以对应于第三方计算服务的视觉对话状态机的特定状态,并且可以包括多选择问题和答案选择。同时,可以依照第三方计算服务的口头对话状态机提供口头自然语言输出。口头自然语言输出可以例如大声读出多选择问题(并且在一些情况下,也经历答案选择)。在一些实现方式中,用户可以通过选择屏幕上的答案选择中的一个或者通过提供指示特定答案选择的有声话语来使视觉对话状态机和口头对话状态机两者前进到不同的相应状态(例如,前进到下一个问题)。

8、本文描述的技术可以产生各种技术优点和益处。作为一个示例,基于自由形式输入解释和/或执行意图匹配占用相当多的计算资源。通过使得用户能够以触觉方式与预定义图形元素交互以使与自动化助理的谈话前进,可以保存这些资源,既不必执行解释/意图匹配,又使得能实现与第三方计算服务相关联的对话状态机的高效遍历。电力和计算资源的这种浪费或另外低效或不必要的使用可以在客户端计算设备它本身处和/或在诸如操作自动化助理的服务器部分的一个或多个网络服务器的远程计算装置处发生。另外,与远程计算装置的不必要通信在通信网络上引起不想要的负载。作为另一示例,通过将平台无关web浏览器嵌入到自动化助理的客户端部分中,第三方开发者能够提供视觉内容以便以统一方式伴随他们的计算服务。这可以使得能够跨越各式各样客户端设备提供计算服务和视觉内容,而无需为特定客户端设备专门地配置机制/进程。

9、在一些实现方式中,提供了一种包括至少一个客户端计算设备的系统。客户端计算设备具有显示器并实现自动化助理的客户端部分。该系统还包括实现自动化助理的服务器部分的一个或多个服务器计算设备。用户与客户端部分交互以参与用户、自动化助理和第三方计算服务之间的人机对话会话。第三方计算服务依照语音对话状态机和视觉对话状态机与用户接洽。自动化助理的客户端部分被配置成通过自动化助理的服务器部分从第三方计算服务接收指示视觉对话状态机的第一视觉对话状态的数据。自动化助理的客户端部分被进一步配置成基于第一视觉对话状态在显示器上渲染与人机对话会话相关联的图形用户界面。该图形用户界面包括至少一个图形元素,该至少一个图形元素可操作来使口头状态机从与第一视觉对话状态相对应的第一口头对话状态转变到第二口头对话状态。自动化助理的客户端部分被进一步配置成检测用户对至少一个图形元素的操作。自动化助理的客户端部分被进一步配置成向自动化助理的服务器部分提供指示至少一个图形元素的操作的数据。自动化助理的服务器部分被配置成向第三方计算服务提供指示至少一个图形元素的操作的数据。指示至少一个图形元素的操作的数据使第三方计算服务从第一口头对话状态转变到第二口头对话状态。

10、本文公开的技术的这些和其它实现方式可以任选地包括以下特征中的一个或多个。

11、在一些实现方式中,自动化助理的服务器部分可以被进一步配置成从第三方计算服务接收指示第二口头对话状态的数据,并且向自动化助理的客户端部分提供指示第二口头对话状态的数据。在一些实现方式中,指示第二口头对话状态的数据可以包括文本或音频数据。在那些实现方式中的一些中,客户端设备可以被进一步配置成,响应于接收到指示第二口头对话状态的数据,将文本转换为语音并且可听见地渲染语音,或者可听见地渲染音频数据。

12、在一些实现方式中,将指示至少一个图形元素的操作的数据从自动化助理的服务器部分提供给第三方计算服务可以使第三方计算服务从第一视觉对话状态转变到第二视觉对话状态。在那些实现方式中的一些中,第二视觉对话状态可以对应于第二口头对话状态。在那些实现方式中的一些中,自动化助理的客户端部分可以被进一步配置成通过自动化助理的服务器部分从第三方计算服务接收指示第二视觉对话状态的数据,并且基于第二视觉对话状态在显示器上渲染与人机对话会话相关联的更新的图形用户界面。在那些实现方式中的一些中,指示第二视觉对话状态的数据可以使客户端设备自动地执行无接触交互以渲染所述更新的图形用户界面。在那些实现方式中的一些中,无接触交互可以包括以下各项中的一个或多个:操作图形用户界面的可选元素,滚动到在图形用户界面中渲染的文档的特定位置;以及放大图形用户界面的一部分。

13、在一些实现方式中,在第三方计算服务已从第一口头对话状态转变到第二口头对话状态之后,自动化助理的客户端部分可以被进一步配置成在客户端计算设备的一个或多个输入组件处从用户接收口头自由形式输入,向自动化助理的服务器部分提供指示口头自由形式输入的数据,并且从自动化助理的服务器部分接收指示显示上下文的数据。自动化助理的服务器部分可以基于给第三方计算服务提供指示有声自由形式输入的数据或者给第三方计算服务提供基于指示有声自由形式输入的数据的附加数据来从第三方计算服务获得指示显示上下文的数据。第三方计算服务可以基于所接收到的数据或附加数据并且基于转变到的第二口头对话状态来生成指示显示上下文的数据。自动化助理的客户端部分可以被进一步配置成基于所接收到的显示上下文在图形用户界面处触发无接触交互。

14、在一些实现方式中,无接触交互可以包括以下各项中的一个或多个:操作图形用户界面的可选元素;滚动到在图形用户界面中渲染的文档的特定位置;以及放大图形用户界面的一部分。

15、在一些实现方式中,提供了一种包括至少一个客户端计算设备和一个或多个服务器计算设备的系统。客户端计算设备具有显示器并实现自动化助理的客户端部分。该系统还包括实现自动化助理的服务器部分的一个或多个服务器计算设备。用户与客户端部分交互以参与用户、自动化助理和第三方计算服务之间的人机对话会话。自动化助理的客户端部分被配置成在客户端计算设备的显示器上渲染与人机对话会话相关联的图形用户界面。自动化助理的客户端部分被进一步配置成在客户端计算设备的一个或多个输入组件处从用户接收有声自由形式输入。自动化助理的客户端部分被进一步配置成向自动化助理的服务器部分提供指示有声自由形式输入的数据。自动化助理的客户端部分被进一步配置成从自动化助理的服务器部分接收指示显示上下文的数据。自动化助理的客户端部分被进一步配置成基于显示上下文触发用户与图形用户界面之间的无接触交互。自动化助理的服务器部分被配置成基于指示有声自由形式输入的数据确定用户的意图。自动化助理的服务器部分被进一步配置成向第三方计算服务提供指示意图的数据。指示意图的数据使第三方计算服务解析意图以生成解析信息。自动化助理的服务器部分被进一步配置成响应于指示意图的数据的提供而从第三方计算服务接收显示上下文。针对第三方计算服务与人机对话会话相关联地维护显示上下文,并且至少部分地基于用户的意图和解析信息中的一种或两种更新显示上下文。

16、本文公开的技术的这些和其它实现方式可以任选地包括以下特征中的一个或多个。

17、在一些实现方式中,图形用户界面可以包括嵌入到自动化助理的客户端部分中的web浏览器。在一些实现方式中,无接触交互可以包括以下各项中的一个或多个:操作图形用户界面的可选元素;滚动到在图形用户界面中渲染的文档的特定位置;以及放大图形用户界面的一部分。

18、在一些实现方式中,提供了一种由一个或多个处理器执行的方法,该方法包括:在具有显示器的客户端设备处实现自动化助理的客户端部分。该方法还包括:在一个或多个服务器计算设备处,实现自动化助理的服务器部分。用户与客户端部分交互以参与用户、自动化助理和第三方计算服务之间的人机对话会话。第三方计算服务依照口头对话状态机和视觉对话状态机与用户接洽。该方法还包括:在客户端部分处,通过自动化助理的服务器部分从第三方计算服务接收指示视觉对话状态机的第一视觉对话状态的数据。该方法还包括:由客户端部分基于第一视觉对话状态在显示器上渲染与人机对话会话相关联的图形用户界面。该图形用户界面包括至少一个图形元素,该至少一个图形元素可操作来使口头状态机从与第一视觉对话状态相对应的第一口头对话状态转变到第二口头对话状态。该方法还包括:由客户端部分检测用户对至少一个图形元素的操作。该方法还包括:由客户端部分向自动化助理的服务器部分提供指示至少一个图形元素的操作的数据。该方法还包括:由服务器部分向第三方计算服务提供指示至少一个图形元素的操作的数据。指示至少一个图形元素的操作的数据使第三方计算服务从第一口头对话状态转变到第二口头对话状态。

19、本文公开的技术的这些和其它实现方式可以任选地包括以下特征中的一个或多个。

20、在一些实现方式中,该方法还可以包括:由服务器部分从第三方计算服务接收指示第二口头对话状态的数据;以及由服务器部分向自动化助理的客户端部分提供指示第二口头对话状态的数据。在一些实现方式中,将指示至少一个图形元素的操作的数据从自动化助理的服务器部分提供给第三方计算服务可以使第三方计算服务从第一视觉对话状态转变到第二视觉对话状态。

21、在一些实现方式中,提供了一种由一个或多个处理器执行的方法,该方法包括:通过至少部分地由一个或多个处理器实现的计算服务从自动化助理接收指示与自动化助理通信的计算设备的用户的意图的数据作为用户与自动化助理之间的人机对话会话的一部分。该方法还包括:解析用户的意图以生成解析信息。该方法还包括:更新针对计算服务与人机对话会话相关联地维护的显示上下文。更新至少部分地基于意图和解析信息中的一种或两种。该方法还包括:向自动化助理提供指示显示上下文的数据。指示显示上下文的数据由自动化助理提供给计算设备并且使在计算设备上执行的助理应用触发用户与助理应用的图形用户界面之间的无接触交互。

22、本文公开的技术的这些和其它实现方式可以任选地包括以下特征中的一个或多个。

23、在一些实现方式中,图形用户界面可以包括嵌入在助理应用中的web浏览器。在一些实现方式中,无接触交互可以包括以下各项中的一个或多个:操作图形用户界面的可选元素;滚动到在图形用户界面中渲染的文档的特定位置;以及放大图形用户界面的一部分。在那些实现方式的一些中,指示用户的意图的数据可以包括由用户在计算设备处提供的有声自由形式输入的语音辨识输出。在一些实现方式中,该方法还可以包括:由计算服务基于语音辨识输出确定用户的意图。

24、其它实现方式可以包括一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质存储指令,这些指令可由一个或多个处理器(例如,中央处理器(cpu)、图形处理单元(gpu)和/或张量处理单元(tpu))执行以执行诸如在上面和/或在本文中别处描述的方法中的一种或多种的方法。仍然其它的实现方式可以包括一个或多个计算机的系统,这一个或多个计算机包括可操作来执行存储的指令以执行诸如在上面和/或在本文中别处描述的方法中的一种或多种的方法。

25、应该领会,在本文中更详细地描述的上述构思和附加构思的所有组合都被设想为是本文公开的主题的一部分。例如,在本公开的结尾处出现的要求保护的主题的所有组合都被设想为是本文公开的主题的一部分。


技术特征:

1.一种系统,包括:

2.根据权利要求1所述的系统,其中,所述图形用户界面包括嵌入到所述自动化助理的所述客户端部分中的web浏览器。

3.根据权利要求1或权利要求2所述的系统,其中,所述无接触交互包括以下各项中的一个或多个:

4.一种使用一个或多个处理器实现的方法,包括:

5.根据权利要求4所述的方法,其中,所述图形用户界面包括嵌入到所述助理应用中的web浏览器。

6.根据权利要求4所述的方法,其中,所述无接触交互包括以下各项中的一个或多个:

7.根据权利要求4至6中任一项所述的方法,其中,指示所述用户的所述意图的所述数据包括由所述用户在所述计算设备处提供的有声自由形式输入的语音辨识输出。

8.根据权利要求7所述的方法,进一步包括由所述计算服务基于所述语音辨识输出确定所述用户的所述意图。

9.一种使用一个或多个处理器实现的方法,包括:

10.根据权利要求9所述的方法,其中,所述图形用户界面包括嵌入到所述助理应用中的web浏览器。

11.根据权利要求9所述的方法,其中,所述无接触交互包括操作所述图形用户界面的可选元素。

12.根据权利要求9所述的方法,其中,所述无接触交互包括滚动到在所述图形用户界面中渲染的文档的特定位置。

13.根据权利要求9所述的方法,其中,所述无接触交互包括放大所述图形用户界面的一部分。

14.一种包括一个或多个处理器和存储指令的存储器的系统,所述指令响应于由所述一个或多个处理器对所述指令的执行,使所述一个或多个处理器:

15.根据权利要求14所述的系统,其中,所述图形用户界面包括嵌入到所述助理应用中的web浏览器。

16.根据权利要求14所述的系统,其中,所述无接触交互包括操作所述图形用户界面的可选元素。

17.根据权利要求14所述的系统,其中,所述无接触交互包括滚动到在所述图形用户界面中渲染的文档的特定位置。

18.根据权利要求14所述的系统,其中,所述无接触交互包括放大所述图形用户界面的一部分。

19.一种使用一个或多个处理器实现的方法,包括:

20.根据权利要求19所述的方法,其中,所述图形用户界面包括嵌入到所述助理应用中的web浏览器。

21.一种由一个或多个处理器实现的方法,包括:

22.根据权利要求21所述的方法,进一步包括由所述自动化助理从所述第三方计算服务接收指示所述第二口头对话状态的数据。

23.根据权利要求22所述的方法,进一步包括使由所述自动化助理在与所述处理器中的一个或多个处理器可操作耦合的扬声器处可听见地渲染指示所述第二口头对话状态的所述数据。

24.根据权利要求22所述的方法,其中,在所述第二口头对话状态中,所述图形用户界面已经聚焦在特定对象上。

25.根据权利要求24所述的方法,其中,在所述第二口头对话状态中,所述特定对象可由所述自动化助理用来消除后续口头对话的歧义。

26.根据权利要求21所述的方法,其中,从所述自动化助理向所述第三方计算服务提供指示所述至少一个图形元素的操作的所述数据使所述第三方计算服务从所述第一视觉对话状态转变到第二视觉对话状态。

27.根据权利要求26所述的方法,进一步包括由所述自动化助理从所述第三方计算服务接收指示所述第二视觉对话状态的数据。

28.根据权利要求27所述的方法,其中,指示所述第二视觉对话状态的所述数据包括可用于在所述显示器上渲染视觉内容的标记语言。

29.根据权利要求27所述的方法,其中,指示所述第二视觉对话状态的所述数据包括一个或多个命令,用于根据所述至少一个图形元素的所述操作与所述图形用户界面交互。

30.一种包括一个或多个处理器和存储指令的存储器的系统,所述指令响应于由所述一个或多个处理器的执行,使所述一个或多个处理器:

31.根据权利要求30所述的系统,进一步包括用于由所述自动化助理从所述第三方计算服务接收指示所述第二口头对话状态的数据的指令。

32.根据权利要求31所述的系统,进一步包括用于使由所述自动化助理在与所述处理器中的一个或多个处理器可操作耦合的扬声器处可听见地渲染指示所述第二口头对话状态的所述数据的指令。

33.根据权利要求31所述的系统,其中,在所述第二口头对话状态中,所述图形用户界面已经聚焦在特定对象上。

34.根据权利要求33所述的系统,其中,在所述第二口头对话状态中,所述特定对象可由所述自动化助理用来消除后续口头对话的歧义。

35.根据权利要求30所述的系统,其中,从所述自动化助理向所述第三方计算服务提供指示所述至少一个图形元素的操作的所述数据使所述第三方计算服务从所述第一视觉对话状态转变到第二视觉对话状态。

36.根据权利要求35所述的系统,进一步包括用于由所述自动化助理从所述第三方计算服务接收指示所述第二视觉对话状态的数据的指令。

37.根据权利要求36所述的系统,其中,指示所述第二视觉对话状态的所述数据包括可用于在所述显示器上渲染视觉内容的标记语言。

38.根据权利要求36所述的系统,其中,指示所述第二视觉对话状态的所述数据包括一个或多个命令,用于根据所述至少一个图形元素的所述操作与所述图形用户界面交互。

39.至少一种包括指令的非暂时性计算机可读介质,所述指令在由一个或多个处理器执行时,使所述一个或多个处理器:

40.根据权利要求39所述的至少一种非暂时性计算机可读介质,进一步包括用于由所述自动化助理从所述第三方计算服务接收指示所述第二口头对话状态的数据的指令。


技术总结
本文描述了用于用户、自动化助理和其它计算服务之间的多模态交互的技术。在各种实现方式中,用户可以与自动化助理接洽以便进一步与第三方计算服务接洽。在一些实现方式中,用户可以使用口头输入模态和除口头模态以外诸如视觉/触觉模态的输入模态两者来前进通过与第三方计算服务相关联的对话状态机。

技术研发人员:乌拉什·基拉兹吉,亚当·科英布拉,亚伯拉罕·李,董伟,特胡尚·阿马拉西里瓦德纳
受保护的技术使用者:谷歌有限责任公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-21272.html

最新回复(0)