掌桥专利:专业的专利平台
掌桥专利
首页

选择性地屏蔽将提供给辅助数字助理的查询内容

文献发布时间:2024-04-18 19:58:21


选择性地屏蔽将提供给辅助数字助理的查询内容

背景技术

人类可以与本文中称为“自动化助理”(也称为“数字代理”、“聊天机器人”、“交互式个人助理”、“智能个人助理”、“助理应用”、“会话代理”等)的交互式软件应用进行人机对话。例如,人类(其当他们与自动化助理交互时可以被称为“用户”)可以使用口语自然语言输入(即,话语)(在一些情况下该口语自然语言输入可以被转换为文本然后被处理),和/或,通过提供文本(例如,键入的)自然语言输入,来向自动化助理提供命令和/或请求。自动化助理通过提供响应式用户界面输出来响应于请求,该响应式用户界面输出可以包括听觉和/或视觉用户界面输出。

如上所述,许多自动化助理被配置为经由口头话语被交互,口头话语诸如调用指示后面跟着口头查询。为了保护用户隐私和/或节省资源,用户必须经常在自动化助理完全处理口头话语之前明确地调用自动化助理。自动化助理的显式调用通常响应于在客户端设备处接收到的某些用户界面输入而发生。客户端设备包括助理接口,其向客户端设备的用户提供用于与自动化助理对接的接口(例如,接收来自用户的口头和/或打字输入,并提供听觉和/或图形响应),以及与实现自动化助理的一个或多个附加组件(例如,处理用户输入并生成适当响应的远程服务器设备)对接。

可以经由客户端设备调用自动化助理的一些用户界面输入包括客户端设备处的用于调用自动化助理(例如,轻击硬件按钮、选择客户端设备显示的图形界面元素)的硬件和/或虚拟按钮。许多自动化助理可以附加地或替代地响应于一个或多个口头调用短语而被调用,该一个或多个口头调用短语也被称为“热词/短语”或“触发词/短语”。例如,可以说出诸如“Hey Assistant(嘿,助理)”、“OK Assistant(OK,助理)”和/或“Assistant(助理)”的口头调用短语来调用自动化助理。

通常,包括助理界面的客户端设备包括客户端设备用来监控口头调用短语的出现的一个或多个本地存储的模型。这样的客户端设备可以利用本地存储的模型来本地处理接收到的音频数据,并且丢弃不包括口头调用短语的任何音频数据。然而,当接收到的音频数据的本地处理指示口头调用短语的出现时,客户端设备然后将使得该音频数据和/或后续音频数据由自动化助理进一步处理。例如,如果口头调用短语是“Hey Assistant”,并且用户说“Hey,Assistant,what time is it(嘿,助理,现在是什么时间)”,则与“what time isit(现在是什么时间)”对应的音频数据可以由自动化助理基于检测到“Hey Assistant”来处理,并用于提供当前时间的自动化助理响应。另一方面,如果用户只是说出“what timeis it”(没有首先说出调用短语或提供备用调用输入),则因为“what time is it”前面没有调用短语(或其他调用输入),自动化助理将不会提供任何响应。

发明内容

本文描述的实施方式涉及基于与辅助自动化助理相关联的信任级别来确定与用户的口头话语相关的什么内容将提供给辅助自动化助理以供辅助自动化助理用于解析口头话语。在这些实施方式中,向用于给定的口头话语的给定的辅助自动化助理提供的内容将依据给定的辅助自动化助理的信任级别而变化。这可能导致第一内容(例如,包括捕获口头话语的音频数据)被提供给用于给定口头话语的第一辅助自动化助理,但不同的第二内容(例如,其混淆了音频数据的至少一部分,包括音频数据的混淆版本,省略原始内容的至少一部分)被提供给用于给定口头话语的同一实例(或另一实例)的第二辅助自动化助理。例如,第一内容可以包括捕捉口头话语的音频数据,而第二内容可以省略音频数据的至少一部分或者包括音频数据的混淆版本。例如,第二内容可以完全省略音频数据并且仅包括基于音频数据的语音识别结果(可选地删除或混淆某些术语)和/或基于语音识别结果的自然语言理解数据。作为另一个示例,第一内容可以包括来自口头话语的语音识别的所有术语,而第二内容可以省略或混淆一些术语。以这些和其他方式,可以通过依据辅助自动化助理的信任级别而改变向辅助自动化助理提供什么内容来维护可以在与口头话语相关的内容中直接或间接捕获的用户数据的安全性。

此外,在各种实施方式中,可以依据来自用户和/或其他用户与辅助自动化助理的交互的隐式和/或显式反馈随时间动态地调整信任级别。例如,保守的初始信任级别可以用于用户和用于具有用户与自动化助理的初始交互的辅助自动化助理,但依据用户在这些初始交互期间的反馈进行调整。以这些和其他方式,可以针对初始交互确保用户数据的安全性,同时还针对进一步的交互并且依据用户的反馈来维持用户数据的安全性。这可以使得能够依据用户的反馈向辅助自动化助理提供更丰富的内容以将其提供用于进一步的交互。更丰富的内容可以使得辅助自动化助理能够提供改进的和/或更稳健的响应和/或更有效地生成响应。以这些和其他方式,实施方式寻求平衡用户数据的安全性与辅助自动化助理的性能。

此外,在附加或替代实施方式中,对于给定的辅助自动化助理,信任级别可以依据口头话语的分类、口头话语的术语和/或口头话语的其他属性而变化。例如,给定的辅助自动化助理可以具有用于第一分类的第一信任级别和用于第二分类的不同的第二信任级别。附加地或替代地,对提供给辅助自动化助理的内容的选择性修改可以仅针对一些口头话语而发生,而对于其他口头话语则被绕过(例如,依据口头话语的分类、术语和/或其他属性)。在那些附加或替代实施方式中,这可以使得辅助自动化助理能够至少选择性地获得更丰富的内容,如上所述,这可以导致辅助自动化助理的性能提高。以这些和其他方式,这样的实施方式还寻求平衡用户数据的安全性与辅助自动化助理的性能。

本文公开的一些实施方式涉及向辅助自动化助理提供已处理查询,该已处理查询已被处理以基于与辅助助理相关联的信任级别来移除和/或屏蔽潜在敏感信息。例如,各种技术涉及由通用自动化助理接收导致通用自动化助理(本文中也称为“主要自动化助理”)被调用的调用,且随后经由所调用的通用自动化助理接收捕获用户的口头话语并由客户端设备的一个或多个麦克风生成的音频数据。可以选择与信任度量相关联的辅助自动化助理来处理查询。信任度量可以基于一个或多个用户(例如,用户和/或附加用户)与辅助自动化助理的实例的过去交互。音频数据可以由通用自动化设备基于信任级别进行处理,以生成已处理查询,这可以包括省略和/或混淆潜在的敏感信息,辅助自动化助理可能基于其当前的信任度量而未被授权访问这些信息。一旦生成了已处理查询,就可以将已处理查询提供给辅助自动化助理。

在一些实施方式中,用户可以说出调用短语,诸如“OK Assistant”,其调用自动化助理(本文中也称为“初始调用的自动化助理”),但不显式调用其他自动化助理,最初调用的自动化助理可以至少选择性地在处理与调用相关联(例如,紧接在之后、紧接在之前)接收到的口头查询时至少可以选择性地与该其他自动化助理进行交互。因此,用户可以基于提供特定于初始调用的自动化助理的调用输入来指定利用初始调用的自动化助理而不是单独调用其他自动化助理之一。例如,第一调用短语(例如,“OK Assistant A(OK,助理A)”)可以在被检测到时排他地调用第一自动化助理,而不调用任何其他自动化助理。同样,第二调用短语(例如,“OK Assistant B(OK,助理B)”)在被检测到时可以排他地调用第二自动化助理,而不调用最初调用的自动化助理和/或任何其他自动化助理。最初调用的助理在被调用时至少可以选择性地与其他自动化助理(即,“辅助助理”)交互来处理与调用相关联地提供的输入。

