利用沙盒化特征检测
过程来确保捕获
音频和/或其他传感器
数据的安全性
背景技术:
1.人类可以参与与本文中称为“自动化助理”(也称为“数字代理”、“交互式个人助理”、“智能个人助理”、“助理应用”、“会话代理”等)的交互式软件应用的人机对话。例如,人类(当他们与自动化助理交互时,可以被称为“用户”)可以使用口头自然语言输入(即,话语)向自动化助理提供命令和/或请求,在一些情况下,该命令和/或请求可以被转换为文本,并且然后通过提供文本的(例如键入的)自然语言输入和/或通过无触摸和/或无话语的物理移动(例如手势、眼睛注视、面部移动等)来被处理。自动化助理通过提供响应式用户接口输出(例如可听和/或视觉用户接口输出),控制一个或多个智能设备和/或控制实施自动化助理(例如控制设备的其他应用)的设备的一个或多个功能,来响应请求。
2.如上面提及的,许多自动化助理被配置为经由口头话语交互。为了保留用户隐私和/或保存资源,自动化助理避免基于经由(至少部分地)实施自动化助理的客户端设备的麦克风而被检测的音频数据中存在的所有口头话语来执行一个或多个自动化助理功能。相反,基于口头话语的某些处理仅是响应于确定存在特定条件而发生的。
3.例如,包括自动化助理和/或与自动化助理接口连接的许多客户端设备包括热词检测模型。当这样的客户端设备的麦克风未被停用时,客户端设备可以使用热词检测模型连续处理经由麦克风检测的音频数据,以生成预测输出,该预测输出指示是否存在一个或多个热词(包括多词短语),诸如“hey assistant(嘿助理)”、“ok assistant(好的助理)”和/或“assistant(助理)”。当预测输出指示存在热词时,在阈值时间量内遵循(并且可选地被确定为包括话音活动)的任何音频数据可以由诸如语音识别组件、话音活动检测组件等的一个或多个设备上和/或远程自动化助理组件来被处理。被预测包含热词的音频数据还可以由其他设备上和/或远程自动化助理组件处理。进一步地,(来自语音识别组件的)所识别的文本可以使用自然语言理解引擎来被处理和/或动作可以基于自然语言理解引擎输出来被执行。动作可以包括例如生成和提供响应和/或控制一个或多个应用和/或智能设备。其他热词(例如“no(否)”、“stop(停止)”、“cancel(取消)”、“volume up(提高音量)”、“volume down(降低音量)”、“next track(下一音轨)”、“previous track(前一音轨)”等)可以被映射到各种命令,并且当预测输出指示存在这些热词中的一个热词时,映射的命令可以由客户端设备处理。然而,当预测输出指示不存在热词时,对应的音频数据将在没有任何进一步处理的情况下被丢弃,从而保存资源和用户隐私。
4.用户可以在客户端设备上安装一个或多个自动化助理应用或者其他应用。当安装的应用包括热词检测能力并且对应的权利在安装期间被授予给该应用时,安装的应用将至少选择性地具有对经由客户端设备的麦克风捕获的音频数据的访问。这使得应用能够处理音频数据,以例如确定热词是否存在于音频数据中。然而,启用对应用的未检查的音频数据访问能够存在安全性漏洞,诸如其中没有热词被检测到的音频数据(或者从音频数据导出的数据)的泄漏。在应用由恶意实体控制的情况下,这些安全性漏洞能够被加剧。更一般地,通过可以在后台中和/或在许多(或所有)条件下操作时处理传感器数据(例如音频数据、图
像数据、地点数据和/或其他传感器数据)的应用,安全性漏洞能够存在。
技术实现要素:
5.本文公开的实施方式针对改进传感器数据(例如音频数据)的安全性,该传感器数据至少选择性地由安装在客户端设备上的应用的特征检测过程(例如热词检测过程和/或说话者核实过程)处理。
6.在那些实施方式中的一些实施方式中,特征检测过程在由客户端设备的操作系统控制的沙盒化环境——诸如操作系统中的隔离环境——中被执行。换句话说,操作系统控制由沙盒施加的约束,尽管特征检测过程本身可以由应用控制,该应用利用特征检测过程(例如特征检测过程是应用的一部分,并且可以与应用的其他非沙盒化过程协同操作)。
7.进一步地,操作系统控制传感器数据到沙盒化特征检测过程的提供,并且防止沙盒化特征检测过程流出(egressing)传感器数据。相反,响应于特征检测过程指示特征在传感器数据中被检测到,操作系统直接地(即,不经由沙盒化特征检测过程)将传感器数据(和/或其他传感器数据)提供给应用的非沙盒化交互器过程。作为一个示例,如果特征检测过程是热词检测过程并且指示热词在经由客户端设备的麦克风检测到的音频数据的分段中被检测到,则操作系统可以向非沙盒化交互器过程提供音频数据的分段以及音频数据的在该分段之前和/或之后的分段。通过防止沙盒化特征检测过程流出传感器数据并且代替地具有直接提供传感器数据的操作系统,安全性被改进。例如,沙盒化特征检测过程可以被防止流出在先传感器数据(或从其导出的数据),被提供给沙盒化特征检测过程,并且假借提供传感器数据,被确定为不包括特征。例如,它可以被防止对流出的传感器数据中的这样的在先传感器数据(或从其导出的数据)进行编码。
8.而且,在一些实施方式中,沙盒化特征检测过程可以被允许仅流出有限数量的数据,仅流出符合定义模式的数据,和/或仅当特征被检测到时流出数据。通过这些和其他方式,通过限制何时和/或哪些数据可以被流出、减轻例如在先传感器数据(和/或从其导出的数据)的流出机会,传感器数据的安全性被改进。如本文描述的,在各种实施方式中,当沙盒化特征检测过程指示它已检测到特征时,当它流出数据时,和/或当传感器数据被提供给交互器过程时,人类可感知的指示可以被渲染。例如,可感知指示可以是指示传感器数据类型的图形和/或可听启示(例如当传感器数据是音频数据时麦克风的图片)。可选地,可感知指示附加地或可替代地标识应用,或者可选择以揭示应用。通过这些和其他方式,用户可以通过可感知的指示确定对应的传感器数据正被应用访问,从而进一步确保传感器数据的安全性。
9.在各种实施方式中,附加和/或替代技术可以被使用以进一步减轻从沙盒化特征检测过程流出在先传感器数据(或从其导出的数据)的风险,该在先传感器数据被提供给沙盒化特征检测过程并且被确定为不包括特征。例如,操作系统可以使可能存储这样的数据的沙盒化特征检测过程的存储器以间隔被清除。例如,操作系统可以以间隔强制重启沙盒化特征检测过程和/或以间隔分岔沙盒化特征检测过程。
10.如上面暗指的,本文公开的一些实施方式针对基于音频数据中的热词的标识来改进由客户端设备捕获并且提供给组件(也称为“交互器过程”)的音频数据的安全性。热词检测过程在“沙盒”中操作,使得传感器数据从热词检测过程的流出被限制。一旦沙盒化热词
检测器已经确定热词的存在,将利用传感器数据的组件或应用就被提供数据。因此,音频数据或音频数据流无法由交互器过程直接访问,直到特定热词的检测已经发生。
11.通过对热词检测过程进行沙盒化,未授权的数据流出被减轻。热词检测过程接收用于分析的音频数据,并且然后发送热词被检测到的一个或多个指示。然而,热词检测过程被限制发送音频数据本身,并且代替向交互管理器指示一个或多个组件已被热词调用。然后,交互管理器允许交互器访问音频流。例如,热词检测过程可以接收可能包括热词的音频数据片段。在确认热词的存在之后,热词检测过程可以借助于沙盒被授权仅发送热词存在的指示(例如单个比特信号)。在一些实施方式中,热词检测过程可以被授权发送附加但有限的数据,诸如讲出热词的用户的指示、被讲出的热词和/或不特别包括音频数据的附加信息。通过将热词检测过程限制为流出有限字节数的信息,数据的未授权流出可以被进一步减轻。一旦热词的检测由热词检测过程检测到,话音交互管理器可以向交互器提供音频数据和可选地提供在音频数据之前和/或之后的音频数据。例如,交互器过程可以被提供热词被检测到的音频数据以及在这样的音频数据之后的音频数据流。交互器过程然后可以进一步处理接收到的音频数据,并且基于
所述接收到的音频数据来动作。交互器过程可以是非沙盒化的。例如,交互器过程可以在应用被安装时由用户授予的许可界限内操作,并且不会受到强加于沙盒化热词检测过程的约束程度的约束。
12.为了更好地改进安全性,热词检测过程能够被操作系统强制来以间隔清除其存储器。这可以确保由热词检测过程存储在存储器中的任何数据被限制为自上次清除存储器以来生成的数据。这可以防止恶意热词检测过程试图存储音频数据或从音频数据导出的数据,并且暗中流出这样的存储的数据。如上面提及的,为了减轻这样的存储数据的暗中流出,沙盒可以具有对何时、多少和/或哪些类型的数据可以被流出的限制。然而,强制热词检测过程清除其存储器可以附加地或可替代地减轻这样的存储数据的暗中流出。例如,强制清除存储器可以与对数据流出的限制结合使用,从而减轻热词检测过程试图将存储数据暗中编码为似乎是有效地流出的数据的机会。作为一个示例,操作系统的一个或多个组件可以以规则或不规则的间隔清除热词检测过程可访问的存储器,以限制对音频数据的访问。在一些实施方式中,这可以通过操作系统强制重启热词检测过程来实现。在一些附加的或可替代的实施方式中,这可以通过操作系统利用分岔来生成新的热词检测过程并且删减在先热词核实过程来实现,从而清除在先热词检测过程的任何存储器。分岔允许新过程针对热词检测过程来生成,而不需要附加的开销组件(例如库、配置信息)被重新加载到沙盒的存储器中。因此,与完全重启热词检测过程(这将需要重新加载开销组件)相比,分岔可以使能够以资源更有效的方式实现存储器的有效清除。然后,新的热词检测过程不具有对先前的热词检测过程可访问的音频数据,一旦替换被生成,则先前的热词检测过程可以被终止。
13.如上面也暗指的,在一些实施方式中,可能期望在音频数据正在被提供给应用时通知用户。这样的指示可以改进音频数据的安全性,因为当应用正在访问音频数据(以及可选地哪个应用正在访问该音频数据)时,用户可以被通知,使得用户能够标识和移除在不适当的时间访问音频数据的任何应用。然而,由于音频数据可以连续地(至少当某些场境条件被满足时)被提供给热词检测过程以使得能够监测热词的出现,所以渲染何时热词检测过程正在处理音频数据的指示将导致用户不断地被提供音频数据正在被处理的指示。例如,设备可以具有允许在应用正在访问音频数据时指示被显示给用户的图形界面。然而,当热
词检测过程正在处理音频数据时显示该指示将是不期望的,因为它将有效地使指示器无用(即,它将总是将麦克风示出为活动的),从而降低其在改进音频数据的安全性方面的有效性。因此,本文公开的实施方式向用户提供指示,即,音频数据仅在热词由沙盒化热词检测过程已经检测到之后被提供给应用和/或交互器过程,这导致操作系统向应用的非沙盒过程提供对应的音频数据。
14.因此,那些实施方式可以通过渲染线索来促进音频数据的安全性,以使用户能够意识到非沙盒过程何时正在被提供音频数据。而且,通过利用本文公开的沙盒化热词检测过程和相关技术,被提供给沙盒化热词检测过程的音频数据的安全性也可以被确保,同时防止当仅沙盒化热词检测过程正在被提供音频数据时需要渲染线索。同样,防止当仅沙盒化热词检测过程使得线索能够对用户有意义时需要渲染线索。
15.各种示例在本文中相对于使用沙盒化热词检测过程处理音频数据来描述。然而,本文公开的实施方式可以使用附加和/或可替代过程来处理音频数据。例如,说话者标识过程可以与热词检测过程一起在沙盒中操作。说话者标识过程可以处理由热词检测过程检测到的音频数据以包括热词,以执行文本依赖说话者标识(tdsid)。通过tdsid确定的已提供热词的用户账户的指示,如果有的话,可以可选地被提供为被允许流出沙盒的有限数据的一部分。
16.进一步地,本文公开的实施方式可以附加地和/或可替代地被用于沙盒化处理附加和/或可替代传感器数据的其他过程。例如,实施方式可能需要注视和/或手势检测过程来在沙盒过程中操作。注视和/或手势检测过程可以至少选择性地处理图像数据,以确定用户的注视和/或用户的手势是否旨在调用一个或多个组件。例如,应用(例如助理应用)可以响应于检测到被指引到客户端设备并且持续超过阈值持续时间的用户注视来被调用。当沙盒化检测过程确定特定的注视和/或手势已被检测到时,它可以向操作系统提供指示,并且作为响应,操作系统可以向应用的对应交互器过程提供图像数据、后续图像数据和/或音频数据。数据流出限制可以对沙盒施加,以防止由检测过程对图像数据(或从其导出的数据)的恶意流出。进一步地,当操作系统向交互器过程提供图像数据时,图像数据正在被处理的指示可以被渲染,但当图像数据正在仅被提供给安全沙盒化检测过程时,该指示不被提供。
17.作为另一示例,应用的地理围栏条目检测过程可以被强制在沙盒中操作。地理围栏条目检测过程可以至少选择性地处理gps和/或其他地点数据,以确定客户端设备是否已进入一个或多个地理围栏。当沙盒化地理围栏条目检测过程确定特定地理围栏已被进入时,它可以向操作系统提供指示,并且作为响应,操作系统可以向应用的对应交互器过程提供地点数据。数据流出限制可以对沙盒施加,以防止由检测过程对地点数据(或从其导出的数据)的不法流出。进一步地,当操作系统向交互器过程提供地点数据时,地点数据正在被处理的指示可以被渲染,但当地点数据正在仅被提供给安全地理围栏条目检测过程时,该指示不被提供。
18.以上描述仅被提供为本文公开的一些实施方式的概述。本技术的这些和其他实施方式在下面以附加细节公开。
19.应该了解,本文更详细地描述的前述概念和附加概念的所有组合被设想为本文公开的主题的一部分。例如,出现在本公开的结尾处的要求保护的主题的所有组合都被设想为本文公开的主题的一部分。
115进行的初始检测的数据流出受到约束(例如仅限于最初检测到的热词的指示)。
29.如上面引用的,热词检测过程125被包含在沙盒130内,以将热词检测过程125与操作系统105上操作的其他过程分离,并且约束数据流入热词检测过程125并且从热词检测过程125流出。例如,沙盒130可以将数据到热词检测过程125的流入限制为音频数据,并且可选地限制为有限的其他数据(例如由初始热词检测过程确定的置信度度量)。作为另一示例,沙盒130可以将数据的流出限制为在给定的流出实例处仅特定比特数量的流出,可以限制回归(regression)实例的频率,和/或可以要求流出实例符合特定的数据模式。热词检测过程125可以是在操作系统105上执行的应用170的一部分(例如由其控制),尽管热词检测过程125将由操作系统105所施加的沙盒130的限制所约束。应用170进一步包括交互器过程135,该交互器过程135基于输入传感器数据执行一个或多个任务,诸如接收音频数据并且基于音频数据中的热词的存在执行一个或多个任务。操作系统105进一步包括交互管理器120,该交互管理器120调节操作系统105的各种组件和应用170之间的传感器数据的流动。例如,交互管理器120可以向交互器过程135提供访问传感器数据的许可,和/或可以从热词检测过程125接收热词已从音频数据检测到的一个或多个指示。
30.在一些实施方式中,由操作系统控制的沙盒可以防止对沙盒内操作的过程的网络访问。例如,热词检测过程125可以被限制访问网络(例如限制访问客户端设备的网络接口),以进一步改进安全性并且进一步防止音频数据的流出。在一些实例中,交互器过程可以具有网络访问,并且可以在音频数据已被操作系统发送给交互器过程之后发送音频数据。在各种实施方式中,由操作系统控制的沙盒限制哪个或哪些操作系统功能性可用于在沙盒内操作的过程使用。例如,操作系统(例如交互管理器120)可以使在沙盒内操作的过程能够仅利用操作系统的某些应用编程接口(api)和/或仅利用api的某些方面,同时防止对其他api和/或api的其他方面的访问。在使过程能够仅利用api的某些方面时,代理api可以被使用(例如可以由交互管理器120实施),该代理api在过程和api之间进行接口连接,其中代理api是允许利用api的特定方面同时防止利用api的其他方面的中介。作为一个特定示例,操作系统可以使过程能够访问在操作系统内运行应用所需的基础api的所有或方面。作为另一特定示例,操作系统可以附加地或可替代地使过程能够访问以下的所有或方面:使得能够与交互管理器120交互的api、提供对麦克风音频数据的访问的api和/或使得能够将某些数据发布到其他沙盒化过程(例如可以利用某些数据以进行联合学习的沙盒化过程)的api。访问未被显式启用的api或api方面对于在沙盒内操作的过程能够是完全不可访问的。
31.客户端设备110包括用于捕获音频数据的麦克风140、用于捕获视频和/或图像的相机165以及gps组件160。这些组件中的每个组件都是用于捕获和提供传感器数据的传感器。在一些实施方式中,一个或多个组件可能缺失。在一些实施方式中,麦克风140可以包括多个麦克风的阵列,它可以包括近场和/或远场麦克风。在一些实施方式中,经由麦克风140捕获的音频数据被连续地提供给交互管理器120。客户端设备110进一步包括显示器145,它可以被用于向用户提供图形界面。在一些实施方式中,图形界面可以选择性地包括传感器数据正在由一个或多个应用利用的指示。例如,参照图2,提供了示例界面300。界面300可以包括当应用105正在被提供传感器数据时改变外观和/或出现的一个或多个图形元素。例如,当应用105的非沙盒化过程正在使用来自麦克风140的音频数据时,指示符305可以出现
和/或改变外观(例如不同的图像、改变颜、改变大小)。附加地,当应用170的非沙盒化过程正在访问来自相机165的图像数据时,指示符310可以出现和/或改变外观。在一些实施方式中,gps 160可以捕获地点数据,并且当应用105的非沙盒化过程访问地点数据时,一个或多个指示符可以出现。在一些实施方式中,当应用105的非沙盒化过程访问音频数据时,通知315可以被提供给用户,并且当应用105的非沙箱化过程正在访问视频和/或图像数据时,通知320可以被提供。要注意的是,通知315和320不仅指示对应的传感器数据正在被访问,而且指示对应的应用正在访问传感器数据。在一些实施方式中,通知315可以被提供以代替指示符305,并且通知320可以被提供以代替指示符310。在一些其他实施方式中,通知315可以响应于对指示符305的用户选择来被提供,并且通知320可以响应于对指示符310的用户选择来被提供。
32.参照图3,图示了图1所图示的组件之间能够发生的交互的示例。如所图示的,特征数据(例如音频数据、图像数据、地点数据)从客户端设备110的传感器180连续地流到操作系统105。当音频数据由操作系统105接收时,它被捕获(参见箭头#1)以用于附加分析。操作系统105可以将音频数据的一部分存储在一个或多个缓冲器150中,并且向dsp115提供音频数据的至少一部分和/或对缓冲器150的访问(参见箭头#2)。
33.数字信号处理器(dsp)115从交互管理器120接收音频数据,并且确定音频数据是否包括人类语音。dsp可以是总是活动的低功耗电路,或者当特定场境条件被满足(例如一天中的特定时间,当客户端设备110处于特定状态等)时总是活动的。dsp 115可以确定音频数据包括人类语音的似然性和/或音频数据包括热词的似然性。在语音可能被检测到的实例中(例如满足阈值的似然性分数),音频或音频的一部分可以被提供给热词检测过程125,用于进一步分析以确定检测到的语音是否包括热词。因此,初始热词检测过程可以有效地充当初始松散过滤器,使得沙盒化热词检测过程125不需要分析所有捕获的音频数据。然而,作为消耗最小资源的折衷,dsp 115可以减小音频数据的传入流的大小,使得dsp的分析不如热词检测过程125稳健。在一些实施方式中,诸如功耗不是考虑因素的实施方式中,dsp 115可能根本不存在,并且捕获的音频数据可以由交互管理器120直接提供给热词检测过程125。在一些实施方式中,除了利用dsp 115处理音频之外或者代替利用dsp115处理音频,音频数据的一部分还可以被提供给远程设备以用于附加分析,诸如利用更稳健的检测器来检测热词的存在。
34.在一些实施方式中,音频数据的至少一些部分被提供给dsp 115,以允许dsp 115检测音频数据中的可能语音(参见箭头#2)。由于例如音频数据和/或非旨在调用应用的语音的其他音频中所包括的背景噪声,由dsp 115进行的分析可以以高误报率触发(参见箭头#3)。进一步地,因为dsp 115是低功耗设备,所以音频通道可以被减小大小以允许更快的处理时间和最小化的资源消耗。在一些实施方式中,dsp 115可以使用一个或多个神经网络来确定音频数据包括人类语音的似然性。如果似然性度量满足阈值,则触发可以被提供给交互管理器120。
35.热词检测过程125利用一个或多个热词检测模型来确定一个或多个热词是否被包括在音频数据中。在一些实施方式中,热词检测过程125可以识别特定的热词以调用助理应用(例如“ok assistant”、“hey assistant”)或其他应用170。在一些情况下,热词检测过程125可以在不同的场境中(例如一天中的时间)或基于正在运行的应用(例如前台应用)识别
不同的热词集。例如,如果音乐应用当前正在播放音乐,则自动化助理可能会识别附加热词,诸如“pause music(暂停音乐)”、“volume up(提高音量)”和“volume down(降低音量)”。
36.尽管连续处理音频数据对于识别音频数据中的热词话语能够是必要的,但从一个或多个应用对音频数据的不想要的访问能够呈现安全性漏洞,诸如数据泄漏和窃听。另外,该访问能够导致数据隐私和信息安全性的降级,因为接近客户端设备110的人可能参与不旨在用于麦克风140的会话,这些会话被发送给操作系统105以用于交互器过程135。经由麦克风140获取的音频数据的连续访问可以作为交互器过程135的无意或有意配置的结果而发生,以泄漏用户不想要的音频数据。在任一情况下,应用170都能够容易受到安全性和隐私失效的损害。当继续访问经由麦克风获取的音频数据的应用配置由恶意实体进行时,这样的漏洞能够被加剧。因此,当应用正在访问传感器数据时向用户提供的通知和/或警报可以通过确保用户知道何时传感器数据正在被传输来改进安全性措施。
37.如先前描述的,经由客户端设备110上的显示器向用户提供的界面可以指示麦克风或其他传感器何时是活动的,并且经由图标或者其他视觉或音频指示向用户警报。例如,再次参照图2,当音频和/或视频数据正在由应用使用时,指示符305和310和/或通知315和320可以被显示。然而,在音频数据正在被用于检测热词但没有正在被应用处理的实例中,这是不实际的。例如,在音频数据正在被存储在缓冲器150中以供dsp 115和/或热词检测过程125进一步分析以用于检测热词的目的的实例中,音频数据被提供给应用的指示可以是恒定的。这是不期望的,因为基于麦克风开启的指示,用户将不知道哪个应用正在访问音频数据。这能够附加地或可替代地是不期望的,因为当dsp115和/或热词检测过程125正在处理音频数据时,音频数据被防止被传输到远程设备(例如由于热词检测过程125的沙盒化和对dsp 115的约束),并且用户可能对这样的仅本地的处理没有安全性担忧。进一步地,dsp 115经常对非语音音频数据进行触发,导致显著数量的误报触发,这将在音频数据没有正在被发送给交互器过程135的显著量的时间内使麦克风指示为“开启”。因此,优选的是,指示仅在热词已经被检测到并且缓冲的音频数据和/或对来自麦克风140的音频流的访问已经由交互器过程135被提供给代理应用时才被提供。
38.为了避免音频数据在未授权的情况下被提供给应用,热词检测过程125被包含在安全沙盒130内。沙盒130规定哪些数据被提供给应用的交互器过程,从而缓解与应用在用户不知情的情况下窃听或泄漏音频数据相关的安全性担忧。因此,热词检测过程125可以在它流出到交互器过程135的信息方面受到限制。例如,热词检测过程125可以接收在缓冲器150中存储的音频数据的一部分,以确定热词是否存在于音频数据中。如果热词检测过程125确定存在热词,则热词的指示可以被提供给交互管理器120,指示一个或多个应用已经由用户经由热词调用。一旦交互器过程135已被提供音频数据,则界面可以被更新以提供音频数据正在被访问的指示。因此,在没有不断活动或者比音频数据正在由操作系统105以外的应用使用时更活动的“麦克风在使用中”的指示的缺点的情况下,用户被警报应用正在使用音频数据。
39.一旦可能的人类语音已被检测到,触发(箭头#4)就被发送给热词检测过程125,以指示人类语音由dsp 115在音频数据中以阈值似然性被检测到。音频数据的至少一部分(例如在缓冲器中存储的音频数据的部分)可以被提供触发(或代替触发)。热词检测过程125
(它被沙盒化以限制数据的流出)确定音频数据是否包括热词。如果热词被检测到,则热词检测过程125向交互管理器120提供热词的确认(箭头#5)。在一些实施方式中,数据的流出可能仅包括热词已被检测到的指示(即,“是/否”)。在一些实施方式中,热词检测过程125可以向交互管理器120提供附加信息,诸如关于讲出热词的用户的信息。在一些实施方式中,热词检测过程125可以基于一个或多个其他条件来提供存在热词的确认,诸如仅当特定应用正在被访问时或在一天中的特定时间。在一些实施方式中,当热词被检测到时,热词检测过程125可以总是发送确认,并且交互管理器120或另一组件可以确定一些其他条件是否已被满足。
40.作为示例,操作系统105可以记录由麦克风140捕获的音频数据的小片段,该小片段被存储在缓冲器150中。dsp 115可以分析音频数据,并且确定音频数据包括具有阈值似然性的人类语音。交互管理器120然后可以将记录的音频数据提供给热词检测过程125,该热词检测过程125被包含在沙盒130内。基于音频数据,热词检测过程125可以确定音频数据包括热词“ok assistant”。因为热词检测过程125被沙盒化130,它无法直接将音频数据提供给可以被配置为进一步处理音频数据的交互器过程135。相反,热词检测过程125可以向交互管理器120发送热词已由用户讲出的指示。交互管理器120然后可以允许访问该应用170的交互器过程135。一旦交互器过程已被提供对音频数据的访问,则麦克风140处理音频数据的指示可以经由显示器145被提供给用户,如本文描述的。
41.在一些实施方式中,热词检测过程125可以向交互管理器120和/或直接向交互器过程135提供关于热词话语的附加信息。这可以包括例如关于讲出关键词的用户的信息。在一些实施方式中,信息的流出可以被限制为特定字节数的信息。因此,热词检测过程125不被(沙盒130)允许提供足够的数据以有效地传输任何音频数据。例如,热词检测过程125可以提供小于或等于大小阈值——诸如小于10字节——的指示。这样的限制允许热词检测过程125提供例如热词的说话者的指示,同时没有足够的消息空间来发送有意义的音频数据。
42.在一些实施方式中,沙盒130可以将来自热词检测过程125的输出限制为特定格式或数据模式,使得它被约束为特定类型的数据。在一些实施方式中,由热词检测过程125提供的任何指示可以被加密,以更好地确保其他应用和/或组件可能不会暗中拦截热词检测过程125和交互管理器120之间的通信。指示可以包括例如指示关键词被讲出的标志、讲出的关键词的指示、与讲出热词的用户相关联的用户信息和/或热词已被检测到的其他指示。
43.一旦热词检测过程125已经确定热词已在音频数据中被讲出,并且已经进一步向交互管理器120提供了指示,如上所述,则操作系统105可以被提供音频数据可以被记录和/或被提供给一个或多个组件的确认。再次参照图3,确认(箭头#6)可以包括授权操作系统105开始记录附加音频数据(箭头#7)和/或将已经存储的音频数据发送给交互器过程135以执行附加分析。如所图示的,热词检测过程125不直接提供音频数据,而代替地音频数据经由交互管理器120被提供给交互器过程135。
44.在一些实施方式中,交互器过程135可以仅被提供已被捕获的音频数据。在一些实施方式中,交互器过程135可以仅被提供在讲出热词之后捕获的音频数据。例如,音频数据可以包括用户说出与调用热词检测过程无关的内容,热词检测过程125确定该内容不是热词。一旦热词(例如“ok assistant”)在音频数据中被标识,则交互器过程135可以被提供已被存储并且在热词之后出现的音频数据,和/或被提供已从麦克风140捕获的附加音频。在
一些实施方式中,交互者过程135可以被提供在热词讲出之前出现的附加音频数据。作为一个示例,
45.作为示例,用户可以讲出短语“ok assistant,turn on the lights(好的助理,打开灯)”。交互管理器120可以接收全部或部分音频数据,并且可选地发送给dsp 115,以确定音频数据是否包括人类语音。一旦语音以阈值似然性被检测到,则音频数据和/或音频数据的一部分可以被提供给热词检测过程125。热词检测过程然后可以确定“ok assistant”是热词,并且向交互管理器120发送该术语被包括在内的指示。交互管理器120然后可以提供对音频数据和/或附加音频数据的访问以用于进一步处理,诸如执行语音识别。
46.在一些实施方式中,仅在一个或多个附加条件已被满足的实例中,交互器过程135可以被提供对音频数据的访问。例如,热词检测过程可以确定“volume up”的热词在音频数据中被讲出,并且向交互管理器120发送指示。然后,交互管理器120可以确定作为热词的目标的应用(例如音乐应用)在授予应用对音频流的访问之前当前是否是活动的。在一些实施方式中,允许访问音频数据的条件可以以例如捕获音频数据的设备、音频数据被捕获的地点、音频数据被捕获的时间和/或讲出热词的用户的标识为条件。
47.在一些实施方式中,为了通过限制热词检测过程125导出不旨在用于交互器的信息的能力来进一步增加安全性措施,热词检测过程125和/或交互管理器120的一个或多个组件可以清除热词检测过程125的存储器,以确保它具有立即必要的尽可能少的信息。在一些实施方式中,交互管理器120可以具有控制热词检测过程125的过程调度器155。过程调度器155可以以间隔生成新的热词检测过程130。这可以经由分岔来实现,由此新的核实服务被生成,同时由核实服务使用的附加库保留在存储器中。这样的过程减少了创建新的核实服务所需的开销。一旦新服务已被创建,原始热词检测过程125正在执行的过程就可以被终止。因此,新服务不具有对原始热词检测过程125可访问的任何先前信息的访问。
48.在一些实施方式中,由热词检测过程125流出的指示和/或其他数据可以被存储,以用于进一步核实这样的数据不包括沙盒允许的更多信息(例如以确保音频数据的安全性)。例如,当热词检测过程流出数据时,流出数据的内容以及指示数据何时被流出的对应时间戳可以被本地存储在客户端设备的条目中。这些条目稍后可以由一个或多个安全性组件或人员审查,以进一步确保沙盒在适当位置并且不允许诸如音频数据的附加信息流出。例如,条目可以从客户端设备被安全地传输到远程服务器,以供安全专家审查。
49.图4描绘了流程图,它图示了用于处理音频数据以标识热词的示例方法400。为了便利起见,方法300的操作参照执行操作的系统描述,诸如图1和图2所图示的系统。方法300的该系统包括一个或多个处理器和/或客户端设备的其他组件。而且,虽然方法400的操作按照特定次序示出,但是这并不意味着限制。一个或多个操作可以被重新排序、省略或者添加。如本文描述的,操作系统105可以经由设备的一个或多个处理器执行,诸如客户端设备110和/或一个或多个基于云的计算机系统。
50.在步骤405中,捕获的音频数据被提供给沙盒化特征检测过程。特征检测过程可以与热词检测过程125共享一个或多个特点。在一些实施方式中,仅捕获的音频数据的一部分被提供给特征检测过程。例如,特征检测过程可以接收特定大小或持续时间的音频数据。在一些实施方式中,dsp 115可以首先处理音频数据,以确定音频数据是否包括人类语音,并且将音频数据提供给特征检测过程(例如热词检测过程125)。特征检测过程位于限制数据
从过程流出的沙盒内。诸如交互管理器120和交互器过程135的一些组件是非沙盒化的,其中那些组件未被限制发送和/或接收数据。
51.在步骤410中,由沙盒化特征检测过程检测的音频特征的指示被提供给操作系统和/或经由操作系统执行的组件。在一些实施方式中,指示基于特征检测过程所处的沙盒来限制。例如,参照图1,热词检测过程125可以将热词已被检测到的指示提供给交互管理器120。指示可以包括附加信息,诸如讲出热词的用户的标识。在一些实施方式中,信息从特征检测过程的流出可以由特定的定义数据模式限制。在一些实施方式中,信息从特征检测过程的流出可以由大小限制,诸如小于10字节的指示。通过限制被允许由音频特征检测过程提供的信息,音频数据被限制直接从特征检测过程被提供给一个或多个组件。
52.在步骤415中,捕获的音频数据被提供给非沙盒化交互器过程135。音频特征检测过程被限制直接发送音频数据,如先前描述的。相反,诸如交互管理器120的中介将音频数据发送给授权的交互器过程135。因此,由热词检测过程125使用的音频数据无法从服务流出。在一些实施方式中,为了进一步确保音频特征检测过程无法发送音频数据,由音频特征检测过程可访问的存储器可以被周期性地清除和/或过程可以被终止和重启。这可以以规则间隔或不规则间隔发生,以确保另一非沙盒化组件无法暗中流出数据。在一些实施方式中,操作系统可以利用分岔,如本文描述的,以生成新过程。通过防止应用确定存储器何时正在被清除并且在存储器已被清除之前泄漏数据,以不规则间隔清除存储器可以确保更高级别的安全性。不规则间隔可以包括一旦特定量的数据已被接收到,每当客户端设备110不活动时和/或仅当dsp115已执行初始语音检测时,就清除存储器。
53.图5描绘了流程图,它图示了用于处理传感器数据以使用沙盒化检测过程标识特征的示例方法500。为了便利起见,方法500的操作参照执行操作的系统描述,诸如图1和图3所图示的系统。方法500的该系统包括一个或多个处理器和/或客户端设备的其他组件。而且,虽然方法500的操作按照特定次序示出,但是这并不意味着进行限制。一个或多个操作可以被重新排序、省略或者添加。
54.在步骤505中,传感器数据被提供给沙盒化特征检测过程。在一些实施方式中,传感器数据可以是由客户端设备的麦克风捕获的音频数据,诸如客户端设备110的麦克风140。在一些实施方式中,传感器数据可以是由客户端设备110的一个或多个相机165捕获的视频数据。例如,可以包括图1的一个或多个组件的操作系统可以接收由传感器180捕获的图像数据。图像数据可以包括例如用户的手势和/或指示用户有兴趣与应用交互的一个或多个其他特征。图像数据的至少一部分可以被提供给热词检测过程,它可以确定特定特征是否存在于图像数据中,诸如用户观看设备、与设备交互、执行手势和/或可以存在于图像数据中的其他视觉特征。在一些实施方式中,传感器数据可以包括地点数据,该地点数据经由gps组件捕获并且用于确定设备是否在应该触发一个或多个应用的地点处。
55.在步骤510中,特征在传感器数据中被检测到的指示由特征检测过程提供。步骤510可以与图4的步骤410共享一个或多个特点。在一些实施方式中,检测到的特征可以是例如音频数据、视频数据、地点数据和/或经由客户端设备的一个或多个组件捕获的其他传感器数据。
56.在步骤515中,音频数据被提供给交互器过程。交互器过程可以与交互器过程135共享一个或多个特点。例如,交互器过程可以是非沙盒化的,因为数据从过程的流出不以与
特征检测过程125相同的方式来限制。在一些实施方式中,步骤515可以与图4的步骤415共享一个或多个特点,但是传感器数据可以包括例如音频数据、图像数据、地点数据和/或其他捕获的传感器数据。
57.尽管本文的许多示例和描述主要针对捕获音频数据以核实热词,但是类似的过程可以使用视频数据来利用。来自相机165的视频数据可以被分析,以例如确定所标识的手势是否是与“热词”等效的视频(例如用户的手势和/或指示有兴趣与一个或多个组件交互的特征)。这可以包括例如用手部进行滑动运动,以指示特定动作要由客户端设备激活。而且,例如图5所描述的传感器数据可以是经由gps组件捕获的地点数据。特征检测过程125可以检查地点数据,以确定触发地点是否被标识,并且响应于确定所需地点已被检测到,一个或多个其他组件,诸如交互管理器120,可以将附加地点数据提供给交互器过程。
58.作为示例,用户可以在所需时间量内观看设备或者设备上的位置。图像数据可以从传感器180(例如相机)被提供给操作系统105,并且被提供给在沙盒中执行的检测过程,该沙盒可以处理图像数据以确定例如用户是否正在观看设备。一旦用户动作的存在被检测到,交互器过程135可以被提供图像数据和/或附加图像数据,以执行附加分析。
59.图6是示例计算机示例610的框图。计算机系统610通常包括经由总线子系统612与若干外围设备通信的至少一个处理器614。这些外围设备可以包括存储子系统624,包括例如存储器625和文件存储子系统626、用户接口输出设备620、用户接口输入设备622和网络接口子系统616。输入和输出设备允许用户与计算机系统610交互。网络接口子系统616将接口提供给外部网络,并且被耦合至其他计算机系统中的对应接口设备。
60.用户接口输入设备622可以包括键盘、诸如鼠标、轨迹球、触摸板或者绘图板的指点设备、扫描仪、被并入到显示器中的触摸屏、诸如话音识别系统、麦克风的音频输入设备和/或其他类型的输入设备。通常,术语“输入设备”的使用旨在包括用于将信息输入到计算机系统610中或者输入到通信网络上的所有可能类型的设备和方式。
61.用户接口输出设备620可以包括显示子系统、打印机、传真机或者非视觉显示器(诸如音频输出设备)。显示子系统可以包括阴极射线管(crt)、诸如液晶显示器(lcd)的平板设备、投影设备或者用于创建可见图像的一些其他机构。显示子系统还可以提供非视觉显示器,诸如经由音频输出设备。通常,术语“输出设备”的使用旨在包括用于将来自计算机系统610的信息输出到用户或者输出到另一机器或者计算机系统的所有可能类型的设备和方式。
62.存储子系统624存储提供本文描述的一些或者所有模块的功能性的编程和数据构造。例如,存储子系统624可以包括执行方法300、方法400的所选择的方面和/或实施客户端设备110、操作系统105、执行交互管理器120和/或其组件中的一个或多个的操作系统、交互器过程135和/或本文讨论的任何其他引擎、模块、芯片、处理器、应用等中的一个或多个的逻辑。
63.这些软件模块通常由处理器614单独地执行或者与其他处理器组合来执行。用于存储子系统624中的存储器625可以包括若干存储器,所述若干存储器包括用于在程序执行期间存储指令和数据的主随机存取存储器(ram)630和固定指令被存储在其中的只读存储器(rom)632。文件存储子系统626可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、连同关联的可移除介质的软盘驱动器、cd-rom驱动器、光学驱动器或者可移除介质
盒。实施特定实施方式的功能性的模块可以由文件存储子系统626存储在存储子系统624中,或者存储在由处理器614可访问的其他机器中。
64.总线子系统612提供用于允许计算机系统610的各种组件和子系统按照预期来与彼此通信的机构。虽然总线子系统612被示意性地示出为单个总线,但是总线子系统的替代实施方式可以使用多个总线。
65.计算机系统610可以具有不同的类型,包括工作站、服务器、计算集、刀片式服务器、服务器场或者任何其他数据处理系统或者计算设备。由于计算机和网络的不断变化的性质,出于图示一些实施方式的目的,图6中描绘的计算机系统610的描述仅旨在作为特定示例。与图6中描绘的计算机系统相比,计算机系统610的具有更多或者更少组件的许多其他配置是可能的。
66.在本文描述的系统收集关于用户(或者通常在本文中称为“参与者”)的个人信息或者可以利用个人信息的情况下,用户可以被提供以下机会:控制程序或者特征是否收集用户信息(例如关于用户的社交网络、社交动作或者活动、职业、用户的偏好或者用户的当前地理地点的信息)或者控制是否和/或如何从内容服务器接收可能与用户更相关的内容。而且,在数据被存储或者使用之前,特定数据可以按照一种或多种方式来处置,使得个人可标识信息被移除。例如,用户的标识可以被处置,使得没有个人可标识信息可以针对用户被确定,或者地理地点信息从中被获得的用户的地理地点可以被概况(到诸如城市、或者州级),使得用户的特定地理地点无法被确定。因此,用户可以具有对关于用户的信息如何被收集和/或被使用的控制。
67.在一些实施方式中,提供了由客户端设备的处理器实施的方法,包括:由客户端设备的操作系统,将捕获的音频数据提供给由操作系统沙盒化的沙盒化音频特征检测过程。该方法进一步包括:由操作系统,从沙盒化音频特征检测过程接收音频特征由沙盒化音频特征检测过程检测到的指示。该方法进一步包括:响应于接收到指示,由操作系统,将捕获的音频数据发送给交互器过程。操作系统限制沙盒化音频特征检测过程将捕获的音频数据发送给交互器过程。
68.本文公开的技术的这些和其他实施方式可以包括以下特征中的一个或多个。
69.在一些实施方式中,该方法进一步包括:由操作系统,以间隔终止和重启音频特征检测过程。在那些实施方式中的一些版本中,音频特征检测过程的终止和重启是以不规则间隔的。在那些版本中的一些版本中,间隔基于音频特征在音频数据中被检测到的对应接收指示。
70.在一些实施方式中,该方法进一步包括:由操作系统,以间隔在沙盒中分岔沙盒化音频特征检测过程。
71.在一些实施方式中,该方法进一步包括:由操作系统,控制沙盒防止沙盒化音频特征检测过程发送捕获音频。在那些实施方式中的一些版本中,控制包括限制数据从沙盒化音频特征检测过程流出。在那些版本中的一些版本中,限制数据的流出包括将数据到数据的流出的实例限制为满足大小阈值的数据。例如,满足大小阈值可以包括小于或等于特定数量的字节,诸如16字节、10字节或者4字节。在一些附加或替代版本中,限制数据的流出包括将数据的流出限制为符合定义的数据模式的数据。
72.在一些实施方式中,该方法进一步包括:响应于接收到指示,渲染指示音频数据的
非沙盒化处理的通知。在由沙盒化音频特征检测过程处理音频数据期间,通知可以被抑制或者未被渲染。
73.在一些实施方式中,提供了由客户端设备的处理器施行的方法,包括:由客户端设备的操作系统,将传感器数据提供给沙盒化特征检测过程,该沙盒化特征检测过程在由操作系统控制的沙盒中在客户端设备上正在执行。传感器数据基于来自客户端设备的一个或多个传感器和/或与客户端设备可通信地耦合(例如经由蓝牙或者其他无线模态)的一个或多个传感器的输出。该方法进一步包括:由操作系统,从沙盒化特征检测过程接收特征由沙盒化特征检测过程检测到的指示。该方法进一步包括:响应于接收到指示,由操作系统,将传感器数据发送给非沙盒化交互器过程。操作系统限制沙盒化特征检测过程发送传感器数据。
74.本文公开的技术的这些和其他实施方式可以包括以下特征中的一个或多个。
75.在一些实施方式中,传感器数据包括图像数据和/或音频数据。在传感器数据包括图像数据的一些实施方式中,特征是用户的特定手势、用户的固定注视、具有特定特点的姿势(头部和/或身体)和/或特定手势、固定注视和/或具有特定特点的姿势的共同出现。
76.在一些实施方式中,该方法进一步包括:由操作系统,以间隔终止和重启沙盒化特征检测过程。
77.在一些实施方式中,该方法进一步包括:由操作系统,以间隔在沙盒中分岔沙盒化特征检测过程。
78.在一些实施方式中,该方法进一步包括:由操作系统,限制沙盒化特征检测过程发送捕获的传感器数据。在那些实施方式中的一些版本中,限制沙盒化特征检测过程发送捕获的传感器数据包括:限制数据从沙盒化特征检测过程流出。在那些版本中的一些版本中,限制数据流出包括:将数据到数据的流出的实例限制为满足大小阈值的数据和/或将数据的流出限制为符合定义的数据模式的数据。
79.在一些实施方式中,该方法进一步包括:响应于接收到指示,渲染通知,该通知指示传感器数据的非沙盒化处理。在由沙盒化音频特征检测过程处理传感器数据期间,通知可以被抑制或者未被渲染。通知可以指示传感器数据的类型和/或可以指示(或者可选择以指示)控制交互器过程并且还可选地控制沙盒化特征检测过程的应用。
80.各种实施方式可以包括存储指令的非暂时性计算机可读存储介质,所述指令可由一个或多个处理器(例如中央处理单元(cpu)、图形处理单元(gpu)、数字信号处理器(dsp)和/或张量处理单元(tpu))执行,以施行诸如本文描述的方法中的一个或多个方法。其他实施方式可以包括客户端设备,该客户端设备包括处理器,所述处理器可操作以执行存储的指令以施行方法,诸如本文描述的方法中的一个或多个方法。
技术特征:
1.一种由客户端设备的一个或多个处理器实施的方法,所述方法包括:由所述客户端设备的操作系统将捕获的音频数据提供给沙盒化音频特征检测过程,所述沙盒化音频特征检测过程在由所述操作系统控制的沙盒中在所述客户端设备上执行;由所述操作系统从所述沙盒化音频特征检测过程接收关于音频特征由所述沙盒化音频特征检测过程检测到的指示;以及响应于接收到所述指示,由所述操作系统将所述捕获的音频数据发送给交互器过程,其中,所述操作系统限制所述沙盒化音频特征检测过程将所述捕获的音频数据发送给所述交互器过程。2.根据权利要求1所述的方法,进一步包括:由所述操作系统以间隔来终止和重启所述特征检测过程。3.根据权利要求1所述的方法,进一步包括:由所述操作系统,在沙盒中以间隔来分岔所述沙盒化音频特征检测过程。4.根据权利要求2或权利要求3所述的方法,其中,所述间隔是不规则间隔。5.根据权利要求4所述的方法,其中,所述间隔是各自基于关于所述音频特征由所述沙盒化音频特征检测过程检测到的对应的接收的指示。6.根据前述权利要求中的任一项所述的方法,进一步包括:由所述操作系统控制所述沙盒以防止所述沙盒化音频特征检测过程发送捕获的音频,其中,控制所述沙盒以防止所述沙盒化音频特征检测过程发送捕获的音频包括:将从所述沙盒化音频特征检测过程的数据的流出限制为小于或等于大小阈值的数据,其中,所述大小阈值小于10字节。7.根据权利要求6所述的方法,其中,所述大小阈值小于4字节。8.根据前述权利要求中的任一项所述的方法,进一步包括:由所述操作系统控制所述沙盒以防止所述沙盒化音频特征检测过程发送捕获的音频,其中控制所述沙盒以防止所述沙盒化音频特征检测过程发送捕获的音频包括:将数据的流出限制为符合定义的数据模式的数据。9.根据前述权利要求中的任一项所述的方法,进一步包括:响应于接收到所述指示,渲染指示所述音频数据的非沙盒化处理的通知。10.一种由客户端设备的一个或多个处理器实施的方法,所述方法包括:由所述客户端设备的操作系统将传感器数据提供给沙盒化特征检测过程,所述沙盒化特征检测过程在由所述操作系统控制的沙盒中在所述客户端设备上执行,其中,所述传感器数据是基于来自所述客户端设备的一个或多个传感器的输出;由所述操作系统从所述沙盒化特征检测过程接收关于特征由所述沙盒化特征检测过程检测到的指示;以及响应于接收到所述指示,由所述操作系统将所述传感器数据发送给非沙盒化交互器过程,其中,所述操作系统限制所述沙盒化特征检测过程发送所述传感器数据。11.根据权利要求10所述的方法,其中,所述传感器数据包括图像数据。12.根据权利要求11所述的方法,其中,所检测到的特征是用户的特定手势或者被指引到所述客户端设备的所述用户的注视。13.根据权利要求12所述的方法,其中,所述传感器数据进一步包括音频数据。14.根据权利要求10至13中的任一项所述的方法,进一步包括:由所述操作系统控制所
述沙盒以防止所述沙盒化特征检测过程限制从所述特征检测过程到所述非沙盒化交互器过程的数据的流出。15.根据权利要求10至14中的任一项所述的方法,进一步包括:由所述操作系统以间隔来终止和重启所述特征检测过程。16.根据权利要求10至15中的任一项所述的方法,进一步包括:响应于接收到所述指示,渲染指示所述传感器数据的非沙盒化处理的通知。17.一种客户端设备,包括:一个或多个传感器;存储指令的存储器;以及一个或多个处理器,所述一个或多个处理器执行所述指令以用于:由所述客户端设备的操作系统将传感器数据提供给沙盒化特征检测过程,所述沙盒化特征检测过程在由所述操作系统控制的沙盒中在所述客户端设备上执行,其中,所述传感器数据是基于来自所述传感器中的至少一个传感器的输出;由所述操作系统从所述沙盒化特征检测过程接收关于特征由所述沙盒化特征检测过程检测到的指示;以及响应于接收到所述指示,由所述操作系统未经由所述沙盒化特征检测过程,将所述传感器数据发送给非沙盒化交互器过程。18.根据权利要求17所述的客户端设备,其中,在执行所述指令时,所述处理器中的一个或多个进一步用于由所述操作系统以间隔来在所述沙盒中分岔所述沙盒化特征检测过程。19.根据权利要求18所述的客户端设备,其中,所述间隔是不规则间隔。20.根据权利要求17至19中的任一项所述的客户端设备,其中,在执行所述指令时,所述处理器中的一个或多个进一步用于:响应于接收到所述指示,渲染指示所述传感器数据的非沙盒化处理的通知。21.根据权利要求18所述的客户端设备,其中,所述指示是可选择的图形指示,并且其中,在执行所述指令时,所述处理器中的一个或多个进一步用于:响应于接收到对所述图形指示的选择,渲染进一步的通知,所述进一步的通知指示控制所述传感器数据的所述非沙盒化处理的应用。22.一种包括指令的计算机程序,所述指令在由计算系统的一个或多个处理器执行时,使所述计算系统施行根据权利要求1至16中的任一项所述的方法。23.一种客户端设备,所述客户端设备被配置为施行根据权利要求1至16中的任一项所述的方法。
技术总结
用于限制传感器数据从特征检测过程到交互器过程的流出的系统和方法。传感器数据可以包括音频数据、图像数据、地点数据和/或从传感器接收的其他数据。特征检测过程被沙盒化,以限制数据从组件的流出。一旦特征检测过程确定特征已在传感器数据中被检测到,交互器过程就可以被提供传感器数据和/或附加传感器数据。传感器数据和/或附加传感器数据可以由操作系统直接提供,并且不经由特征检测过程。在一些实施方式中,一旦数据被发送给所述交互器过程,通知就可以被渲染。通知可以指示传感器数据正在被访问。当仅沙盒化特征检测过程正在访问传感器数据时,通知的渲染可以被抑制。通知的渲染可以被抑制。通知的渲染可以被抑制。
技术研发人员:
阿汉
受保护的技术使用者:
谷歌有限责任公司
技术研发日:
2021.12.17
技术公布日:
2023/3/3