背景技术:
1、人类可以与在本文中被称为“自动化助理”(也被称为“数字代理”、“聊天机器人”、“交互式个人助理”、“智能个人助理”、“助理应用”、“会话代理”等)的交互式软件应用进行人机对话。例如,人类(当他们与自动化助理交互时可以被称为“用户”)可以使用口头自然语言输入(即,话语)和/或通过提供文本(例如,键入的)自然语言输入来向自动化助理提供命令和/或请求,口头自然语言输入在一些情况下可以被转换为文本然后被处理。
2、在许多情况下,与自动化助理交互能够产生许多误解包括助理请求和/或命令的模糊用户输入的机会。例如,假设用户提供对可通过多个不同媒体应用可获得的媒体内容(例如,歌曲)的回放的请求。在该示例中,自动化助理可以提供输出(例如,听觉和/或视觉输出),该输出要求用户选择要用于媒体内容回放的特定应用,而不是自动化助理自动地选择特定应用并响应于该请求立即回放媒体内容。此外,还假设存在具有相同名称的多个媒体内容项,自动化助理可以提供要求用户选择具有相同名称的特定媒体内容项的附加或替代输出(例如,听觉和/或视觉输出),而不是自动化助理响应于请求选择特定媒体内容并使特定媒体内容在特定应用处回放。结果,自动化助理与用户之间的对话被延长,从而浪费了客户端设备处用于实现自动化助理与用户之间的对话的计算资源并浪费了用户的时间。
3、在一些情况下,甚至假设自动化助理确实自动地选择要用于回放媒体内容的特定应用和/或响应于该请求自动地选择特定媒体内容,通常没有有效的机制供用户转向到也可以响应于该请求的替代应用或替代媒体内容。例如,假设对回放媒体内容的请求是对回放标题为“crazy”的歌曲的请求,该歌曲可用于通过多个不同的媒体应用回放。进一步假设存在不同艺术家的标题为“crazy”的多首歌曲,至少包括第一艺术家和第二艺术家。在该示例中,如果用户意图使得回放第二艺术家的“crazy”,但是自动化助理自动地选择第一艺术家的“crazy”并自动地使其回放,则可能需要用户提供进一步的用户输入以取消回放第一艺术家的“crazy”,并提供甚至进一步的用户输入(通常细化为包括第二艺术家的姓名)以使第二艺术家的“crazy”被提供以用于回放。结果,自动化助理与用户之间的对话被延长,从而浪费了客户端设备处用于实现自动化助理与用户之间的对话的计算资源。
技术实现思路
1、本文阐述的一些实施方式涉及自动地初始化至少第一操作的执行以履行包括在由用户提供的口头话语中的助理命令的自动化助理。此外,在由自动化助理执行第一操作时,自动化助理同时使得提供与口头话语中包括的助理命令的替代履行相关联的对应替代操作的可选择元素以呈现给用户。因此,如果用户选择可选择元素,则自动化助理终止第一操作的执行,并自动初始化与口头话语中包括的助理命令的替代履行相关联的对应替代操作的执行。以本文描述的这些和其他方式,自动化助理能够被动地消除口头话语的歧义,使得当第一操作不对应于用户预期的特定操作时,用户不必随后重新提交口头话语或任何澄清的口头话语。换句话说,自动化助理能够初始化被预测为响应于口头话语的给定操作的执行,并且能够快速且有效地转向到也被认为响应于口头话语的替代操作。如本文所使用的,在由自动化助理执行第一操作的同时,自动化助理同时使得可选择元素被提供以呈现给用户能够包括:在由自动化助理自动地初始化第一操作的同时和/或在由自动化助理自动地初始化第一操作的时间之前和/或之后的阈值持续时间内,使得可选择元素被提供以呈现给用户。
2、在这些实施方式的一些版本中,能够基于口头话语来生成表征被预测为响应于口头话语的多个解释的助理输入数据。在这些实施方式中,多个解释中的每一个能够包括与对应意图相关联的对应的一个或多个对应参数,以及与对应意图相关联的用于一个或多个对应参数的一个或多个对应槽值。此外,能够基于助理输入数据生成表征多个解释中的每一个与包括在口头话语中的助理命令之间的预测的对应程度的度量数据。在一些实施方式中,度量数据能够包括例如与使用各种组件处理口头话语相关联的置信度水平,诸如与基于使用自动语音识别(asr)模型处理口头话语而生成的asr输出相关联的asr度量、与基于使用自然语言理解(nlu)模型处理asr输出而生成的nlu输出相关联的nlu度量、与基于使用履行模型和/或规则处理nlu输出而生成的履行输出相关联的履行度量,和/或与处理口头话语相关联的其他度量。在附加或替代实施方式中,度量数据能够基于提供口头话语的用户的用户简档数据、与提供口头话语的用户类似的其他用户的用户简档数据、跨特定地理区域的包括该请求的口头话语的聚合增加和/或其他数据。在那些实施方式的一些版本中,能够使用处理这些各种信号以生成度量数据的一个或多个机器学习模型和/或启发式过程来生成度量数据。基于助理输入数据和度量数据,自动化助理能够使得与多个解释中的第一解释相关联的第一操作被自动地初始化以履行包括在口头话语中的助理命令,并且能够使与多个解释中的其他解释相关联的可选择元素被提供以呈现给用户。
3、例如,假设用户提供“play the song'crazy'(播放歌曲“crazy”)”的口头话语。自动化助理能够使用各种组件(例如,asr组件、nlu组件、履行组件和/或其他组件)来处理口头话语,以生成表征多个解释的助理输入数据。在该示例中,基于响应于口头话语而确定回放标题为“crazy”的歌曲的用户意图,多个解释中的每个解释可以与音乐意图相关联。然而,在提供口头话语时,用户指定了与音乐意图相关联的歌曲参数(例如,“crazy”)的槽值,但是没有指定与音乐意图相关联的艺术家参数相关联的槽值、与音乐意图相关联的应用参数的槽值、或者可以与音乐意图相关联的任何其他参数的槽值。尽管如此,在生成表征被预测为响应于口头话语的多个解释的助理输入数据时,自动化助理能够推断各种槽值以生成多个解释。例如,第一解释能够包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”、以及用于应用参数的槽值“应用1”;第二解释能够包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家2”、以及用于应用参数的槽值“应用1”;第三解释能够包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”、以及用于应用参数的槽值“应用2”;等等。
4、尽管参考各自共享相同意图(例如,音乐意图)的多个解释描述了上述示例,但是应当理解到,这是为了示例的目的而不意味着限制。与上述示例相反,假设用户替代地提供了“play‘the floor is lava’(播放“the floor is lava”)”的口头话语。类似地,自动化助理能够使用各种组件(例如,asr组件、nlu组件、履行组件和/或其他组件)来处理口头话语,以生成表征多个解释的助理输入数据。然而,在该示例中,多个解释可以与不同的意图相关联。例如,第一解释能够包括音乐意图、用于歌曲参数的槽值“the floor is lava”、用于艺术家参数的槽值“艺术家1”、以及用于应用参数的槽值“应用1”;第二解释能够包括音乐意图、用于歌曲参数的槽值“the floor is lava”、用于艺术家参数的槽值“艺术家2”、以及用于应用参数的槽值“应用1”;第三解释能够包括电视节目意图、用于视频参数的槽值“the floor is lava”、以及用于应用参数的槽值“应用2”;第四解释能够包括游戏意图、用于游戏参数的槽值“the floor is lava”、以及用于应用参数的槽值“应用3”;等等。
5、此外,在这些示例中,自动化助理能够基于助理输入数据并且基于在处理口头话语时针对多个解释中的每一个生成的度量数据(例如,asr度量数据、nlu度量数据和/或履行度量数据)来自动地初始化与多个解释中的给定一个相关联的给定操作,以履行包括在口头话语中的助理命令。例如,在第一示例中,假设度量数据指示第一解释最可能对应于口头话语中的助理命令,则自动化助理能够自动地初始化与第一解释相关联的第一操作的执行,该第一解释包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”以及用于应用参数的槽值“应用1”。尽管如此,在该示例中,在第一操作被自动地初始化和执行时(例如,在“艺术家1”的“crazy”被“应用1”回放时),自动化助理能够使得与替代解释相关联的可选择元素被渲染以呈现给用户。例如,在由“应用1”回放“艺术家1”的“crazy”时,与第二解释相关联的对应可选择元素(例如,音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家2”、以及用于应用参数的槽值“应用1”)以及与第三解释相关联的对应可选择元素(例如,音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”、以及用于应用参数的槽值“应用2”)能够被渲染以呈现给用户。
6、因此,响应于用户选择对应的可选择元素中的一个(例如,经由指向对应可选择元素的触摸选择或对应可选择元素的语音选择),自动化助理能够转向离开执行第一操作,以自动地初始化和执行与替代操作相关联的替代操作,以履行口头话语中包括的助理命令。例如,响应于用户选择与第二解释相关联的对应可选择元素,自动化助理能够终止第一操作的执行(例如,在“应用1”处回放“艺术家1”的“crazy”),并且自动地初始化与第二解释相关联的第二操作的执行(例如,初始化在“应用1”处的“艺术家2”的“crazy”的回放)。结果,自动化助理能够在对口头话语的不同解释之间快速且有效地转向,而不必为用户生成和渲染提示以在使任何操作被初始化之前主动消除对口头话语的这些不同解释的歧义。相反,通过实现如本文所述的包括在口头话语中的助理命令的被动消歧,自动化助理能够优先减少履行包括在口头话语中的助理命令的延迟,并且能够优先以更快和更有效的方式结束自动化助理与用户之间的人机对话。
7、此外,尽管参考与控制媒体内容相关联的助理命令描述了上述示例,但是应当理解到,这是为了示例的目的而不意味着限制。例如,假设用户替代地提供了“translate thelight to 20percent(将灯转换为20%)”的口头话语。类似地,自动化助理能够使用各种组件(例如,asr组件、nlu组件、履行组件和/或其他组件)来处理口头话语,以生成表征多个解释的助理输入数据。在该示例中,假设用户意图口头话语使得经由自动化助理可控的一个或多个智能灯的亮度调暗到20%。然而,因为用户可能通常不使用该方言(vernacular)来调整他们的灯的亮度设置,所以口头话语的第一解释可能包括翻译意图,具有“灯到20%”的槽值作为要从主要语言翻译为一种或多种次要语言的术语或短语参数。尽管如此,口头话语的第二解释可能包括控制灯意图,具有用于亮度参数的槽值“20%”和用于灯位置参数的槽值“厨房”;口头话语的第三解释可以包括控制灯意图,具有用于亮度参数的槽值“20%”和用于灯位置参数的槽值“起居室”;等等。结果,自动化助理能够自动地初始化与多个解释中的给定一个相关联的给定操作,以履行包括在口头话语中的助理命令(例如,提供从主要语言到一种或多种辅助语言的“灯到20%”的翻译),而且还提供与口头话语的替代解释相关联的可选择元素,当被选择时,使得用户能够经由指向可选择元素的触摸选择或对可选择元素的语音选择来调节一个或多个智能灯。
8、在各种实施方式中,诸如当用户经由附加口头话语提供可选择元素的语音选择时,附加口头话语的处理能够偏向于与被渲染以呈现给用户的可选择元素相关联的内容。例如,并且如上所述,假设用户提供“play the song‘crazy’(播放歌曲“crazy”)”的口头话语。进一步假设自动化助理自动地初始化与第一解释相关联的第一操作的执行,该第一解释包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”、以及用于应用参数的槽值“应用1”。此外,进一步假设与第二解释相关联的对应可选择元素和与第三解释相关联的对应可选择元素被渲染以呈现给用户,其中,第二解释包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家2”以及用于应用参数的槽值“应用1”,并且第三解释包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”,以及用于应用参数的槽值“应用2”。在该示例中,附加口头话语的asr和/或nlu处理能够偏向与这些替代解释相关联的槽值,或者基于附加口头话语的处理生成的asr输出和/或nlu输出能够偏向与这些替代解释相关联的槽值。
9、在各种实施方式中,在自动化助理自动地初始化助理命令的执行以履行包括在口头话语中的助理命令之后,能够渲染与替代解释相关联的可选择元素以呈现给用户达阈值持续时间。在那些实施方式的一些版本中,阈值持续时间能够是静态的。例如,在自动化助理自动地初始化助理命令的执行以履行包括在口头话语中的助理命令之后,能够渲染与替代解释相关联的可选择元素以呈现达10秒、15秒或任何其他静态阈值持续时间。在那些实施方式的其他版本中,阈值持续时间能够是动态的,并且能够基于例如用于多个解释中的一个或多个的意图或将基于多个操作中的一个或多个要执行的操作类型中的一个或多个。例如,在多个操作与媒体内容相关联的实施方式中,与替代解释相关联的可选择元素可以仅被渲染以呈现给用户10秒。然而,在多个操作与控制用户的智能设备相关联的实施方式中,与替代解释相关联的可选择元素可以仅被渲染以呈现给用户30秒。
10、在各种实施方式中,与可选择元素相关联的替代操作的履行数据能够被预缓存在用户用来与自动化助理交互的客户端设备处,以减少执行替代操作的延迟。继续上述示例,在用户提供“play the song‘crazy’(播放歌曲“crazy”)”的口头话语,并且自动化助理自动地初始化与第一解释相关联的第一操作的执行的情况下,其中,该第一解释包括音乐意图、用于歌曲参数的槽值“crazy”、用于艺术家参数的槽值“艺术家1”以及用于应用参数的槽值“应用1”,自动化助理能够针对第二解释在“应用1”处排队“艺术家2”的“crazy”,并且能够针对第三解释在“应用2”处将“艺术家1”的“crazy”排队。换句话说,自动化助理能够在客户端设备的后台建立与各种应用的连接,对各种内容进行排队以在客户端设备处回放,对各种内容进行排队以在客户端设备处显示,和/或以其他方式在客户端设备处预缓存履行。
11、在各种实施方式中,被渲染以呈现给用户的可选择元素能够被包括在图形用户界面(gui)数据中,该gui数据表征响应于口头话语的助理gui。gui数据能够包括例如与控制由自动化助理自动地初始化的第一操作相关联的一个或多个控制元素、与替代操作相关联的可选择元素,和/或与如何和/或何时渲染内容以视觉呈现给用户相关联的任何其他数据。例如,gui数据能够包括突出性数据,其指示客户端设备的显示器的要用于显示与替代操作相关联的可选择元素的对应区域,以及客户端设备的显示器的要用于显示与替代操作相关联的可选择元素的对应区域的对应尺寸。继续上述示例,在用户提供“play the song‘crazy’(播放歌曲“crazy”)”的口头话语并且自动化助理自动地初始化与第一解释相关联的第一操作的执行的情况下,该第一解释包括音乐意图、用于歌曲参数的“crazy”的槽值、用于艺术家参数的“艺术家1”的槽值以及用于应用参数的“应用1”的槽值,该示例中的gui数据能够指示与第二解释相关联的可选择元素应当比与第三解释相关联的可选择元素更突出地显示,使得与第二解释相关联的可选择元素覆盖客户端设备的显示器的更大区域,与第二解释相关联的可选择元素显示在与第三解释相关联的可选择元素上方等等。在该示例中,gui数据能够基于与第二解释相关联的度量数据指示与第三解释相比第二解释更可能响应于口头话语,来指示与第二解释相关联的可选择元素应当比与第三解释相关联的可选择元素更突出地显示。此外,在该示例中,gui数据能够指示应当仅显示与第二解释相关联的可选择元素,而不显示与第三解释相关联的可选择元素。gui数据可以基于例如与第二解释相关联的度量数据满足度量阈值并且与第三解释相关联的度量数据不满足度量阈值、指示仅能够显示一个可选择元素的客户端设备的显示器的尺寸和/或其他标准,来指示应该仅显示与第二解释相关联的可选择元素而不显示与第三解释相关联的可选择元素。
12、在各种实施方式中,用户能够提供一个或多个输入以使得显示与附加解释相关联并且最初未被提供呈现给用户的附加可选择元素。例如,用户能够在特定方向上轻扫(例如,向上轻扫、向下轻扫、向左轻扫和/或向右轻扫)或在客户端设备的显示器处提供其他触摸输入(例如,长击、重击),以使得提供附加的可选择元素以呈现给用户。作为另一示例,用户能够提供包括一个或多个特定词或短语的附加口头话语,该一个或多个特定词或短语在被检测到时使得自动化助理提供附加可选择元素以呈现给用户(例如,“more(更多)”、“show me more(显示更多)”等)。
13、在各种实施方式中,在使自动化助理自动地初始化被预测为响应于口头话语的给定操作的执行时,自动化助理能够考虑与给定操作相关联的一个或多个成本。一个或多个成本能够包括例如与给定操作相关联的助理命令是否利用用户的金钱信息、与给定操作相关联的助理命令是否使得电子通信(例如,电话呼叫、文本消息、电子邮件消息、社交媒体消息等)被发起和/或从用户的客户端设备发送到附加用户的附加客户端设备、与给定操作相关联的助理命令是否消耗阈值数量的计算资源、与给定操作相关联的助理命令是否延迟其他过程、如果给定操作不准确,则与给定操作相关联的助理命令是否以某种方式影响用户或另一个人,和/或其他成本。例如,与执行利用金钱信息或使客户端设备发起和/或发送电子通信的操作相关联的成本可以被认为远大于与使媒体内容被提供以回放给用户相关联的成本。
14、通过使用本文描述的技术,能够实现各种技术优点。作为一个非限制性示例,本文描述的技术使得自动化助理能够被动地消除包括在由用户提供的口头话语中的助理命令的歧义。例如,用户能够提供包括请求的口头话语,并且自动化助理能够基于请求的第一解释自动地初始化被预测为响应于请求的助理命令的执行,同时提供也被预测为响应于请求并且与请求的其他解释相关联的可选择元素。因此,如果用户提供对可选择元素之一的用户选择,则自动化助理能够快速且有效地转向自动地初始化与其他解释相关联的助理命令的执行。值得注意的是,自动化助理不需要在初始化助理命令的执行之前生成和渲染提示。结果,能够减少履行请求的延迟,能够节省客户端设备处的计算资源,并且能够减少人机对话的持续时间。此外,能够在客户端设备处预缓存与这些其他解释相关联的履行数据,使得如果用户确实提供了对可选择元素之一的用户选择,则能够减少将性能切换到这些替代助理命令之一的延迟。
15、提供以上描述作为本公开的一些实施方式的概述。下面更详细地描述那些实施方式和其他实施方式的进一步描述。