用户可以说出调用短语和/或否则执行一个或多个动作,诸如“OK Assistant”,其调用主要自动化助理,但不明确调用其他自动化助理,主要自动化助理可以在处理与调用短语相关联(例如,紧接在之后、紧接在之前)接收的查询时至少选择性地与该其他自动化助理进行交互。因此,用户可以基于提供特定于主要自动化助理的调用输入来指定利用主要自动化助理而不是单独地仅调用其他自动化助理之一。例如,第一调用短语(例如,“OKAssistant A”)可以在被检测到时排他地调用第一自动化助理,而不调用主要自动化助理和/或任何其他自动化助理。同样,第二调用短语(例如,“OK Assistant B”)在被检测到时可以排他地调用第二自动化助理,而不调用主要自动化助理和/或任何其他自动化助理。其他调用短语(例如,“OK Assistant”)在被检测到时可以调用主要助理。当被调用时,主要助理可以至少选择性地与第一自动化助理和/或第二自动化助理(即,“辅助助理”)交互以处理与调用相关联提供的输入。在一些实施方式中,主要助理可以是“元助理”或“通用自动化助理”,其可以总是与第一自动化助理和第二自动化助理中的一个或两个交互,并且其本身缺乏诸如语音识别、自然语言理解和/或履行能力之类的一个或多个自动化助理能力。

主要自动化助理可以选择辅助自动化助理来处理包括在捕获的音频数据中的口头查询。在一些实施方式中,通用自动化助理可以选择能够和/或否则被配置成生成对口头查询的响应的辅助自动化助理。例如,辅助自动化助理可以向通用自动化助理提供其能力,诸如给定辅助自动化助理可以与之通信的应用、辅助自动化助理能够响应的查询的分类和/或辅助自动化助理被授权访问的信息的类型。此外,例如,主要自动化助理可以基于用户的偏好(例如,用户明确指示利用特指自动化助理来处理特定类别的查询)、用户与辅助自动化助理中的一个或多个的历史交互、由辅助自动化助理提供的过去响应、和/或指示多个辅助自动化助理中的哪一个最有可能和/或最适合生成对给定查询的响应的其他信息来选择辅助自动化助理。

在一些实施方式中,一个或多个辅助自动化助理可以与指示已经与给定辅助自动化助理建立的信任的信任度量相关联。例如,辅助自动化助理可以源自受信任的源,并基于该源的信任(或缺乏其信任)被分配信任度量。此外,例如,信任度量可以基于确定辅助自动化助理先前提供的响应的相关性。此外,例如,信任度量可以基于用户与辅助自动化助理的先前交互,使得如果用户在一些情况下继续直接与给定自动化助理交互,则可以向辅助自动化助理分配反映用户基于持续交互已经指示的信任级别的信任度量。此外,例如,可以向辅助自动化助理提供信任度量和/或自动化助理在处置和/或需要潜在敏感信息方面的可信度的其他指示。在一些实施方式中,辅助自动化助理的信任度量可以特定于特指用户。在一些实施方式中,辅助自动化助理的信任度量可以指示更多用户群体对自动化助理的信任。

基于所选择的自动化助理的信任度量,可以处理在音频数据中捕获的原始口头话语以生成已处理查询,该已处理查询仅包括被授权用于具有相关联的信任度量的自动化助理的信息。处理口头话语可以包括例如移除说出口头话语的用户的识别信息、省略口头话语中包括的敏感信息、混淆音频数据和/或音频数据的文表示本中包括的一些信息、提供口头查询的意图而不提供音频数据、和/或可以屏蔽和/或否则阻止自动化助理访问特指信息的其他过程。

在一些实施方式中,处理原始音频数据可以包括生成口头查询的文本表示。例如,主要自动化助理可以接收口头查询并对音频数据执行STT处理以生成包括用户说出的信息的文本。在一些实施方式中,可以将文本表示提供给所选择的辅助自动化助理以用于进一步处理和/或辅助自动化助理可以利用音频数据的文本表示来生成已处理查询。在一些实施方式中,主要自动化助理可以基于音频数据和/或音频数据的文本表示来确定用户说出的查询的一部分是敏感的和/或自动化助理不需要的信息。例如,音频数据可以包括用户或一个或多个其他说话者的话语的一部分,其不是查询的一部分。此外,例如,音频数据可以包括信用卡号、地址、其他识别信息(例如,用户的姓名)、和/或可能不适合基于辅助自动化助理的信任度量提供给所选择的自动化助理的信息。当生成音频数据的文本表示时,在将文本表示提供给辅助自动化助理作为已处理查询之前,主要自动化助理可以移除这些部分。

在一些实施方式中,可以将音频数据直接提供给辅助自动化助理,其中,音频数据的一些部分被混淆和/或否则被使得无法被辅助自动化助理使用。例如,主要自动化助理可以过滤掉背景噪声、过滤在音频数据中捕获但不是来自用户的口头话语、和/或过滤包括所选辅助自动化助理未经授权被提供的敏感信息的音频。混淆音频数据可以包括例如将噪声插入到音频数据中以屏蔽敏感信息,去除音频数据的部分以生成已处理音频数据,和/或否则处理音频数据以防止辅助自动化助理对音频数据的敏感部分执行语音分析。此外,可以通过改变音频数据以屏蔽说话者的声音(诸如利用带宽滤波器、一个或多个经过训练的机器学习模型和/或其他过程来改变口头查询的韵律特征和/或音频数据的其他部分以生成已处理查询)来进一步混淆音频数据。

在一些实施方式中,主要自动化助理可以对音频数据(或音频数据的文本表示)执行自然语言理解并且仅提供查询的意图而不提供文本表示或原始音频数据。例如,用户可能会说出查询“OK Assistant,are there any restaurants with dinner reservationsnear my house?(OK,助理,我家附近有可以预订晚餐的餐厅吗?)”主要自动化助理可以确定用户打算进行晚餐预订,并进一步识别被配置为访问预订应用的辅助自动化助理。可以将意图提供给辅助自动化助理,但是主要自动化助理可以仅提供对于晚餐预订的请求和/或提供用户的概括位置(例如,用户的城市和州、用户的社区)而没有特定的地址,而不是提供用户的特定位置(例如,用户的地址)。

在一些实施方式中,主要自动化助理可以向多个辅助自动化助理提供查询。例如,主要自动化助理可以被配置为向第一自动化助理和第二自动化助理提供查询,每个自动化助理具有关联的信任度量。基于辅助自动化助理中的每个的信任度量,可以执行查询的不同处理以生成不同的已处理查询。

作为非限制性示例,对于高于阈值的信任级别(本文中称为具有“高”信任度量的自动化助理),主要自动化助理可以向辅助自动化助理提供完整的、未修改的音频数据,辅助自动化助理可以对该完整的、未修改的音频数据执行ASR和/或NLU。对于信任度量在高阈值和低阈值之间的自动化助理(本文称为“中等”信任度量自动化助理),主要自动化助理可以处理音频数据以删除、混淆和/或匿名化音频数据的一些敏感部分,同时仍然向辅助自动化助理提供音频数据。对于“低”信任度量自动化助理(例如,信任度量低于中等可信自动化助理),音频数据的文本表示(其可以是完整的,也可以省略、混淆和/或匿名化一些信息)可以被提供给辅助自动化助理。在辅助自动化助理的信任度量低于“低”阈值的情况下,可以根本不向辅助自动化助理提供已处理查询和/或可以阻止辅助自动化助理接收后续查询。例如,这可以包括卸载或禁用辅助自动化助理。通过阻止低于信任级别的自动化助理,主要自动化助理不会通过处理查询和/或向最终不会被用来提供响应的辅助自动化助理提供查询来消耗计算资源,从而节省用于处理可如本文所述使用的其他辅助自动化助理的音频数据的资源。

一旦包括口头查询的音频数据被处理,已处理查询就可以被提供给一个或多个辅助自动化助理。例如,主要自动化助理可以向三个辅助自动化助理提供已处理查询:具有高信任度量的一个,具有中等信任度量的一个,具有低信任度量的一个。对于具有高信任度量的辅助自动化助理,可以将口头查询作为音频提供,从而允许辅助自动化助理执行附加的处理(例如,ASR、NLU)。对于具有中等信任度量的辅助自动化助理,已处理查询可以是省略和/或否则混淆了一些部分的音频数据。对于具有低信任度量的辅助自动化助理,主要自动化助理可以对音频数据执行自动语音识别并提供文本表示,其可以是完整的文本表示,也可以删除和/或匿名化文本的一部分。

响应于提供已处理音频数据,辅助自动化助理中的每个可以提供对已处理查询的响应。在一些实施方式中,来自辅助自动化助理的响应可以由至少部分地执行辅助自动化助理的设备提供。在一些实施方式中,辅助自动化助理的响应可以被提供给主要自动化助理以用于进一步分析。例如,辅助自动化助理可以生成对已处理查询的响应并将该响应提供给主要自动化助理,主要自动化助理可以诸如经由界面和/或经由合成语音向用户提供响应。

在一些实施方式中,主要自动化助理可以基于与始发辅助自动化助理相关联的信任度量来确定是否向用户提供响应。附加地或替代地,主要自动化助理可以过滤辅助自动化助理的响应,以防止给定的辅助自动化助理提供辅助自动化助理在给定其信任度量的情况下未被授权提供的信息和/或请求辅助自动化助理在给定其信任度量的情况下未被授权请求的附加信息。作为示例,辅助自动化助理可以作为响应向用户请求附加信息,诸如进行购买和/或请求信用卡信息以完成购买的许可。然而,如果主要自动化助理确定辅助自动化助理的信任度量低于阈值,则主要自动化助理可以确定辅助自动化助理未被授权进行购买和/或被提供信用卡信息。作为响应,主要自动化助理可以阻止向用户提供辅助自动化助理的响应。

在一些实施方式中,主要自动化助理可以调整与辅助自动化助理相关联的信任度量。例如,辅助自动化助理可以生成对请求附加信息的查询的响应。一旦将响应提供给用户,用户可以选择不对该响应做出积极响应(例如,忽略响应、明确拒绝响应、提出后续问题)。作为响应,主要自动化助理可以降低提供请求附加信息的响应的辅助自动化助理的信任度量。因此,在随后的交互中,辅助自动化助理不太可能被允许向用户请求附加信息。

在一些实施方式中,主要自动化助理可以比较来自多个自动化助理的响应,并且基于响应之间的相似性来调整辅助自动化助理中的一个或多个的信任度量。例如,主要自动化助理可以接收三个响应,每个响应都来自辅助自动化助理。基于响应的内容,主要自动化助理可以确定第一和第二自动化助理提供了类似的响应。在这种情况下,可以调整第一辅助自动化助理和第二辅助自动化助理的信任度量中的一个或两个。对于第三辅助自动化助理,可以降低和/或否则调整信任度量以反映其响应与其他响应不相似。

在一些实施方式中,在具有高信任度量的辅助自动化助理的响应与具有较低信任度量的辅助自动化助理的响应相似的情况下,可以增加较低信任的自动化助理的值以反映其响应是类似于较高信任的辅助助理。在一些实施方式中,在来自辅助自动化助理的响应与较高信任的自动化助理的响应不相似的情况下,较低信任的辅助自动化助理的信任度量可以被调整到较低值以反映其响应可以不响应查询。例如,较低信任的辅助自动化助理可能是恶意自动化助理和/或可能否则向用户提供不正确的信息。

在一些实施方式中,主要自动化助理可以在辅助自动化助理请求附加信息的情况下确定所请求的附加信息是否与用户的查询相关。例如,用户可以请求自动化助理进行晚餐预订。作为响应,辅助自动化助理可以请求用户的社会安全号码。主要自动化助理可以确定社会安全号码对于晚餐预订请求来说不是必需的并且阻止提供响应。此外,主要自动化助理可以降低辅助自动化助理的信任度量和/或阻止辅助自动化助理提供未来的响应。相反,如果辅助自动化助理在响应中请求用户的电话号码,则主要自动化助理可以确定电话号码是进行晚餐预订可能需要的个人信息,并允许将响应提供给用户。此外,主要自动化助理可以基于响应于用户的请求的辅助自动化助理的响应来调整辅助自动化助理的信任度量。

在一些情况下,辅助自动化助理可能不提供对已处理查询的响应。在一些情况下,这可能是因为辅助助理未被配置为响应用户提供的查询类型。例如,查询可能是进行晚餐预订。未被配置为访问预订应用的辅助自动化助理可能不会提供响应和/或可能提供否定响应(例如,“I’m sorry,I can’t do that(对不起,我不能这样做)”)。在一些实施方式中,辅助自动化助理的信任度量可以被降低以反映其在预期响应时的不响应性。然而,在可能不需要特指自动化助理提供响应的情况下,可以不调整这些自动化助理的信任度量。这可以由主要自动化助理通过下述方式来促进:不是向辅助自动化助理分配单个信任度量,而是可以分配多个信任度量,每个信任度量反映不同的查询分类。因此,如果被配置为访问预订应用的辅助自动化助理没有响应,则其对于预订查询的信任级别可能会降低,而没有被配置为访问预订应用的辅助自动化助理可能不会受到预订查询的影响。

在一些实施方式中,辅助自动化助理可以向主要自动化助理提供模仿另一个辅助自动化助理的行为和/或响应的响应。例如,对于合成语音形式的响应,辅助自动化助理可以利用与不同自动化助理相似或相同的语音。这可能会无意地或恶意地发生,但在任一情况下,用户都可以向与预期的辅助自动化助理不同的辅助自动化助理提供信息。在这些情况下,主要自动化助理可以检测响应的自动化助理与另一个自动化助理之间的相似性,并阻止较低信任的辅助响应的响应被提供给用户。此外,例如,主要自动化助理可以对较低信任的辅助助理执行进一步处理,以更好地向用户告知附加请求的来源。例如,主要自动化助理可以包括请求来源的标识符、将语音合成改变为不同的语音、和/或包括与响应请求一起的其他信息以指示来源的辅助自动化助理。

在一些实施方式中,自动化助理的信任度量可以被存储为数值和/或信任级别(例如,高、中、低),并且可以向用户提供响应辅助自动化助理的信任度量的指示。例如,主要自动化助理可以使得经由界面显示数值,其反映对响应来源的信任。因此,用户可以指示响应是否适合所提供的查询。此外,在用户没有跟进响应或没有进一步与响应的自动化助理交互的情况下,主要自动化助理可以调整响应的自动化助理的信任度量以反映用户可能对来自该自动化助理的未来响应不感兴趣。

在一些实施方式中,辅助自动化助理的响应和信任度量可以在辅助自动化助理的多个实例上聚集。例如,第一用户可以以消极的方式与辅助自动化助理交互(例如,不响应、消极响应),并且第二用户的辅助自动化助理的实例的信任度量也可以被调整以反映第一用户的消极响应。此外,例如,第一主要自动化助理可以基于其响应来确定辅助自动化助理可能是恶意的,并且可以降低该恶意辅助自动化助理的所有实例的信任度量,使得其不接收后续查询,不允许向用户提供响应,和/或建议为恶意辅助自动化助理的所有用户卸载。

提供以上描述作为本公开的一些实施方式的概述。下面更详细地描述那些实施方式以及其他实施方式的进一步描述。

附图说明

图1是其中可以实现本文所公开的实施方式的示例环境的图示。

图2是其中可以实现本文所公开的各种方法的示例环境的框图。

图3A及图3B是其中可以实现本文所公开的各种方法的另一示例环境的框图。

图4是图示根据本文公开的各种实现方式的生成已处理查询的流程图。

图5是图示根据本文公开的各种实现方式的包括口头查询的音频数据以及处理音频数据以生成已处理查询的流程图。

图6是图示根据本文公开的各种实施方式的示例方法的流程图。

图7图示了计算设备的示例架构。

具体实施方式

参考图1,提供了包括可由用户101调用的多个自动化助理的示例环境。该环境包括具有麦克风(未示出)的第一独立交互式扬声器105和具有麦克风(也未示出)的第二独立交互式扬声器110。第一扬声器可以至少部分地执行可以用调用短语来调用的第一自动化助理。第二扬声器110可以执行可以用调用短语来调用的第二自动化助理,该调用短语可以是与第一自动化助理相同的调用短语,也可以是不同的短语,以允许用户基于说出的短语来选择来调用哪个自动化助理。在示例环境中,用户101正在第一扬声器105和第二扬声器110附近说出“OK Assistant,set an alarm(OK,助理,设置警报)”的口头话语115。如果第一和/或第二自动化助理之一被配置为当由短语“OK Assistant”调用,被调用的助理可以处理调用短语后面的查询(即,“set an alarm(设置警报)”)。

在一些实施方式中,调用可以包括来自用户的一个或多个非言语动作,其指示用户对调用特指自动化助理的兴趣。例如,用户可以按下设备上的按钮、在执行自动化助理的设备的相机存在的情况下做出手势、和/或可以由至少部分地执行自动化助理的客户端设备的一个或多个传感器识别的其他动作。在一些实施方式中,不同的手势和/或动作均可以是对不同的自动化助理的调用。例如,用户可以向正在执行自动化助理的设备的方向挥手以指示有兴趣调用第一自动化助理,并且用户可以按下设备上的按钮以指示有兴趣调用辅助自动化助理。

在一些实施方式中,诸如第一扬声器105的设备可以执行多个自动化助理。参考图2,图示了包括执行多个自动化助理的多个客户端设备的示例环境。系统包括执行第一自动化助理215和第二自动化助理220的第一客户端设备205。可以通过靠近客户端设备205说出调用短语(对每个助理来说是唯一的或者用于调用两个助理的相同的短语)来调用第一和第二自动化助理中的每个,使得音频可以由客户端设备205的麦克风225捕获。例如,用户101可以通过在客户端设备205附近说出“OK Assistant 1(OK,助理1)”来调用第一自动化助理215,并且进一步通过在客户端设备205附近说出短语“OK Assistant 2(OK,助理2)”来调用第二自动化助理220。基于说出哪个调用短语,用户可以指示用户有兴趣于正在第一客户端设备205上执行多个助理中的哪一个处理口头查询。示例环境还包括正在执行第三自动化助理245的第二客户端设备210。第三自动化助理245可以被配置为使用第三调用短语(诸如“OK Assistant 3(OK,助理3)”)来被调用,使得它可以由麦克风230捕获。在一些实施方式中,图2的自动化助理中的一个或多个自动化助理可能缺席。此外,示例环境可以包括图2中不存在的附加自动化助理。例如,系统可以包括执行附加的自动化助理的第三设备和/或客户端设备210和/或客户端设备205可以执行附加的自动化助理和/或比所示的更少的自动化助理。

自动化助理215、220和225中的每个可包括本文所描述的自动化助理的一个或多个组件。例如,自动化助理215可以包括其自己的用于处理传入查询的音频捕获组件、用于处理传入视觉数据的视觉捕获组件、热词检测引擎和/或其他组件。在一些实施方式中,在同一设备上执行的自动化助理(诸如自动化助理215和220)可以共享可由两个自动化助理使用的一个或多个组件。例如,自动化助理215和自动化助理220可以共享设备上语音识别器、设备上NLU引擎和/或其他组件中的一个或多个。

在一些实施方式中,自动化助理中的一个或多个可以由通用调用短语和/或动作(诸如“OK Assistant”)来调用,该通用调用短语不单独地独立调用任何其他自动化助理。当用户说出通用调用短语时,自动化助理中的一个或多个可以充当主要自动化助理并协调其他自动化助理之间的响应。参考图3A,图示了主要自动化助理305以及辅助自动化助理310、315和320。可以用短语“OK Assistant”或另一通用调用短语来调用主要自动化助理,这可以指示用户有兴趣向多个自动化助理提供查询。类似地,辅助自动化助理310和315可各自具有一个或多个替代调用短语,该一个或多个替代调用短语当由用户说出时,调用对应的自动化助理。例如,可以用调用短语“OK Assistant A”来调用辅助自动化助理310,并且可以用该调用短语“OK Assistant B”来调用辅助自动化助理315。在一些实施方式中,主要自动化助理305以及辅助自动化助理310和315中的一个或多个可以在同一客户端设备上执行,如关于第一自动化助理215和第二自动化助理220在图2中所示。在一些实施方式中,一个或多个辅助自动化助理可以在单独的设备上执行,如关于第三自动化助理245在图2中所示。

在一些实施方式中,主要自动化助理305可以是“元助理”,其可以总是与辅助自动化助理310和315中的一个或两个交互,并且本身可以缺乏一种或多种自动化助理能力,诸如语音识别、自然语言理解和/或履行能力。在其他情况下,主要自动化助理可以与辅助助理两者交互,同时还执行其自己的查询处理以确定对查询的响应。例如,如本文进一步描述的,主要自动化助理305可以包括查询处理引擎,或者主要自动化助理305可以不被配置为处理查询并向用户提供响应。

自动化助理305、310和315的其他组件是可选的,并且可以包括例如本地语音到文本(“STT”)引擎(其将捕获的音频转换为文本)、本地文本到语音(“TTS”)引擎(其将文本转换为语音)、本地自然语言处理器(其确定音频和/或从音频转换的文本的语义)和/或其他本地组件。由于执行自动化助理的客户端设备在计算资源(例如,处理器周期、存储器、电池等)方面可能相对受限,因此本地组件相对于与自动化助理相结合远程执行的任何基于云的自动化助理组件中所包括的任何对应组件可能具有有限的功能。

再次参考图2,在一些实施方式中,可以通过指示用户有兴趣与主要自动化助理交互的一个或多个姿势来调用自动化助理215、220和/或245中的一个或多个。例如,用户可以通过与设备交互(诸如按下按钮或触摸屏)来展示调用自动化助理的意图,执行可见的并且可以由图像捕获设备(诸如相机)捕获的移动,以及/或者可以注视设备,使得图像捕获设备可以识别用户移动和/或定位。当用户执行姿势或动作时,自动化助理可以被调用并开始捕获跟随该姿势或动作的音频数据,如上所述。

在一些实施方式中,一个自动化助理可以被选择作为主要助理,并且一个或多个其他自动化助理可以被指定为辅助助理。例如,用户可以说出对于该用户附近的多个自动化助理来说共同的调用短语。一个或多个组件可以确定正在执行自动化助理的多个设备中的哪一个最接近用户,并且最接近的自动化助理可以被指定为主要自动化助理,而其他自动化助理被指定为辅助助理。另外,例如,当用户调用自动化助理时,一个或多个组件可以确定用户最频繁地使用哪一个自动化助理,并且指定该自动化助理作为主要自动化助理。

在一些实施方式中,用户可以利用对于自动化助理唯一的调用来调用该特指自动化助理,并且该自动化助理可以被指定为主要自动化助理。例如,用户可以说出调用短语“OK Assistant 1”来调用第一助理215,然后第一助理215被指定为主要自动化助理。然后,诸如第二自动化助理220和第三自动化助理245的其他自动化助理可以由主要自动化助理调用,由主要自动化助理提供查询,和/或可以从其他自动化助理接收响应,如本文所述。

在一些实施方式中,一个或多个自动化助理,诸如第一自动化助理215和第二自动化助理220,可以共享一个或多个模块,诸如自然语言处理器和/或自然语言、TTS、和/或STT处理器的结果。例如,再次参考图2,第一自动化助理215和第二自动化助理220两者可以共享自然语言处理,使得当客户端设备205接收音频数据时,音频数据被处理一次成文本,然后该文本可以被提供给自动化助理215和220。而且,例如,客户端设备205中的一个或多个组件可以将音频数据处理成文本并将音频数据的文本表示提供给第三自动化助理245,如本文进一步描述的。在一些实施方式中,音频数据可以不被处理成文本,而是可以作为原始音频数据提供给自动化助理中的一个或多个。

参考图3B,图示了主要自动化助理305的组件。如前所述,主要自动化助理305可以包括除图3B中所示的组件之外的附加组件。附加地或替代地,主要自动化助理305中可以不存在一个或多个组件。例如,主要自动化助理305可以包括查询处理引擎并且既作为主要自动化助理又作为辅助自动化助理执行。

调用引擎335可操作来检测一个或多个口头调用短语,并且响应于检测到口头调用短语之一来调用主要自动化助理305。例如,调用引擎335可以响应于检测到诸如“HeyAssistant”、“OK Assistant”和/或“Assistant”之类的口头调用短语而调用主要自动化助理305。调用引擎335可以连续地处理(例如,如果不是处于“不活动”模式)基于来自执行主要自动化助理305的客户端设备的一个或多个麦克风的输出的音频数据帧流,以监控口头调用短语的出现。在监控口头调用短语的出现时,调用引擎335丢弃(例如,在临时存储在缓冲器中之后)不包括口头调用短语的任何音频数据帧。然而,当调用引擎335检测到在处理的音频数据帧中出现口头调用短语时,调用引擎335可以调用主要自动化助理305。

一旦主要自动化助理305已被调用,则主要自动化助理305可以接收用户的包括查询的口头话语。查询可以在调用主要自动化助理305之前、之后和/或同时提供。在一些实施方式中,可以利用STT组件将口头话语处理成文本表示。附加地或替代地,口头话语可以被处理以生成对口头话语中包括的查询的自然语言理解(例如,确定意图、查询的分类、一个或多个参数)。

在一些实施方式中,主要自动化助理305可以基于文本表示和/或自然语言理解输出来对查询进行分类。例如,对于“how tall is the president(总统有多高)”的查询,主要自动化助理305可以确定用户对问题的回答感兴趣,并且将该查询分类为“answers(回答)”查询。此外,例如,对于所提交的“make me a dinner reservation at 7pm(为我在晚上7点预订晚餐)”的查询,主要自动化助理305可以确定用户有兴趣进行晚餐预订并将该查询分类为“reservations(预订)”。可以基于例如查询的上下文、查询的一个或多个术语、和/或用户意图的其他指示来执行主要自动化助理的分类。

在一些实施方式中,主要自动化助理305可以识别能够处理从用户接收到的查询的一个或多个辅助自动化助理。在一些实施方式中,一个或多个辅助自动化助理可以向主要自动化助理305提供其可以处理的查询类型和/或它可以与之交互的应用的指示。例如,再次参考图3A,辅助自动化助理310可以被配置为与预订应用交互,并且可以向主要自动化助理305提供其能够处理“reservations”查询的指示。此外,例如,辅助自动化助理可以配置有查询处理引擎,该查询处理引擎可以处理一般信息查询并向主要自动化助理305提供其可以处理“answers”查询的指示。因此,主要自动化助理305可以仅向被配置为处置从用户接收到的查询的分类的那些辅助自动化助理提供查询。

如本文进一步描述的,主要自动化助理305可以向辅助助理310、315和/或320提供已处理查询,辅助助理310、315和/或320然后可以处理该查询以确定对该查询的响应。在一些实施方式中,主要自动化助理可以经由应用编程接口(API)355将查询作为音频数据提供给辅助自动化助理。在一些实施方式中,主要自动化助理305可以首先处理音频数据以生成文本,然后文本可以经由API 355提供给辅助自动化助理310。在一些实施方式中,主要自动化助理305可以经由扬声器提供查询的音频数据和/或文本转录。例如,主要自动化助理305可以生成人类听不见的超声信号,该超声信号可以由执行辅助自动化助理的设备的麦克风捕获。该信号可以是例如包括查询的音频数据的已处理版本(例如,处理到更高频率的原始音频数据和/或经由扬声器发送但人类听不见的音频数据的文本表示)。在一些实施方式中,查询的音频数据和/或文本表示可以在传输之前被编码,使得只有特指的辅助自动化助理能够对传输中包括的信息进行解码,从而允许主要自动化助理305选择性地将信息提供给仅预期的辅助自动化助理。

每个辅助自动化助理可以与一个或多个信任度量相关联,该一个或多个信任度量指示已经为该辅助自动化助理确定的信任级别。在一些实施方式中,辅助自动化助理可以与指示该辅助自动化助理的一般信任级别的单个信任度量相关联。在一些实施方式中,辅助自动化助理可以与多个信任度量相关联,该多个信任度量中的每个指示辅助自动化助理在接收特指类型的查询时的信任级别。例如,辅助自动化助理可以具有指示用于处理“answer”的信任级别的信任度量和指示用于处理“reservations”查询的信任级别的第二信任度量。

在一些实施方式中,辅助自动化助理的信任度量可以基于用户(或多个用户)与辅助自动化助理的过去交互。例如,参见图3A,用户可以比辅助自动化助理315更频繁地与辅助自动化助理310交互。作为响应,信任度量引擎335可以向辅助自动化助理310分配比分配给辅助自动化助理315的信任度量值更能指示信任的信任度量值。另外,例如,与辅助自动化助理310和320相比,用户可以更频繁地利用辅助自动化助理315来进行晚餐预订。作为响应,可以分配针对辅助自动化助理315的“reservations”查询的信任度量值,其比分配给其他辅助助理的“reservations”查询的信任度量值更能指示对“reservations”查询的辅助自动化助理315的信任。

作为另一示例,用户可能很少或从不与辅助自动化助理320交互。这可能是由于来自辅助自动化助理320的过去响应的质量和/或用户忘记了辅助自动化助理320已经被安装在设备上。作为响应,信任度量引擎340可以分配与用户更频繁地交互的其他辅助自动化助理相比较少指示信任的信任度量值。然而,在一些情况下,辅助自动化助理可能专门处置仅特定类型的查询。为了防止辅助自动化助理由于低信任度量值而被主要自动化助理305删除和/或忽略,可以由辅助自动化助理320处置的那些类型的查询的信任度量值可以不受缺乏用户与辅助自动化助理320的交互的影响。

在一些实施方式中,辅助自动化助理的信任度量可以基于用户与辅助自动化助理的实例的过去交互。例如,辅助自动化助理的第一实例可以由多个用户使用。可以基于所有用户与辅助自动化助理的交互来将信任度量值分配给辅助自动化助理。另外,例如,辅助自动化助理的第二实例可以由另一用户(或用户组)使用,并且可以基于辅助自动化助理的多个实例来分配全局分配给辅助自动化助理的信任度量值。因此,用户与辅助自动化助理的第一实例的交互可以影响分配给第二辅助自动化助理的信任度量值。

主要自动化助理305包括查询敏感度引擎345,其确定音频数据是否包括可能潜在敏感的信息。查询敏感度引擎345可以基于用户提供的查询的内容来确定音频数据是否包括个人可识别信息和/或用户可能有兴趣以阻止提供一个或多个辅助自动化助理的其他敏感信息。例如,口头查询可以包括出生日期、社会安全号码、地址、信用卡信息、日历约会和/或用户可能不希望提供给所有辅助自动化助理的其他信息。然而,在一些情况下,用户可能对将提供给一些辅助自动化助理的一些潜在敏感信息感兴趣,或者某些信息对于一些类型的查询可能是必需的,但对于其他类型的查询则不是必需的。因此,查询敏感度引擎345可以确定什么信息是敏感的,以防止向一些辅助自动化助理提供被认为潜在敏感的信息,同时允许向其他辅助自动化助理提供相同的信息。

再次参考图3A,基于辅助自动化助理310、315和320中的每个的信任度量,主要自动化助理305可以确定向辅助自动化助理中的每个提供什么信息。例如,辅助自动化助理310可以具有指示高信任的信任度量(例如,超过阈值的信任度量值),并且可以被提供比辅助自动化助理315更多的来自查询中的信息,辅助自动化助理315可以具有中等信任度量值(例如,低于“高”阈值并超过“低”阈值)。在这种情况下,可以为辅助自动化助理315提供比辅助自动化助理315更少的信息。此外,为了继续相同的示例,辅助自动化助理320可以具有低信任度量值(例如,低于“中等”阈值)),且如果信任值低于“低”阈值(例如,“不受信任”的辅助自动化助理),则辅助自动化助理320被提供更少的信息和/或根本不提供查询。

由查询敏感度引擎345识别的敏感信息可以被分配值,该值指示基于辅助自动化助理的信任度量可以向哪些辅助自动化助理提供特指的敏感信息。例如,音频数据和/或口头查询可以包括用户的社会安全号码,并且可以用指示只有“高”信任的辅助自动化助理接收用户的社会安全号码的敏感度值来分类该信息。此外,即使对于高度信任的辅助自动化助理,用户也可能只对为某些类型的查询(例如,预约医生)提供社会安全号码感兴趣,而不是对为其他类型的查询(例如,预订晚餐)提供社会安全号码感兴趣。另外,例如,口头查询可以包括用户的地址,并且可以为该地址分配敏感度值,该敏感度值指示具有至少中等信任值(例如,超过“中等”阈值的值)的辅助自动化助理被提供地址,但具有不满足或超过“中等”信任值的信任度量的辅助自动化助理可能被阻止接收用户的地址。

辅助自动化助理305还包括查询处理引擎360,其可以在将已处理查询提供给一个或多个辅助自动化助理之前将音频数据处理成已处理查询。在一些实施方式中,查询处理引擎360可以执行ASR、STT和/或NLU以生成包括在音频数据中的口头查询的文本表示和/或确定查询的意图。在一些实施方式中,查询处理可以在确定口头查询中包括的信息的敏感性之前发生。例如,查询处理引擎360可以生成口头查询的文本表示,并且查询敏感度引擎345可以利用该文本表示来确定查询是否包括敏感信息。另外,例如,查询处理引擎360可以生成NLU输出,该NLU输出可以被用来确定给定的已处理查询的分类。

参考图4,提供了图示本文描述的方法的流程图。如先前所描述的,调用引擎335接收调用主要自动化助理305的用户的口头话语405的音频数据。在一些实施方式中,口头话语包括调用406和查询407两者。在其他实施方式中,诸如当调用406是非口头调用时,音频数据405可以包括口头查询407和附加音频(例如,背景噪音、其他用户说话)而不包括调用。音频数据405被提供给查询敏感度引擎345,查询敏感度引擎345确定口头查询407是否包括敏感信息并进一步确定所识别的敏感信息的敏感度级别,如先前所描述的。然后,可以将查询和敏感信息提供给查询处理引擎360,以将查询处理成已处理查询,以提供给一个或多个辅助自动化助理。

一旦确定查询中包括的什么信息可以被提供给每个辅助自动化助理,查询处理引擎360就可以进一步处理该查询以防止信息的一些部分被提供给辅助自动化助理中的一个或多个。如前所述,辅助自动化助理可以具有不同的信任度量,由此,对于给定的口头查询,每个辅助自动化助理可以被允许访问一些信息,而其他辅助自动化助理可能不被允许访问相同的信息。例如,再次参考图4,查询处理引擎360可以生成第一已处理查询410以提供给辅助自动化助理310、生成第二已处理查询以提供给辅助自动化助理415、以及生成第三已处理查询420以提供给辅助自动化助理320。已处理查询中的每个可以包括口头查询407中所包括的一些信息,但查询的其他部分被省略和/或否则混淆。

在一些情况下,音频数据可能根本不被查询处理引擎360处理,并且音频数据和/或口头查询可以被完整地提供(例如,提供给具有超过阈值的信任度量值的辅助自动化助理)。例如,参见图5,提供了已处理查询的示例。查询407被提供给查询处理引擎360,查询处理引擎360可以确定将什么作为已处理查询提供给辅助自动化助理310、315和320中的每个。对于查询407,所提供的已处理查询410、415和420中的每个包括不同的信息。出于该示例的目的,辅助自动化助理310具有第一信任度量,辅助自动化助理315具有比辅助自动化助理310较少指示信任的第二信任度量,并且辅助自动化助理320具有比辅助自动化助理315较少指示信任的第二信任度量(例如,“高”、“中”和“低”信任度量)。如先前关于辅助自动化助理310所描述的,查询407被提供为已处理查询410,而没有排除和/或混淆任何信息。在这种情况下,处理可以包括省略背景噪声、省略不是口头查询的一部分的话语、调整口头查询相对于音频的其他部分的突出程度、对口头查询的说话者进行匿名化和/或不会影响包括查询407的口头话语的部分的其他处理。

在一些实施方式中,处理音频数据可以包括省略音频数据的一部分以生成已处理查询。例如,查询处理引擎360可以处理包括口头查询407的音频数据,使得音频数据的一部分被移除并且剩余部分被包括在音频数据中。辅助自动化助理315然后可以对已处理音频数据执行附加处理,诸如ASR、STT和/或NLU,并基于音频数据的剩余部分来生成响应。例如,在查询407的情况下,可以从音频数据和已处理查询“Make a dinner reservation aftermy appointment.My number is555-5555(在我的预约之后预订晚餐,我的号码是555-5555)”中省略包括“my doctor’s(我的医生)”的部分。作为另一个示例,用户可以包括对于查询类型来说不必要的信息。在这种情况下,可以从查询中省略不必要的信息,使得即使对于否则将授权辅助自动化助理拥有该信息的信任度量值,该信息也被省略(例如,“Make adinner reservation at Restaurant.My address is 123E.Main Street(在餐厅预订晚餐。我的地址是123E.Main Street)”,并省略包括用户地址的部分)。

在一些实施方式中,处理音频数据以生成已处理查询可以包括将附加音频引入到音频数据中以屏蔽音频数据的至少一部分。例如,已处理查询415包括听不见的部分,其屏蔽音频数据的包括用户的电话号码的部分。这可能是因为电话号码对于执行查询来说是不必要的和/或因为基于其信任度量值不允许辅助自动化助理访问用户的电话号码。听不见的部分可以是静音、白噪声、替代音频数据和/或除包括敏感信息的部分之外的其他可听音频。因此,当辅助自动化助理315对已处理查询执行ASR、STT和/或NLU时,它将不包括敏感信息。

在一些实施方式中,处理查询可以包括生成音频数据的文本表示。例如,已处理查询420包括查询的转录,而不包括包含该查询的实际音频数据。在一些实施方式中,处理查询还可以包括省略查询的文本表示的至少一部分。辅助自动化助理315然后可以对查询的文本表示执行NLU和/或其他处理以便生成响应。

在一些实施方式中,处理音频数据可以包括匿名化和/或概括查询中所包括的信息的至少一部分。例如,再次参考已处理查询415,查询处理引擎360已生成不包括用户预约医生的信息的已处理查询。相反,已处理查询在其位置包括“5点后(after 5o’clock)”。因此,基于其信任度量,不向辅助自动化助理315提供期望的晚餐预订时间的目的,而是提供足够的信息来进行晚餐预订(即,查询的必要部分),但不提供敏感信息(即预订晚餐时不必要的信息)。

一旦主要自动化助理305生成了一个或多个已处理查询,则可以将已处理查询提供给辅助自动化助理中的一个或多个。如图5所示,可以基于自动化助理的信任度量来向每个自动化助理提供不同的已处理查询。如前所述,可以经由API、超声波音频和/或其他通信协议来提供已处理查询。

响应于被提供已处理查询,辅助自动化助理中的每个可以处理接收到的查询并生成对该查询的响应。处理所提供的查询可以包括例如辅助自动化助理对查询执行ASR、STT和/或NLU并利用被配置为生成对查询的响应的查询处理引擎。另外,例如,辅助自动化助理可以向一个或多个第三方应用提供查询的至少一部分,以便生成响应(例如,向晚餐预订应用提供信息以进行晚餐预订)。该响应可以是由自动化助理经由TTS生成的音频响应和/或该响应可以是文本。在一些实施方式中,被提供已处理查询的辅助自动化助理中的一个或多个可能不提供响应。例如,如果辅助自动化助理未被授权执行该动作和/或未被配置为与晚餐预订应用交互,则其可能不会响应晚餐预订查询。此外,例如,辅助自动化助理可以被配置为仅接收信息而不响应查询。

在一些实施方式中,被提供了已处理查询的辅助自动化助理中的一个或多个可以向主要自动化助理提供生成的对查询的响应。例如,再次参考图4,响应分析引擎350可以从辅助自动化助理310、315和320接收响应510、515和520。在一些情况下,来自辅助自动化助理的响应可以包括行动已执行的回答和/或确认。例如,再次参考图5,响应510指示预订已经成功预订。

在一些实施方式中,辅助自动化助理可以不提供对已处理查询的响应。例如,辅助自动化助理可能不被配置为响应由主要自动化助理提供的查询分类和/或辅助自动化助理可能尚未确定合适的回答和/或无法执行所请求的动作。在这些情况下,辅助自动化可能根本不提供响应,或者可能提供表明它无法成功生成响应的响应(例如,“I’m sorry,I can’tperform that action(对不起,我无法执行该动作)”)。

在一些实施方式中,从辅助自动化助理接收的响应可以包括对附加信息的请求。例如,再次参考图5,由于所提供的查询不包括用户的电话号码,所以辅助自动化助理315提供了“Please provide your phone number(请提供您的电话号码)”的响应。在一些实施方式中,辅助自动化助理的后续查询可以是针对执行所请求的动作所需的并且辅助自动化助理具有授权访问的附加信息。在一些实施方式中,辅助自动化助理可以请求与所提供的查询无关和/或对于履行请求而言不必要的信息(例如,对于进行晚餐预订的请求的社会安全号码的请求)。

再次参考图3B,主要自动化助理305包括响应分析引擎360,其可以分析从辅助自动化助理接收到的响应。在一些实施方式中,主要自动化助理305可以确定来自辅助自动化助理的哪个响应最好地履行用户提供的查询。例如,再次参考图5,可以向主要自动化助理305提供响应510、515和520。如所示,响应510指示查询的成功履行,而响应515和520都是对附加信息的请求。在这种情况下,响应分析引擎360可以确定最佳响应是响应510并且将该响应提供给用户。在一些实施方式中,响应可以是针对:发起辅助自动化助理未被授权被提供的附加信息和/或不是为了履行请求(例如,进行晚餐预订的社会安全号码请求)而必要的附加信息。在该情况下,响应分析引擎360可以确定不向用户提供该响应。

在一些实施方式中,主要自动化助理305可以基于与提供响应的辅助自动化助理相关联的信任度量来确定对查询的响应是否被授权。例如,辅助自动化助理可以提供包括对附加信息的请求的响应。主要自动化助理305可以基于辅助自动化助理的信任度量来确定辅助自动化助理是否被授权接收所请求的信息。参考图5,辅助自动化助理315已提供包括对用户电话号码的请求的响应515。如果辅助自动化助理315的信任度量低于允许向其提供用户的电话号码的阈值,则响应分析引擎350可以在确定向用户提供什么响应时将该响应排除在进一步考虑之外。如所示,用户已经用包括用户的电话号码的响应525进行了响应。因此,在一些情况下,可以向辅助自动化助理提供信息,否则当用户已经明确提供该信息以便辅助自动化助理履行请求时,辅助自动化助理将无法访问该信息。

在一些实施方式中,信任度量引擎340可以基于响应分析引擎350的分析来调整与辅助自动化助理相关联的信任度量中的一个或多个。在一些实施方式中,当用户(或多个用户)与辅助自动化助理交互时,用户的一个或多个动作可以指示用户对使用辅助自动化助理的信任。例如,用户可能不频繁地与辅助自动化助理交互和/或可能根本不与辅助自动化助理交互。在这些情况下,可以调整辅助自动化助理的信任度量以指示该自动化助理较少受信任,从而限制辅助自动化助理对潜在敏感信息的访问。作为另一个示例,用户可以不响应(或否定地响应)辅助自动化助理的响应,并且辅助自动化助理的信任度量可以被调整为较少指示对于辅助自动化助理的信任的值,从而使得来自辅助自动化助理的响应不太可能被提供给用户,特别是如果响应包括对不允许辅助自动化助理访问的附加信息的请求。再次参考图5,辅助自动化助理320提供了“Please provide your home address(请提供您的家庭地址)”的响应,用户对此响应530“no(否)”。作为响应,信任度量引擎340可以基于用户对辅助自动化助理320的请求的否定响应来调整辅助自动化助理320的信任度量为较少地指示信任。

在一些实施方式中,辅助自动化助理的一个或多个动作可以指示适合于辅助自动化助理的信任(或缺乏信任)。例如,辅助自动化助理可以生成对附加信息的请求,该附加信息未被授权访问和/或对于从主要自动化助理接收到的查询来说是不必要的(例如,请求用于进行晚餐预订的社会安全号码)。辅助自动化助理的信任度量可以被调整到较少指示信任的水平,以进一步限制辅助自动化助理对用户信息的访问。此外,例如,第二助理可以生成一个或多个响应,其表明它无法处理包含潜在敏感信息的查询(例如,“I can’t helpwith that(我无法帮助解决这个)”),并且可以基于识别出自动化助理已被提供了潜在的敏感信息但没有利用敏感信息来执行预期的动作和/或提供预期的响应而调整信任度量(例如,基于重复失败的响应降低信任度量)。

在一些实施方式中,信任度量引擎340可以基于来自用户的响应的一个或多个其他属性来调整辅助自动化助理的信任度量。例如,信任度量引擎340可以基于用户响应于自动化助理的延迟来调整辅助自动化助理的信任度量(例如,较长的响应时间可以指示用户对于响应于对附加信息的请求的信任)。而且,例如,信任度量引擎340可以基于处理响应和/或处理对由自动化助理生成的附加信息的请求所需的计算资源来调整信任度量。

在一些实施方式中,信任度量引擎340可以基于一个响应与一个或多个其他响应的相似性来调整辅助自动化助理的信任度量。例如,响应分析引擎350可以确定来自具有第一信任度量的第一辅助自动化助理的响应与来自第二辅助自动化助理的响应在阈值相似度内(例如,为嵌入空间中的每个响应生成向量并比较向量),其中,第二信任度量低于第一信任度量。信任度量引擎340可以基于确定其响应与来自更信任的辅助自动化助理的响应相似来调整第二信任度量以更多地指示信任。

在一些实施方式中,响应度量引擎340可以基于确定辅助自动化助理正试图恶意地或无意地在不同的辅助自动化助理上建模其响应来调整辅助自动化助理的信任度量。例如,辅助自动化助理可以诸如使用相同的语音(包括除了提供响应的助理之外的第二自动化助理的指示)和/或其他可能导致用户对响应来源感到困惑的模仿行为生成模仿来自不同自动化助理的音频响应的音频响应。

在一些实施方式中,当辅助自动化助理的信任度量下降到阈值以下时,可以警告用户辅助自动化助理可能不可信任。附加地或替代地,可以停用和/或卸载辅助自动化助理以进一步限制对潜在敏感信息的访问。例如,辅助自动化助理可能不断地请求其未被授权被提供的附加信息和/或请求响应所提供的查询不需要的信息。当辅助自动化助理的信任度量降低时,信任度量可降至阈值信任水平以下,并且用户可被警告,辅助自动化助理可被停用,和/或辅助自动化助理可从用户设备卸载。

图6描绘了图示检测在用户查询中的敏感信息的示例方法600的流程图。为了方便起见,参考执行操作的系统来描述方法600的操作。方法600的该系统包括客户端设备的一个或多个处理器和/或其他组件。此外,虽然以特指顺序示出方法600的操作,但这并不意味着限制。可以重新排序、省略或添加一个或多个操作。

在步骤605,通用自动化助理接收调用。通用自动化助理可以是主要自动化助理,如本文所述。例如,通用自动化助理可以是被配置为通过诸如特指短语、用户的姿势和/或其他动作的调用来调用的主要自动化助理。通用自动化助理可以是不被配置为生成对查询的响应,而是被配置为向其他辅助自动化助理提供查询以进行进一步处理的自动化助理。在一些实施方式中,通用自动化助理可以与主要自动化助理305共享一个或多个特性。

在步骤610,通用自动化助理接收捕获用户的口头查询的音频数据。口头查询可以是对自动化助理执行一个或多个动作的请求。例如,口头查询可以包括对查询的回答、对辅助自动化助理与一个或多个其他应用进行交互、和/或可以由被配置为执行请求的动作的辅助自动化助理执行的一个或多个其他动作的请求。

在步骤615,识别辅助自动化助理的信任度量。辅助自动化助理的信任度量可以基于一个或多个用户与辅助自动化助理的实例的过去交互。例如,辅助自动化助理的信任度量可以基于一个或多个用户与辅助自动化助理的单个实例交互。此外,例如,辅助自动化助理的信任度量可以基于多个用户与辅助自动化助理的多个实例交互,每个辅助自动化助理的实例安装在不同的客户端设备上。

在步骤620,基于信任级别来处理音频数据以生成已处理查询。处理查询可以包括例如省略包括口头查询的音频数据的一部分、屏蔽口头查询的一部分、生成查询的文本表示、概括查询中的一个或多个术语,和/或可以混淆、屏蔽和/或省略在查询中包括的信息的至少一部分的其他动作。

在步骤625,将已处理查询提供给辅助自动化助理。已处理查询可以作为音频数据、作为口头查询的文本表示和/或作为NLU输出来提供。在一些实施方式中,通用自动化助理可以经由一个或多个API、经由通过执行通用自动化助理的设备的扬声器广播的可听信号、和/或经由其他通信协议来提供查询。在一些实施方式中,将已处理查询提供给多个辅助自动化助理进行处理。可以向多个自动化助理中的每一个提供不同版本的口头查询,每个基于接收辅助自动化助理的信任度量进行不同的处理。

图7是可以可选地用来执行本文描述的技术的一个或多个方面的示例计算设备710的框图。计算设备710通常包括至少一个处理器714,其经由总线子系统712与多个外围设备通信。这些外围设备可以包括存储子系统724(包括例如存储器子系统725和文件存储子系统726)、用户界面输出设备720、用户界面输入设备722和网络接口子系统716。输入和输出设备允许用户与计算设备710交互。网络接口子系统716提供到外部网络的接口并且耦合到其他计算设备中的对应的接口设备。

用户界面输入设备722可以包括键盘,诸如鼠标、轨迹球、触摸板或图形输入板的指示设备,扫描仪,并入显示器中的触摸屏,诸如语音识别系统、麦克风的音频输入设备,和/或其他类型的输入设备。一般而言,术语“输入设备”的使用旨在包括将信息输入到计算设备710或通信网络上的所有可能类型的设备和方式。

用户界面输出设备720可以包括显示子系统、打印机、传真机或非视觉显示器(诸如音频输出设备)。显示子系统可以包括阴极射线管(CRT)、诸如液晶显示器(LCD)的平板设备、投影设备或用于创建可见图像的一些其他机构。显示子系统还可以诸如经由音频输出设备提供非视觉显示。一般而言,术语“输出设备”的使用旨在包括将信息从计算设备710输出到用户或另一机器或计算设备的所有可能类型的设备和方式。

存储子系统724存储提供本文描述的一些或所有模块的功能的编程和数据构造。例如,存储子系统724可以包括用于执行图5和图6的方法的所选方面和/或实现图2和图3中描绘的各种组件的逻辑。

这些软件模块通常由处理器714单独执行或与其他处理器组合执行。存储子系统724中使用的存储器725可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(RAM)730和其中存储固定指令的只读存储器(ROM)732。文件存储子系统726可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、CD-ROM驱动器、光盘驱动器或可移动介质盒。实现某些实施方式的功能的模块可以由文件存储子系统726存储在存储子系统724中,或者存储在处理器714可访问的其他机器中。

总线子系统712提供用于使得计算设备710的各种组件和子系统按预期彼此通信的机制。尽管总线子系统712被示意性地示出为单个总线,但是总线子系统712的替代实施方式可以使用多个总线。

计算设备710可以是不同的类型,包括工作站、服务器、计算集群、刀片服务器、服务器场、或任何其他数据处理系统或计算设备。由于计算机和网络的不断变化的性质,对图7中描绘的计算设备710的描述仅旨在作为用于说明一些实施方式的目的的特定示例。计算设备710的许多其他配置可能具有比图7中描绘的计算设备更多或更少的组件。

在一些实施方式中,提供了一种由一个或多个处理器实现的方法,并且该方法包括:由通用自动化助理接收调用,其中,接收调用导致通用自动化助理被调用;经由通用自动化助理并且响应于被调用而接收捕获口头查询并且由客户端设备的一个或多个麦克风生成的音频数据;识别辅助自动化助理的信任度量,其中,信任度量基于一个或多个用户与辅助自动化助理的实例的过去交互;由通用自动化助理基于信任度量来处理音频数据以生成已处理查询;以及,将已处理查询提供给辅助自动化助理。

本文公开的技术的这些和其他实施方式可以包括以下特征中的一个或多个。

在一些实施方式中,方法还包括:识别附加辅助自动化助理的附加信任度量,其中,附加信任度量是基于一个或多个用户与附加辅助自动化助理的实例的过去交互;由通用自动化助理基于附加信任度量处理音频数据以生成附加已处理查询,其中,附加已处理查询不同于已处理查询;以及,将附加已处理查询提供给附加辅助自动化助理。在这些实施方式中的一些实施方式中,已处理查询包括音频数据的至少一部分,并且,附加已处理查询缺少任何音频数据,但包括基于音频数据生成的至少一些语音识别结果和/或基于至少一些语音识别结果生成的自然语言理解数据。在那些实施方式的其他实施方式中,已处理查询包括音频数据的给定部分,并且附加已处理查询缺少音频数据的给定部分或者包括音频数据的给定部分的混淆版本。

在一些实施方式中,基于附加信任度量来处理口头查询以生成附加已处理查询包括:基于附加信任度量来确定从已处理查询中省略一定特征;确定给定部分包括一定特征;以及,响应于确定给定部分包括一定特征,从附加已处理查询中去除音频数据的给定部分或者从附加已处理查询中混淆音频数据的给定部分。在那些实施方式中的一些中,确定给定部分包括一定特征包括确定给定部分包括敏感信息。

在一些实施方式中,已处理查询包括针对音频数据的一定部分的语音识别结果,并且,附加已处理查询缺少音频数据的一定部分的语音识别结果。

在一些实施方式中,基于信任度量处理音频数据包括:识别在口头查询中包括的敏感信息;以及,响应于信任度量未能满足阈值,方法还包括:从已处理查询中省略敏感信息。在那些实施方式中的一些实施方式中,处理音频数据包括:确定在口头查询中包括的敏感信息的类型,其中,阈值基于敏感信息的类型。在那些实施方式中的其他实施方式中,已处理查询包括音频数据的第一子集但省略音频数据的第二子集,其中,音频数据的第二子集包括敏感信息,并且其中,省略来自已处理查询的敏感信息包括省略音频数据的第二子集。在这些实施方式的又一个实施方式中,已处理查询包括音频数据的第一子集和音频数据的第二子集,其中,音频数据的第二子集包括敏感信息,并且其中,省略来自已处理查询的敏感信息包括混淆音频数据的第二子集。在那些实施方式中的一些实施方式中,混淆音频数据的第二子集包括:确定音频数据的第二子集的至少一部分的概括,其中,混淆音频数据的第二子集包括用概括替换音频数据的第二子集。

在一些实施方式中,处理音频数据包括使用自动语音识别来生成指示口头查询的文本。

在一些实施方式中,方法还包括:接收来自辅助自动化助理的响应;确定响应不履行说出口头查询的用户的意图;以及,响应于确定响应不履行用户的意图而阻止向说出口头查询的用户提供响应。

在一些实施方式中,方法还包括:接收来自辅助自动化助理的响应,其中,响应包括说出口头查询的用户提供附加信息的请求;基于信任度量来确定辅助自动化助理未被授权接收所请求的附加信息;以及,响应于确定辅助自动化助理未被授权接收所请求的附加信息:阻止向说出口头查询的用户提供响应。

在一些实施方式中,方法还包括:响应于向辅助自动化助理提供口头查询,接收对于附加信息的请求;向说出口头查询的用户提供请求;以及,响应于提供请求,识别对来自说出口头查询的用户的请求的后续响应;以及,基于后续响应来调整信任度量。

在一些实施方式中,提供了由一个或多个处理器实现的另一种方法,并且该方法包括:响应于检测到在客户端设备处发生助理调用事件:由通用自动化助理处理捕获用户的口头查询并且由客户端设备的一个或多个麦克风生成的音频数据;识别先前为辅助自动化助理生成的信任度量;确定辅助自动化助理的信任度量是否满足阈值。响应于确定信任度量满足阈值,方法还包括向辅助自动化助理提供基于音频数据的第一内容。响应于确定信任度量未能满足阈值,方法还包括:提供基于音频数据的第二内容,其中,第二内容不同于第一内容。

本文公开的技术的这些和其他实施方式可以包括以下特征中的一个或多个。

在一些实施方式中,第一内容包括音频数据的至少一部分,并且其中,第二内容省略或混淆音频数据的至少一部分。

在一些实施方式中,提供了由一个或多个处理器实现的另一种方法,并且方法包括:由通用自动化助理接收调用,其中,接收调用导致通用自动化助理被调用;经由所调用的通用自动化助理接收捕获口头查询并且由客户端设备的一个或多个麦克风生成的音频数据;确定口头查询的分类;识别用于辅助自动化助理和分类的信任度量,其中,信任度量特定于辅助自动化助理和分类并且基于一个或多个用户与辅助自动化助理并且用于分类的实例的过去交互;由通用自动化助理基于信任度量来处理口头查询以生成已处理查询;以及,将已处理查询提供给辅助自动化助理。

在本文讨论的某些实施方式可以收集或使用关于用户的个人信息(例如,从其他电子通信中提取的用户数据、关于用户的社交网络的信息、用户的位置、用户的时间、用户的生物特征信息,以及用户的活动和人口统计信息、用户之间的关系等)的情况下,为用户提供一次或多次机会以控制是否收集信息、是否存储个人信息、是否使用个人信息以及如何收集、存储和使用有关用户的信息。即,本文讨论的系统和方法仅在从相关用户接收到这样做的明确授权时才收集、存储和/或使用用户个人信息。

例如,向用户提供对程序或特征是否收集关于该特指用户或与该程序或特征相关的其他用户的用户信息的控制。向要收集其个人信息的每个用户提供一个或多个选项,以允许控制与该用户相关的信息收集、提供关于是否收集信息以及信息的哪些部分的许可或授权。被收集。例如,可以通过通信网络向用户提供一个或多个这样的控制选项。此外,某些数据在存储或使用之前可能会以一种或多种方式进行处理,以便删除个人身份信息。举一个例子,用户的身份可能会被处理,从而无法确定任何个人身份信息。作为另一个示例,用户的地理位置可能被推广到更大的区域,从而无法确定用户的特指位置。

虽然本文已经描述和图示了若干实施方式,但是可以利用用于执行功能和/或获得结果和/或本文描述的优点中的一个或多个的各种其他装置和/或结构,并且这些变化和/或修改中的每个被认为在本文描述的实施方式的范围内。更一般地,本文描述的所有参数、尺寸、材料和配置旨在是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用该教导的一个或多个特定应用。本领域技术人员将认识到或能够仅使用常规实验来确定本文描述的特定实施方式的许多等同物。因此,应当理解,前述实施方式仅以示例的方式呈现,并且在所附权利要求及其等同物的范围内,可以以不同于具体描述和要求保护的方式来实践实施方式。本公开的实施方式涉及本文描述的每个单独的特征、系统、物品、材料、套件和/或方法。另外,两个或更多个这样的特征、系统、物品、材料、套件和/或方法的任何组合,如果这样的特征、系统、物品、材料、套件和/或方法不相互不一致,则包括在本公开的范围内。

相关技术
  • 选择性地增强经压缩的数字内容
  • 选择性地允许移动中的用户装置利用与前方实体相关联数字内容的方法和系统
技术分类

06120116483391