一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

在可再充电设备上的播送请求和/或用户输入的自适应管理的制作方法

2021-09-23 00:50:00 来源:中国专利 TAG:

的特定时段,以便等待来自用户的进一步指令和/或输入。
5.设备soc保持活动的时间量可以根据与一个或多个用户和自动化助理之间的交互相关联的各种特征而随时间改变。可以调整和/或确定时间量以便减缓计算资源和功率的浪费,否则这些浪费可能在设备soc处被花费在操作语音识别模型上。例如,设备soc可以操作与dsp所操作的语音识别模型(例如,第二调用短语模型和/或其他语音活动检测器)不同的另一语音识别模型(例如,第一调用短语模型和/或语音活动检测器),并且相对于dsp所操作的语音识别模型,可能需要更多的计算资源和/或功率。因此,通过适配设备soc的“唤醒时间”量,可以避免电池功率的不必要消耗,同时仍然确保可再充电设备可以以有效的方式提供自动化助理功能性。
6.在一些实现方式中,由设备soc操作的其他语音识别模型可以基于由dsp提供的数据来确定用户的语音特性,所述数据诸如响应于用户提供初始口头话语而生成的音频数据。基于所确定的语音特性,设备soc可以选择设备soc保持操作以促进处理来自用户的任何后续输入的唤醒时间。作为示例,第一用户通常和/或平均起来可以在提供调用短语(例如,“assistant
…”
)和提供命令短语(例如,
“…
play my study playlist(
……
播放我的研究播放列表)”)之间延迟几秒(例如,三秒)。设备soc可以确认这个延迟,并且为设备soc选择一个唤醒时间,该唤醒时间不会延伸远超过用户的平均延迟。例如,所选择的设备soc的唤醒时间可以是但不限于:(唤醒时间)=(所确定的用户的平均延迟)x(1 n),其中“n”是任何数字,例如但不限于0.2、0.5等。可以为不同的用户选择相同或不同的唤醒时间,该唤醒时间通常和/或平均地在提供调用短语和提供命令短语之间延迟几秒(例如,2秒)。这样,包括dsp和soc设备的可再充电设备可以自适应地管理每个用户的“唤醒时间”,以便确保响应而不浪费功率和/或计算资源。
7.在一些实现方式中,由dsp操作的语音识别模型和由设备soc操作的其他语音识别模型都可以用于确定用户是否已经提供用于调用自动化助理的特定调用短语。然而,由dsp操作的语音识别模型可以应用一种标准,通过该标准来确定用户是否提供了比由设备soc操作的其他语音识别模型所实现的标准更不严格的调用短语。换句话说,语音识别模型可以与用于确定特定口头话语是否对应于调用短语的第一准确度阈值相关联,并且另一语音识别模型可以与用于确定特定口头话语是否对应于调用短语的第二准确度阈值相关联。作为示例,当用户提供被确定为包括调用短语的至少一部分但还包括一定量的背景噪声的特定口头话语时,可以满足第一准确度阈值。然而,该特定口头话语可能不满足第二准确度阈值,因为第二准确度阈值可能需要特定口头话语与调用短语之间的较高程度的相关——至少相对于用于满足第一准确度阈值的相关度。
8.在一些实现方式中,dsp可以使用相对于设备soc与其他语音识别模型一起使用的更少的功率、更少的数据、更少的音频通道、更低采样率的音频和/或更低质量的音频来操作语音识别模型。例如,当用户向可再充电设备提供口头话语时,dsp可以接收单通道的音频数据,而当用户向可再充电设备提供口头话语时,设备soc可以接收多通道的音频数据。另外或者可替换地,当采用语音识别模型时,dsp可以使用平均功率量进行操作,并且当采用其他语音识别模型时,设备soc可以使用比平均功率量更多的功率进行操作。
9.在一些实现方式中,由dsp和/或设备soc确定的相关度可以用于选择设备soc保持活动以用于处理来自用户的进一步输入的唤醒时间量。例如,当设备soc确定口头话语和调
用短语之间的第一相关度时,设备soc可以选择第一唤醒时间。然而,当设备soc确定另一口头话语和调用短语之间的第二相关度,并且第二相关度大于第一相关度时,设备soc可以选择比第一唤醒时间长的第二唤醒时间。这样,设备soc保持活动以便预期来自用户的进一步输入的时间量可以根据来自用户的口头话语和用于调用自动化助理的调用短语之间的准确度和/或相关度来适配。这可以通过避免对用户输入的任何内容和/或场境不加区别的标准“唤醒时间”来在可再充电设备处保留计算资源。
10.这在来自用户的口头话语和调用短语之间的相关达不到调用自动化助理所需的相关的情况下可能是特别有益的。这是因为“接近未命中”(即,对于调用助理几乎但不是十分足够的相关)更有可能是由调用自动化助理的实际尝试所导致的(而不是具有与调用助理所需的相关更远的相关的话语),因此更有可能被用户再次尝试调用助理所跟随。当检测到“接近未命中”时,保持soc活动更长时间可以允许设备以更少的延迟处理随后调用尝试。换言之,设备soc可以确定口头话语达不到与调用短语相关的特定程度,因此设备soc可以基于特定程度来保持一段时间(例如,基于特定程度和/或与特定程度成比例选择的以秒为单位的时间量)。然而,当设备soc确定另一个口头话语由于与调用短语相关而更短(例如,更大的程度的更短)时,设备soc可以更快地关闭,以便节省功率和计算资源。
11.当可再充电设备检测到口头话语并且设备soc被初始化以便进一步处理时,在dsp处操作的时钟与在设备soc处操作的另一时钟的时钟设置中可能存在差异。为了使设备soc处理在dsp处生成并被加时间戳的音频数据,可以在dsp和/或设备soc进行时间同步,以便进一步消除在预期和/或响应在可再充电设备处接收到的口头话语时涉及的计算资源的浪费。例如,当soc在接收到口头话语的时间输出音频时,这样的时间同步可能特别有用。实际上,没有时间同步,处理捕获的音频数据以从对应于话语的数据中移除由soc输出的音频可能是有问题的。
12.在一些实现方式中,时间同步可以由设备soc使用在设备soc处生成的一个或多个时间戳以及在dsp处生成的一个或多个其他时间戳来进行。作为示例,dsp可以使用第一时钟生成与相对于dsp的本地时间相对应的第一时间戳。另外,dsp可以在dsp例如响应于dsp确定用户已经提供调用短语而使设备soc初始化时生成第二时间戳。在从dsp接收到信号(例如,唤醒和/或中断命令)时,设备soc可以使用第二时钟来生成第三时间戳,并且第三时间戳可以对应于相对于设备soc的本地时间。
13.为了进行时间同步,设备soc可以使用第一时间戳、第二时间戳和第三时间戳来生成时间偏移,并且此后在处理dsp处生成的音频数据时使用该时间偏移。在一些实现方式中,设备soc可以确定第一时间戳和第二时间戳的平均值,然后确定与平均值和第三时间戳之间的差相对应的增量值。当处理音频数据时,例如当设备soc进行回声消除时,可以随后使用增量值。在回声消除期间,设备soc可以使用增量值以便从由麦克风记录的音频中移除由可再充电设备输出的音频的实例。作为示例,当设备soc正在生成与音乐回放相对应的音频输出并且用户在音乐回放期间向麦克风提供口头话语时,设备soc可以处理表征口头话语的音频数据,以便移除音乐回放的实例。此外,从音频数据中移除音乐回放的实例的这个过程可以使用由设备soc和/或dsp确定的delta值来准确地进行,从而允许从准确数据中确定设备soc的“唤醒时间”。换句话说,为了进行某些音频处理,诸如回声消除,dsp生成的时间戳可以被转换为与设备soc生成的时间戳相关。另外,或者可替换地,设备soc生成的时间
戳可以被转换为与dsp生成的时间戳相关,以便进行这些音频处理。
14.在一些实现方式中,可再充电设备可以包括一个或多个接口,经由该一个或多个接口响应于来自另一计算设备的播送请求而渲染音频、视觉、触觉和/或任何其他类型的输出。然而,尽管这样的播送请求可以由诸如蜂窝电话和/或膝上型计算机的其他可再充电设备提供,但是提供播送请求的计算设备可以在不考虑可再充电设备处的可用电力的情况下提供这样的请求。为了处理频繁的播放请求同时还消除可再充电电源的浪费,可再充电设备可以将某些请求的处理卸载到可再充电设备的子系统而不是设备soc。例如,可以授权可再充电设备的wifi芯片来处理通过可再充电设备和播送设备所连接的局域网(lan)接收到的特定请求。在一些实现方式中,wifi芯片可以在设备soc保持在睡眠模式时处理某些播送请求,以便消除功率和计算资源的浪费。授权给wifi芯片进行处理而不调用设备soc进行附加处理的请求可以是指定一个或多个特定端口的播送请求。另外或可替代地,可以授权wifi芯片以用于处理mdns广播的数据而不调用设备soc。
15.作为示例,用户可以在他们的蜂窝设备处操作音乐应用以便流传输音乐,并且在音乐的回放期间,用户可以初始化到可再充电设备的音乐的播放。蜂窝设备可以向通过可再充电设备连接到lan的各种不同设备传送播送请求,该播送请求可以包括mdns广播的数据。当可再充电设备根据睡眠模式操作时,可再充电设备可以接收播送请求,在睡眠模式中,设备soc睡眠、关闭,或者与可再充电设备不根据睡眠模式操作相比处于较低功率模式。可再充电的设备的wifi芯片可以初始地处理播送请求,以确定播送请求是否指定特定端口和/或包括特定属性。
16.当播送请求指定与一个或多个预定端口相对应的特定端口时,wifi芯片可以绕过调用设备soc来响应播送请求。相反,wifi芯片可以依赖存储在wifi芯片的存储器中的缓存数据,以便生成响应数据,从而通过lan传送回蜂窝设备。另外或可替代地,在与播送请求一起包括的mdns广播的数据指定播送请求的某些参数的情况下,wifi芯片可以绕过调用设备soc。例如,由蜂窝设备提供的mdns广播的数据可以指示正在请求音频回放服务和/或特定应用初始化了播送请求。基于与一个或多个其他设备的先前交互,wifi芯片的缓存数据可以指示可再充电设备支持音频回放服务和/或特定应用。因此,基于可用缓存数据,wifi芯片可以使用缓存数据生成对蜂窝设备的响应,而不调用设备soc用于进一步的信息。这样,可再充电设备可以减少设备soc否则将被初始化以进行处理的实例的数量,从而消除可再充电电源(例如,一个或多个电池和/或电容器)和计算资源的浪费。
17.以上描述被提供作为本公开的一些实现方式的概述。下面更详细地描述这些实现方式和其它实现方式的进一步描述。
18.其他实现方式可以包括存储指令的非暂时性计算机可读存储介质,所述指令可由一个或多个处理器(例如,中央处理单元(cpu)、图形处理单元(gpu)和/或张量处理单元(tpu))执行以进行诸如以上和/或本文其他地方描述的方法中的一个或多个的方法。其它实现方式可以包括包含一个或多个处理器的一个或多个计算机和/或一个或多个机器人的系统,该一个或多个处理器可操作以执行所存储的指令以进行诸如以上和/或本文其他地方描述的方法中的一个或多个的方法。
19.应当理解,本文更详细描述的前述概念和附加概念的所有组合被预期为本文公开的主题的一部分。例如,在本公开结尾出现的所要求保护的主题的所有组合被认为是本文
公开的主题的一部分。
附图说明
20.图1a和图1b示出用户控制第一客户端设备以向单独的客户端设备广播媒体而不将本地网络上的所有客户端设备从它们各自的睡眠状态转变出来的视图。
21.图2a、2b和2c示出根据这里讨论的实现方式的其中设备soc被留在睡眠模式中或者被从睡眠模式中转变出来的场景的视图。
22.图3示出客户端设备的视图,该客户端设备可以基于与用户和客户端设备之间的交互相关联的一个或多个属性来确定设备soc的唤醒时间。
23.图4示出用于为设备soc生成唤醒时间,生成在dsp时钟和设备soc时钟之间的时间偏移,和/或使用wifi芯片来响应播送请求而不将设备soc从睡眠模式中转变出来的系统。
24.图5示出用于在基于用户和计算设备之间的交互的一个或多个特征来选择的时间量内初始化计算设备的特定处理器的方法。
25.图6示出用于使用与第一处理器和第二处理器之间的操作的差异相对应的确定的时间偏移来处理音频数据的方法。
26.图7示出使用包括在电池供电的计算设备中的wifi芯片向广播设备提供响应数据的方法。
27.图8是示例计算机系统的框图。
28.具体实现方式
29.图1a示出用户124控制第一客户端设备134以向单独的客户端设备广播媒体而不将本地网络上的所有客户端设备从其各自的睡眠状态转变出来的视图100。第一客户端设备134可以是诸如蜂窝电话126的计算设备和/或能够将媒体播送到另一设备的任何其他设备。第一客户端设备134可以提供对自动化助理136的访问,该自动化助理可以经由助理接口138的输入来调用。第一客户端设备134还可以包括能够访问可以从第一客户端设备134播送到另一客户端设备的媒体的一个或多个应用144。在一些实现方式中,第一客户端设备134可以响应于从用户124到自动化助理136的输入而将媒体播送到单独的客户端设备。例如,响应于用户检查可用于播送与应用144相关联的媒体的其他设备,第一客户端设备134可以通过多个不同客户端设备所连接的局域网来传送mdns数据。
30.由第一客户端设备134广播的mdns数据可以通过诸如wifi网络之类的局域网被传送到第二客户端设备102和/或第三客户端设备112。例如,mdns数据130可以从第一客户端设备134传送到第二客户端设备102,并且mdns数据132可以从第一客户端设备134传送到第三客户端设备112。在一些实现方式中,第二客户端设备102可以是由便携式电源110供电的便携式计算设备。此外,第三客户端设备112可以由便携式电源和/或任何其他电源(诸如由公用服务提供的电源)供电。当每个设备接收各自的mdns数据时,第二客户端设备102和第三客户端设备112可以在睡眠模式操作。换句话说,因为设备在睡眠模式操作,所以在每个设备处可用的wifi芯片可以处理mdns数据而无需将每一相应设备从睡眠状态转变出来。例如,当wifi芯片106和wifi芯片116接收并且响应mdns数据时,设备soc 108和设备soc 118可以在睡眠模式(如倾斜度填充图案所示)操作。在一些实现方式中,当至少计算设备的设备soc被断电或者比设备soc根据另一操作模式操作时消耗更好的功率时,可以认为计算设
备处于“睡眠模式”。
31.第二客户端设备102的wifi芯片106可以使用wifi芯片106的存储器140中可用的缓存数据来处理mdns数据130。另外,第三客户端设备112的wifi芯片116可以使用wifi芯片116的存储器142中可用的缓存数据来处理mdns数据132。由第一客户端设备134广播的mdns数据可以标识与广播相关联的应用、用于传送广播的端口、由第一客户端设备134请求的服务、和/或计算设备在初始化播送时可以指定的任何其他特征。
32.图1b示出第二客户端设备102和第三客户端设备112响应于被传送到每个相应客户端设备的mdns数据的视图150。在响应数据的生成和传输期间,设备soc 108和设备soc 118中的每一个都可以保持在睡眠模式,从而消除功率和计算资源的浪费。响应数据148可以指示第二客户端设备102是否包括由第一客户端设备134请求的一个或多个特征,并且响应数据146可以指示第三客户端设备112是否包括由第一客户端设备134请求的一个或多个特征。响应于第一客户端设备134通过本地网络接收到响应数据148和响应数据146,第一客户端设备134可以提供标识满足请求的一个或多个客户端设备的图形界面。用户124然后可以选择客户端设备中的一个用于播送媒体。例如,当应用144请求向客户端设备进行播送,并且向用户呈现要从中选择以进行播送的客户端设备的列表时,用户可以选择第一客户端设备134。
33.响应于该选择,应用144可以通过本地网络与第一客户端设备134直接通信,或者应用可以与单独的服务器通信,以便使得单独的服务器向第一客户端设备134传送用于经由第一客户端设备134渲染特定媒体数据的指令。在一些实现方式中,第一客户端设备134可以是独立的扬声器设备122和/或能够渲染音频和/或视觉数据的显示设备。可替换地或附加地,第三客户端设备112可以是显示设备,诸如计算机监视器和/或电视机。第二客户端设备102和第三客户端设备112可以各自包括数字信号处理器,其可以监视相应的设备接口,当每个相应的设备soc在睡眠模式操作时,通过该相应的设备接口来访问自动化助理。此外,数字信号处理器(dsp)、wifi芯片、设备soc和/或客户端设备的任何其他子系统可以根据本文讨论的任何实现方式来操作。
34.图2a示出用户220向客户端设备202提供口头话语218并且使得客户端设备202使用数字信号处理器处理口头话语218而不将设备soc 208从睡眠模式转变出来的视图200。客户端设备202可以是经由电源210操作的计算设备222,其可以包括诸如电池、电容器和/或任何其他可再充电能量源之类的可再充电电源。当客户端设备202与在睡眠模式的设备soc 208一起操作时,用户220可以提供口头话语218,这可以不同于将导致客户端设备202将设备soc 208从睡眠模式中转变出来的调用短语。例如,用户220可以提供口头话语218,“hello

(您好
……
)”,其可在连接到客户端设备202的一个或多个麦克风处被接收。
35.连接到客户端设备202的麦克风可以响应于用户220提供口头话语218而提供输出。尽管设备soc 208在睡眠模式操作,但是客户端设备202的数字信号处理器dsp 204可以监视麦克风的输出以确定用户是否已经提供可以调用客户端设备202进行一个或多个不同动作的一个或多个调用短语中的调用短语。在一些实现方式中,dsp 204可以根据利用比由设备soc208用来处理音频数据的采样速率更低的采样速率的过程来处理表征口头话语218的音频数据212。可替换地或者附加地,dsp 204可以处理基于来自相对于用于生成由设备soc 208处理的音频的麦克风数量更少数量的麦克风的输出而生成的音频数据212。换句话
说,与设备soc 208所利用的通道数量相比,dsp 204可以利用较少的音频数据通道。利用较低采样率和/或较少信道可以是计算上高效的并且最小化功率消耗(以及所导致的电池消耗)。可替换地或附加地,dsp 204可以访问用于处理音频数据212以确定用户220是否已经提供调用短语的第一模型214。
36.第一模型214可以不同于由设备soc 208用来确定用户220是否说出调用短语的第二模型216。例如,第一模型214可以是被训练用于确定音频数据是否表征调用短语的模型。音频数据和调用短语之间的对应关系可以被表征为一个或多个值,并且音频数据和调用短语之间的相似性的阈值程度可以相对于与第二模型216相对应的另一阈值程度较低。换言之,可以确定口头话语满足第一模型214的阈值而不满足第二模型216的阈值,但是不能确定口头话语满足第二模型216且不满足第一模型214。
37.在各种实现方式中,第二模型216相对于第一模型214更大(逐比特),并且可以具有更大的输入维度(例如,以处理更多的音频数据通道)和/或更大量的训练节点。结果,利用第二模型216处理音频数据相对于利用第一模型214处理音频数据可能在计算上更昂贵。然而,在一些实现方式中,利用第二模型216处理音频数据可以导致更准确地确定用户220是否说出调用短语,作为第二模型216更大,更多的音频数据通道被处理,更高精度样本,和/或更高的音频数据采样率被处理的结果。因此,dsp 204可以利用更有效的第一模型214来确定音频数据是否通过了对调用短语的存在的“初始检查”,并且soc 208和效率较低(但精确度较高)的第二模型216仅在通过了“初始检查”时才被利用。这比仅利用soc 208和第二模型216更有效、更有资源。
38.在一些实现方式中,dsp 204可以以相对于设备soc 208处理音频数据的位深度不同的位深度处理音频数据。例如,dsp 204可以捕获音频数据作为24位音频,但是将音频数据转换为16位音频数据,然后在确定音频数据是否表征用户提供的调用短语时使用16位音频数据。当dsp 204确定16位音频数据表征调用短语时,dsp 204可以使得捕获的24位音频数据被转发到设备soc 208。设备soc 208然后可以处理24位音频数据,而不是将转发的音频数据转换为不同的位深度以用于处理。
39.响应于用户220提供话语218,dsp 204可以使用第一模型214处理音频数据212,并且确定话语218不对应于一个或多个调用短语中的调用短语。作为响应,dsp 204可以绕过唤醒设备soc 208以便进一步处理。这样,设备soc 208可以保持在睡眠模式,而不必为了进一步处理音频数据212而频繁地初始化。这允许客户端设备202消除由电源210提供的能量以及在客户端设备202处可用的计算资源的浪费。
40.图2b示出用户向客户端设备202提供口头话语234并且使得客户端设备202的dsp 204唤醒客户端设备202的设备soc 208的视图230。口头话语234可以由客户端设备202的一个或多个麦克风捕获,该客户端设备202可以是从便携式和/或可再充电电源210操作的计算设备222。最初,设备soc 208可以在睡眠模式操作以便节省功率和计算资源。当设备soc 208在睡眠模式操作时,dsp 204可以操作以检测用户220何时提供对应于一个或多个调用短语的口头话语。
41.作为示例,用户220可以提供口头话语234,诸如“assistant(助理)”,其可以对应于调用短语,当由dsp 204检测到时,该调用短语可以使得dsp 204唤醒设备soc 208。为了检测调用短语,dsp 204可以将来自客户端设备202的一个或多个麦克风的输出转换为音频
数据232。dsp 204可以使用第一模型214以便处理音频数据232来确定话语234是否对应于调用短语。当dsp 204确定口头话语234对应于调用短语时,dsp 204可以向设备soc 208传送命令,以便唤醒设备soc 208,或者以其他方式使得设备soc 208从睡眠模式中转变出来。
42.当dsp 204使得设备soc 208从睡眠模式转换到操作模式时,dsp204也能够将音频数据传送到设备soc 208以用于进一步处理。设备soc208然后可以使用第二模型216处理音频数据,以确认口头话语234是否对应于调用短语。当设备soc 208确定口头话语234不对应于调用短语时,设备soc 208可以转变回睡眠模式以便保留计算资源和功率。可替换地或者附加地,当设备soc 208确定口头话语234不对应于调用短语,但是dsp 204确实确定口头话语234对应于调用短语时,设备soc 208可以在至少在预期来自用户220的进一步输入的时间段内保持活动或唤醒。在一些实现方式中,唤醒时间可以基于口头话语234和调用短语之间的相关度、用户220的语音标识和/或本文讨论的任何其他实现方式特征。作为示例,唤醒时间可以基于由设备soc 208检测到的相关度和阈值相关度之间的比较来确定。例如,当设备soc208所检测到的相关度为0.87且相关度阈值为0.9时,设备soc208唤醒时间可以被设置为时间段x,然而,如果设备soc208所检测到的相关度为0.79且相关度阈值为0.9,则设备soc208唤醒时间可以被设置为时间段y,其中y小于x。
43.图2c示出口头话语244由用户220提供并且使得计算设备202的dsp 204将设备soc 208从睡眠模式转变出来并且进一步初始化自动化助理以用于进一步的操作的视图240。客户端设备202可以是包括用于与自动化助理交互的一个或多个不同接口的计算设备222。为了初始化自动化助理,用户220可以提供调用短语,当设备soc 208处于睡眠模式时,该调用短语被dsp 204检测到。调用短语可以被包含在口头话语244中,当由dsp 204检测时,使用音频数据242和第一模型214处理该口头话语。当dsp 204使用第一模型确定音频数据242表征调用短语时,dsp 204可以向设备soc 208提供唤醒命令。
44.响应于设备soc 208接收到唤醒命令,设备soc 208可以使用第二模型216来处理与口头话语244相对应的音频数据。基于使用第二模型216对音频数据的处理,设备soc 208可以确定口头话语244包括调用短语。因此,基于设备soc 208确定用户220提供了调用短语,设备soc 208可以本地初始化自动化助理,和/或提供网络请求以经由服务器设备初始化自动化助理。例如,设备soc 208可以将数据传送到客户端设备202的wifi芯片106以用于初始化自动化助理。数据可以通过诸如因特网之类的网络被传送到自动化助理服务器,以便来自用户的后续请求可以经由客户端设备202被传送到自动化助理服务器。在一些实现方式中,自动化助理可以托管在客户端设备202处,因此来自用户220的针对自动化助理进行特定操作的请求可以在客户端设备202处被处理。通过允许设备soc 208睡眠以节省功率和其他资源并且唤醒以便验证来自用户220的某些口头话语,客户端设备202可以保留计算和功率资源,这对于使用可再充电电源210操作的客户端设备202而言可以是特别有利的。
45.图3示出客户端设备302的视图300,该客户端设备302可以基于与用户320和客户端设备302之间的交互相关联的一个或多个属性来确定设备soc 308的唤醒时间。用户320可以与客户端设备302交互以便调用自动化助理进行一个或多个不同功能。例如,客户端设备302可以是独立的扬声器设备322,其可以渲染诸如音乐之类的音频,和/或控制与客户端设备302一起连接到公共网络的各种其他客户端设备。客户端设备302可以由具有与客户端设备302说话和/或交互的不同风格的多个不同用户控制。为了适应用户之间的这种差异同
时也消除了功率和计算资源的浪费,客户端设备302可以确定设备soc 308的唤醒时间324,以限制设备soc 308将监视来自用户320的输入的时间量。
46.作为示例,用户320可以提供口头话语318,诸如“assistant,could you

(助理,您可以

)”,并且此后短暂地暂停以考虑如何继续该口头话语。用户320可以具有在与客户端设备302交互时展示此类暂停的习惯或历史。因此,表征用户320和客户端设备之间的先前交互的数据可以用于确定监视来自用户320的进一步输入多长时间而不浪费客户端设备302的资源。例如,响应于口头话语318,客户端设备302的dsp 304可以处理表征口头话语318的音频数据312以确定音频数据312是否表征诸如“助理”的调用短语。当dsp 304确定口头话语318包括调用短语时,dsp 304可以与设备soc 308通信以便使设备soc 308从睡眠模式转换到操作模式。在一些实现方式中,dsp 304还可以将音频数据312传送到设备soc 308,以确认用户320提供了调用短语。
47.在一些实现方式中,当设备soc 308确定用户320确实提供了调用短语时,设备soc 308可以进一步处理音频数据312,以便标识提供了口头话语318的用户。例如,设备soc 308可以在来自用户的许可的情况下访问语音识别模型,以便标识由音频数据312包含的一个或多个语音特性。基于由音频数据312包含的语音特性,设备soc 308可以根据口头话语318是否对应于一个或多个不同用户的特定语音特性来对他们进行排名。然后,最高排名的用户可以被选择为提供了口头话语318的用户,并且设备soc 308可以基于标识出的最高排名的用户来确定唤醒时间324。可替换地或附加地,设备soc 308可以使用一个或多个模型来选择用户,其可以用于生成对口头话语318的来源的预测。可替代地或附加地,音频数据312可以使用一个或多个模型来处理,其也可以用于生成唤醒时间324。
48.响应于确定用户320提供了调用短语,设备soc 308可以与wifi芯片306通信,以便通过诸如因特网的广域网初始化自动化助理。然而,在一些实现方式中,设备soc 308可以经由通过局域网与客户端设备302通信的本地设备来初始化自动化助理。当自动化助理正在初始化时,设备soc 308可以至少在等于唤醒时间324的时间量内监视客户端设备302的一个或多个接口。当唤醒时间324期满时,设备soc 308可以返回到睡眠模式,并且dsp 304可以接管监视来自客户端设备302的一个或多个接口的输出。
49.在一些实现方式中,唤醒时间324可以基于所确定的口头话语318和调用短语之间的相关度。例如,设备soc 308和/或dsp 304可以生成表征口头话语318和调用短语之间的相关度的值。唤醒时间量324可以随着相关度的增加而减少,并且唤醒时间量324可以随着相关度的减少而增加。换句话说,设备soc 308确定口头话语318在用于确认口头话语318包括调用短语的阈值的10%容限内,唤醒时间324可以是一分钟。然而,当设备soc 308确定口头话语318确实包括调用短语并且因此满足阈值时,唤醒时间324可以被设置为5秒。应当注意,唤醒时间可以是毫秒、秒、分钟和/或处理器的操作可以基于的任何其它时间值的任何量。例如,与调用短语更紧密相关的口头话语可以导致具有比由与调用短语不太紧密相关的不同口头话语引起的唤醒时间更少的总毫秒的唤醒时间。
50.图4示出用于操作计算设备418通过生成用于设备soc 444的唤醒时间、生成在dsp 442时钟和设备soc 444时钟之间的时间偏移、和/或采用wifi芯片434来响应播送请求而不将设备soc 444从睡眠模式转变出来,来消除计算资源的浪费的系统400。自动化助理404可以作为在诸如计算设备418和/或服务器设备402之类的一个或多个计算设备处提供的助理
应用的一部分来操作。用户可以经由助理接口与自动化助理404交互,所述助理接口可以为麦克风、相机、触摸屏显示器、用户接口和/或能够提供用户与应用之间的接口的任何其它设备。
51.例如,用户可通过向助理接口提供口头、文本和/或图形输入以使自动化助理404进行功能(例如,提供数据、控制外围设备、访问代理、生成输入和/或输出等)来初始化自动化助理404。计算设备418可以包括显示设备,该显示设备可以是包括触摸接口的显示面板,该触摸接口用于接收触摸输入和/或手势以允许用户经由触摸接口控制计算设备418的应用。在一些实现方式中,计算设备418可以缺少显示设备,从而提供可听用户界面输出,而不提供图形用户界面输出。此外,计算设备418可以提供用于从用户接收口头自然语言输入的用户接口,诸如麦克风。在一些实现方式中,计算设备418可以包括触摸接口并且可以没有相机,但是可以可选地包括一个或多个其他传感器。
52.计算设备418和/或其它计算设备434可以通过诸如因特网之类的网络440与服务器设备402通信。另外,计算设备418和其他计算设备434可以通过诸如wifi网络之类的局域网(lan)彼此通信。计算设备418可以将计算任务卸载到服务器设备402,以便节省计算设备418处的计算资源。例如,服务器设备402可以托管自动化助理404,且计算设备418可以将在一个或多个助理接口420处接收到的输入传送到服务器设备402。然而,在一些实现方式中,自动化助理404可以作为客户端自动化助理422托管在计算设备418处。
53.在各种实现方式中,自动化助理404的所有或少于所有方面可以实现在计算设备418上。在那些实现方式中的一些中,自动化助理404的方面经由计算设备418的客户端自动化助理422来实现,且与实现自动化助理404的其它方面的服务器设备402对接。服务器设备402可以可选地经由多个线程服务多个用户及其相关联的助理应用。在其中自动化助理404的所有或少于所有方面经由计算设备418处的客户端自动化助理422来实现的实现方式中,客户端自动化助理422可以是与计算设备418的操作系统分离的应用(例如,安装在操作系统“顶部上”),或可替代地直接由计算设备418的操作系统来实现(例如,被视为操作系统的应用,但与操作系统集成)。
54.在一些实现方式中,自动化助理404和/或客户端自动化助理422可以包括输入处理引擎406,其可以采用多个不同模块来处理计算设备418和/或服务器设备402的输入和/或输出。例如,输入处理引擎406可以包括语音处理模块408,其可以处理在助理接口420处接收到的音频数据以标识音频数据中所包含的文本。音频数据可以从例如计算设备418传送到服务器设备402,以便保留计算设备418处的计算资源。
55.用于将音频数据转换成文本的过程可以包括语音识别算法,其可以采用神经网络和/或统计模型来标识与单词或短语相对应的音频数据组。从音频数据转换的文本可以由数据解析模块410解析,并且作为可用于生成和/或标识来自用户的命令短语的文本数据而对自动化助理可用。在一些实现方式中,由数据解析模块410提供的输出数据可以被提供给参数模块412以确定用户是否提供对应于能够由自动化助理404和/或能够由自动化助理404访问的应用或代理进行的特定动作和/或例程的输入。例如,助理数据416可以作为客户端数据432被存储在服务器设备402和/或计算设备418处,并且包括定义能够由自动化助理404和/或客户端自动化助理422进行的一个或多个动作的数据,以及进行动作所必需的参数。
56.在一些实现方式中,计算设备可以包括wifi芯片434,其可包括存储器436和/或广播引擎438的至少一个或多个部分。广播引擎438可以通过网络440从一个或多个其他客户端设备接收广播数据,并且使用存储在存储器436中的缓存数据来生成响应数据。wifi芯片434可以存储表征可以与计算设备418相关联的可用服务、应用、硬件特征和/或任何其它性质和/或功能的数据。当计算设备418在睡眠模式操作时,其中相对于计算设备418在唤醒模式操作时设备soc 444消耗较少的功率和/或计算资源,wifi芯片434可以响应于来自其他客户端设备的播送请求,而不使设备soc444从睡眠模式转变出来。
57.例如,当在wifi芯片434处接收到来自客户端设备的请求,并且该请求标识也以存储器436中存储的数据为特征的目标服务时,广播引擎438可以使用来自存储器436的缓存数据生成响应数据,并且将响应数据提供给客户端设备。如果客户端设备选择计算设备418来使用目标服务,则客户端设备可以向计算设备418传送命令,并且wifi芯片434可以处理该命令并且使设备soc 444从唤醒模式转变出来并且转变到操作模式。然而,在广播引擎438确定存储器436不包括足够数据来确定计算设备418是否能够提供特定服务、初始化特定应用和/或以其他方式服务请求客户端设备的情况下,wifi芯片434可以与设备soc 444通信以便处理请求。在这种情况下,设备soc444可以生成响应数据,将响应数据提供给wifi芯片434,并且wifi芯片434可以将响应数据传送到客户端设备。
58.在一些实现方式中,计算设备418包括一个或多个助理接口420,其可以提供对客户端自动化助理422和/或自动化助理404的访问。用户可以提供一个或多个不同类型的输入以便调用客户端自动化助理422和/或自动化助理404。这样的输入可以包括口头输入,当设备soc 444在睡眠模式操作时,口头输入可以由数字信号处理器442处理。在计算设备418处可用的一个或多个语音识别模型440可以用于确定表征口头输入的音频数据是否包含用于初始化自动化助理的调用短语。此外,唤醒时间引擎448可以使用一个或多个语音识别模型440来确定设备soc 444应该保持唤醒的时间量,以便检测来自用户的后续输入。在一些实现方式中,唤醒时间量可以基于用户的口头话语与用于调用自动化助理的调用短语之间的相似度。替代地或附加地,唤醒时间量可以基于音频处理引擎430处理与口头话语相对应的音频数据并且标识提供了口头话语的用户。例如,音频处理引擎430可以使用客户端数据432和/或助理数据416来确定用户与自动化助理之间的交互的特性,诸如用户在与自动化助理的交互期间通常暂停多久。唤醒时间引擎448可以使用该信息来在用户和自动化助理之间的特定交互期间生成设备soc 444的唤醒时间。
59.附加地或可替代地,计算设备418的功率引擎426可以确定电源446的估计充电,并且将估计充电和/或操作时间量传达到唤醒时间引擎448。由引擎26的功率引擎估计的充电量和/或操作时间量可以由唤醒时间引擎448用来确定设备soc 444的唤醒时间。例如,当用户在与自动化助理交互时通常暂停多于平均用户并且电源446具有完全充电时,唤醒时间引擎448可以分配延长的唤醒时间,至少相对于如果估计充电低于50%则将另外分配的唤醒时间。替代地或附加地,当通常暂停的用户少于与计算设备418交互的平均用户,并且电源446具有完全充电时,唤醒时间引擎448可以至少基于用户的历史交互并且为了节省电力,相对于延长的唤醒时间分配较小的唤醒时间。
60.在一些实现方式中,计算设备418可以包括用于确定计算设备418所使用的时钟之间的偏移的时间偏移引擎424。例如,dsp 442可以操作第一时钟,而设备soc 444可以操作
第二时钟,在计算设备418的操作期间,该第二时钟可以偏移第一时钟。此偏移可以影响音频处理引擎430处的操作,尤其是当音频处理引擎430正对助理接口420的口头输入进行回声消除时。
61.在一些实现方式中,可以使用时间戳来确定dsp 442操作的第一时钟与设备soc 444操作的第二时钟之间的偏移。时间戳可以对应于一对时钟值,该一对时钟值包括使用第一时钟捕获的时钟值和在第二时钟捕获的另一时钟值。当dsp 442正操作以确定是否已经检测到调用短语并且设备soc 444处于睡眠模式时,dsp 442可以记录对应于当已经检测到调用短语时的“唤醒”时间的时钟值。当dsp 442使得设备soc 444从睡眠模式转变出来时,可以使用第一时钟和第二时钟来记录时间戳。然而,为了确定如相对于第二时钟所表达的“唤醒”时间,可以根据第一时钟与第二时钟之间的所确定的时间偏移来“缩放”和/或以其它方式调整时间戳的第二时钟值。
62.可以使用第一时间戳和第二时间戳来确定时间偏移,当设备soc 444和dsp 442都不处于睡眠模式时可以记录该时间偏移。第一时间戳可以对应于第一对时钟值,且第二时间戳可以对应于第二对时钟值。可以从第二对时钟值的第二dsp时钟值中减去第一对时钟值的第一dsp时钟值,以生成第一时钟差值。进一步地,可以从第二对时钟值的第二soc时钟值中减去第一对时钟值的第一soc时钟值,以生成第二时钟差值。此后,当dsp 442唤醒设备soc 444时,可以使用第一时钟差值和第二时钟差值之间的映射,以便确定何时接收到调用短语。例如,可以确定第二时钟差值与第一时钟差值的比率,并且该比率可以乘以dsp时钟值以便确定相应的设备soc时钟值。例如,当dsp 442唤醒设备soc 444时,可以将与用户提供了调用短语的时间相对应的dsp时钟值提供给设备soc 444。然后,设备soc 444可以将dsp时钟值映射到设备soc时钟值,以便确定用户何时提供了关于设备soc时钟的调用短语。然后,该值可以在音频数据的处理期间(诸如在回声消除期间)使用,以便分析音频数据的内容(例如,标识来自用户的口头话语的自然语言内容)。
63.图5示出用于在基于用户和计算设备之间的交互的一个或多个特征而选择的时间量内初始化计算设备的特定处理器的方法500。方法500可以由一个或多个处理器、应用和/或能够提供用户与自动化助理之间的接口的任何其它设备和/或模块来进行。方法500可以包括确定第一处理器是否已经检测到来自用户的口头话语的操作502。当第二处理器在睡眠模式操作时,第一处理器可以是可操作的。睡眠模式可以为其中第二处理器相对于其中诸如自动化助理等的一或多个应用经由第二处理器主动执行的操作模式,正消耗较少功率及/或较少计算资源的模式。在一些实现方式中,第一处理器可以是数字信号处理器,第二处理器可以是设备soc。第一处理器和第二处理器两者都可以被并入到使用可再充电电源(诸如电池、电容器和/或任何其他可再充电电源)操作的计算设备中。
64.当第一处理器检测到口头话语时,方法500可以前进到操作504。否则,当第一处理器没有检测到口头话语时,第一处理器可以继续监视计算设备的一个或多个麦克风以便确定用户是否已经提供口头话语。操作504可以包括由第一处理器确定口头话语是否包括特定调用短语。计算设备可以操作以在用户向计算设备已经提供一个或多个不同调用短语中的特定调用短语时将第二处理器从睡眠模式转变出来。调用短语可以是例如“assistant(助理)”和/或可以用于初始化应用的任何其他短语。当第一处理器确定口头话语包括调用短语时,方法500可以从操作504前进到操作508。
65.操作508可以包括将第二处理器从睡眠模式转变出来进入到操作模式。操作508可以由第一处理器响应于第一处理器标识出调用短语而进行。然而,当第一处理器确定口头话语不包括调用短语时,方法500可以从操作504前进到操作506。操作506可以包括绕过将第二处理器从睡眠模式转变出来进入到操作模式。换句话说,因为第一处理器没有检测到口头话语中的调用短语,所以第一处理器将返回到操作502以确定是否检测到另一口头话语。
66.方法500可以从操作508前进到操作510,其可以包括将音频数据从第一处理器提供到第二处理器。音频数据可以对应于由用户向计算设备提供的口头话语。在一些实现方式中,第一处理器可以操作第一调用短语模型以用于确定口头话语是否包括调用短语,而第二处理器可以操作第二调用短语模型以用于确定口头话语是否包括调用短语。第一模型可以对应于用于标识口头话语和调用短语之间的对应关系的较低阈值,我们第二调用短语模型可以对应于用于确定口头话语和调用短语之间的对应关系的、相对于第一模型的阈值的较高阈值。因此,当第二处理器接收音频数据时,第二处理器可以使用第二调用短语模型确定口头话语是否包括调用短语。
67.方法500可以包括由第二处理器确定音频数据表征调用短语的程度的可选操作512。音频数据表征调用短语的程度可以是量化音频数据和调用短语之间的一个或多个相似性的一个或多个度量。以此方式,一个或多个度量随后可以用于作出关于此后如何操作计算设备的确定。例如,表征音频数据表征调用短语的程度的值可以用于确定在转变回到睡眠模式之前在操作模式操作第二处理器的时间量(如果没有其它音频数据被传递到第二处理器以用于处理)。
68.在一些实现方式中,方法500可以包括由第二处理器确定由音频数据包含的语音特性的可选操作514。第二处理器可以操作语音识别模型,该语音识别模型可以用于在来自一个或多个用户的许可下标识已经提供口头话语的用户(例如,用户的对应用户简档)。例如,计算设备的每个用户可以用不同的和/或唯一的语音签名来说话,并且基于这些差异,语音识别模型可以确定与哪个用户提供了口头话语的预测相对应的排名。对应于最高排名的用户可以被选择作为向计算设备提供口头话语的用户。在来自用户的允许的情况下,使用语音识别模型的用户识别可用于确定在操作模式而不是睡眠模式的操作第二处理器的时间量。时间量可以基于一个或多个用户与自动化助理之间的先前交互。例如,可以为用户选择通常在提供后续命令中的调用短语之间延迟的更大量的时间,而可以为另一用户选择通常在提供调用短语和另一后续命令之间不延迟的更少量的时间。
69.方法500还可以包括由第二处理器在操作模式中操作至少基于用户与计算设备之间的交互的一个或多个特征的时间量的操作516。例如,在一些实现方式中,时间量可以基于音频数据表征调用短语的程度。可替代地或附加地,时间量可以基于包括音频数据的一个或多个语音特性和/或提供口头话语的用户的标识。可替代地或附加地,时间量可以基于与用户和计算设备之间的交互相对应的一个或多个场境特征,诸如一天中的时间、可用计算设备的数量、网络强度、存在于计算设备的某一邻近度内的用户的数量、和/或可以与用户和计算设备之间的交互相关联的任何其他特征。
70.图6示出用于使用与第一处理器和第二处理器之间的操作差异相对应的确定的时间偏移来处理音频数据的方法600。方法600可以由一个或多个处理器、应用和/或能够处理
音频数据的任何其它装置或模块来进行。在方法600中标识的第一处理器和第二处理器可以并入到由便携式电源(诸如电池和/或电容器)供电的计算设备中,且提供对自动化助理的访问。方法600可以包括由第一处理器确定在计算设备和/或与计算设备通信的另一设备处是否接收到口头话语的操作602。具体地,第一处理器可以处理来自一个或多个麦克风的输出,以确定用户是否向一个或多个麦克风已经提供口头话语。当第一处理器确定未接收到口头话语时,第一处理器可以继续监视一个或多个麦克风的输出以确定一个或多个用户是否已经接收到口头话语。
71.当第一处理器确定已经检测到口头话语时,方法600可以从操作602进行到操作604。操作604可以包括确定口头话语是否包括调用短语。第一处理器可以通过采用可以由第一处理器执行的第一位置短语模型来确定口头话语是否包括调用短语。具体地,第一调用短语模型可以用于分析一个或多个麦克风的输出,以确定口头话语是否包括调用短语。当确定口头话语已经包括调用短语时,方法600可以从操作604前进到操作608。
72.操作608可以包括将第二处理器从睡眠模式转变出来进入到操作模式。操作608可以由第一处理器响应于确定口头话语包括调用短语而初始化。当第一处理器确定口头话语不包括调用短语时,方法600可以从操作604前进到操作606。操作606可以包括绕过将第二处理器从睡眠模式转变出来进入到操作模式,并且代替将第二处理器从睡眠模式转变出来,方法600可以返回到操作602以用于检测是否向一个或多个麦克风已经提供后续口头话语。
73.方法600还可以包括由第二处理器使得计算设备使用音频输出数据来渲染音频输出的操作610。音频输出可以经由连接到计算设备的一个或多个接口来提供。例如,计算设备可以包括用于发出音频的一个或多个扬声器,和/或计算设备可以与包括一个或多个扬声器的另一计算设备通信。音频输出数据可以基于通过计算设备所连接到的网络接收到的数据和/或基于存储在计算设备的存储器中的数据。例如,音频输出可以是使用与存储在计算设备的存储器设备中的音乐相对应的音频数据来渲染的音乐。音频输出数据可以包括时间数据或与时间数据相关联,时间数据指示音频的部分已经由计算设备渲染和/或由一个或多个扬声器输出的时间。
74.方法600可以前进到确定是否使用第二处理器检测到调用短语的操作612。在一些实现方式中,第一处理器可以是数字信号处理器,并且第二处理器可以是设备soc。第一处理器可以操作第一语音识别模型,并且第二处理器可以操作第二语音识别模型。第一语音识别模型可以具有用于确定口头话语是否包括调用短语的较低阈值,并且第二语音识别模型可以具有用于确定口头话语是否包括调用短语的较高阈值。在一些实现方式中,第一处理器可以处理比由第二处理器处理的音频数据更低质量的音频数据。例如,第一处理器可以以相对于第二处理器监视一个或多个麦克风的采样速率较低的采样速率来监视计算设备的一个或多个麦克风的输出。替代地或另外,第一处理器可监视相对于由第二处理器监视的音频声道的数目较低的音频声道的总数。例如,第一处理器可以监视单个麦克风以用于确定口头话语是否由用户提供,并且第二处理器可以监视两个或更多个麦克风以确定口头话语和/或调用短语是否由用户提供。
75.第二处理器可以在音频输出正由计算设备渲染的同时监视一个或多个麦克风的输出。当第二处理器确定用户已经提供了调用短语时,方法600可以从操作612前进到操作
614。当第二处理器尚未确定用户提供了调用短语时,第二处理器可以继续监视计算设备的一个或多个麦克风的输出。操作614可以包括由第二处理器确定时间数据与表征由第二处理器检测到的调用短语的音频输入数据之间的时间偏移。在一些实现方式中,时间偏移可以基于第一处理器的时钟与第二处理器的另一时钟的时钟操作特性之间的差。然而,在一些实现方式中,第一处理器和第二处理器可以根据单个时钟来操作。
76.方法600还可以包括由第二处理器使用时间偏移来处理音频输入数据至少以促进移除音频输入数据的一个或多个特征的操作616。具体地,时间偏移可以在回声消除期间使用,以便从提供给一个或多个麦克风的音频输入中移除所渲染的音频输出的特征。通过考虑第一处理器和第二处理器之间的时间偏移,可以消除在回声消除过程期间明显的误差。这可以导致用户提供口头话语的与自动化助理响应于所述口头话语之间的较少延迟。此外,因为计算设备经由可再充电电源操作,所以可以通过减少至少第二处理器的延迟和总操作时间来延长电源的每次完成充电的操作时间。
77.图7示出使用包括在电池供电的计算设备中的wifi芯片向广播设备提供响应数据的方法700。该方法可以由一个或多个应用、处理器和/或能够处理网络数据的任何其他装置或模块来进行。方法700可以包括确定在wifi芯片处是否已接收到mdns广播数据的操作702。当确定在wifi芯片处已经接收到mdns广播数据时,方法700可以前进到操作704。操作704可以包括确定mdns广播数据是否标识了特定目标端口。当在操作702处在wifi芯片处未接收到mdns广播数据时,wifi芯片可以继续监视网络业务,以确定wifi芯片处接收到的任何数据包是否对应于mdns广播数据。
78.当mdns广播数据标识特定目标端口(诸如已经被指定用于在客户端设备之间播送媒体的端口)时,方法700可以从操作704前进至操作706。操作706可以包括确定存储在wifi芯片的存储器中的缓存数据是否表征mdns广播数据的一个或多个特征。当mdns广播数据未标识特定目标端口时,方法700可以从操作704前进到其中wifi芯片可以继续监视网络业务的操作702。
79.在一些实现方式中,在操作706,wifi芯片可以将mdns广播数据与存储在wifi芯片的存储器中的缓存数据进行比较。例如,wifi芯片可以存储通过网络先前提供的数据包,和/或响应于通过网络接收到的包而生成的数据。例如,wifi芯片可能先前已经通过指示包括wifi芯片的计算设备包括也包括在另一广播设备处的应用而响应来自另一广播设备的播放请求。可替换地或另外地,存储在wifi芯片的存储器中的数据可以指示计算设备是否能够经由广播请求采用一个或多个服务。可替换地或另外地,存储在wifi芯片的存储器中的数据可以指示计算设备的一个或多个硬件特征。可替换地或另外地,wifi芯片可以确定由wifi芯片存储的缓存数据是否表征与mdns广播数据相关联的一个或多个特征。这样,wifi芯片可以响应网络上广播的请求,而不唤醒计算设备的另一处理器(诸如设备soc)。
80.方法700可以从操作706前进到操作708,其可以包括基于缓存数据生成响应数据。当wifi芯片已经缓存表征与mdns广播数据相关联的一个或多个特征的数据时,可以进行操作708。例如,当缓存数据标识作为mdns广播的对象的应用时,wifi芯片可以生成响应数据以便向广播设备指示计算设备确实包括该特定应用。以此方式,计算设备将不需要唤醒另一处理器以便响应广播数据,由此消除对于电池供电设备可能受限的计算资源和/或功率资源的浪费。
81.当wifi芯片的缓存数据未表征与mdns广播数据相关联的一个或多个特征时,方法700可以从操作706前进到操作710。操作710可以包括使得计算设备的设备soc从第一操作模式转变到第二操作模式。在一些实现方式中,第一操作模式可以是与第二操作模式相比设备soc进行较少处理的模式。可替换地或者附加地,第一操作模式可以对应于相对于当在第二操作模式中操作时设备soc的功率消耗而言更低的设备soc功率消耗。
82.方法700可以从操作708和/或操作710前进到操作712。操作712可以包括使得计算设备传送要广播的响应数据和/或其他响应数据。当进行操作712时,其他响应数据可以至少部分地由设备soc生成。例如,当缓存数据没有标识特定特征(诸如与mdns广播数据相关的服务)时,设备soc可以用于生成其他响应数据,其可以使用设备soc能够访问的数据来标识与mdns广播数据相关的一个或多个特征。在一些实现方式中,当wifi芯片负责传送经由wifi芯片的存储器不能够访问的数据时,缓存数据可以由wifi芯片和/或设备soc更新。这样,wifi芯片可以响应网络上来自其它客户端设备的后续查询或请求,而无需唤醒设备soc,从而消除功率和计算资源的浪费。
83.图8是示例计算机系统810的框图。计算机系统810通常包括至少一个处理器814,其经由总线子系统812与多个外围设备通信。这些外围设备可以包括存储子系统824(包括例如存储器825和文件存储子系统826)、用户接口输出设备820、用户接口输入设备822和网络接口子系统816。输入和输出设备允许用户与计算机系统810交互。网络接口子系统816提供到外部网络的接口,并且耦合到其它计算机系统中的相应接口设备。
84.用户接口输入设备822可以包括键盘,诸如鼠标、跟踪球、触摸板或图形输入板等定点设备,扫描仪,结合到显示器中的触摸屏,诸如语音识别系统等音频输入设备,麦克风和/或其它类型的输入设备。通常,术语“输入设备”的使用旨在包括将信息输入到计算机系统810中或通信网络上的所有可能类型的设备和方式。
85.用户接口输出设备820可以包括显示子系统、打印机、传真机、或者诸如音频输出设备的非视觉显示器。显示子系统可以包括阴极射线管(crt)、诸如液晶显示器(lcd)的平板设备、投影设备、或用于创建可见图像的一些其他机构。显示子系统还可以诸如经由音频输出设备提供非视觉显示。通常,术语“输出设备”的使用旨在包括从计算机系统810向用户或另一机器或计算机系统输出信息的所有可能类型的设备和方式。
86.存储子系统824存储提供本文所述的一些或所有模块的功能性的编程和数据构造。例如,存储子系统824可以包括用于进行方法500、方法600、方法700的所选方面和/或用于实现第一客户端设备134、第二客户端设备102、第三客户端设备112、客户端设备202、客户端设备302、服务器设备402、计算设备418和/或本文所讨论的任何其他引擎、模块、芯片、处理器、应用等中的一个或多个的逻辑。
87.这些软件模块通常由处理器814单独执行或与其它处理器结合执行。存储子系统824中使用的存储器825可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(ram)830和其中存储固定指令的只读存储器(rom)832。文件存储子系统826可以提供用于程序和数据文件的永久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、cd

rom驱动器、光盘驱动器、或可移动介质盒。实现某些实现方式的功能性的模块可以由文件存储子系统826存储在存储子系统824中,或者存储在由处理器814能够访问的其他机器中。
88.总线子系统812提供用于使计算机系统810的各种组件和子系统如所期望的那样彼此通信的机制。虽然总线子系统812被示意性地示出为单个总线,但是总线子系统的替代实现方式可以使用多个总线。
89.计算机系统810可以是各种类型,包括工作站、服务器、计算集群、刀片服务器、服务器群或任何其他数据处理系统或计算设备。由于计算机和网络的不断改变的性质,图8中描绘的计算机系统810的描述仅旨在作为用于示出一些实现的目的具体示例。计算机系统810的许多其它配置可能具有比图8中描绘的计算机系统更多或更少的组件。
90.在本文描述的系统收集关于用户(或如本文经常称为“参与者”)的个人信息或可利用个人信息的情况下,可向用户提供控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社交动作或活动、职业、用户的偏好或用户的当前地理位置的信息)或控制是否和/或如何从内容服务器接收可能与用户更相关的内容的机会。而且,在存储或使用数据之前,可以以一种或多种方式处理某些数据,从而移除个人可识别信息。例如,可处理用户的身份,使得不能为用户确定个人可识别信息,或者可在获得地理位置信息的情况下概括用户的地理位置(诸如到城市、邮政编码或州级别),使得不能确定用户的特定地理位置。因此,用户可以控制如何收集和/或使用关于用户的信息。
91.虽然本文已经描述和示出了若干实现方式,但是可以利用用于进行本文描述的功能和/或获得本文描述的结果和/或一个或多个优点的各种其他装置和/或结构,并且这样的变化和/或修改中的每一个被认为在本文描述的实现的范围内。更一般地,本文描述的所有参数、尺寸、材料和构造都意味着是示例性的,并且实际的参数、尺寸、材料和/或构造将取决于使用本教导的一个或多个具体应用。本领域技术人员将认识到或能够使用不超过常规实验来确定本文所述的具体实现方式的许多等效物。因此,应当理解,前述实现方式仅以示例的方式呈现,并且在所附权利要求及其等同物的范围内,可以以与具体描述和要求保护的方式不同的方式来实践实现方式。本公开的实现方式涉及本文所述的每个单独的特征、系统、制品、材料、套件和/或方法。此外,如果这些特征、系统、物品、材料、套件和/或方法不是相互矛盾的,则两个或更多个这些特征、系统、物品、材料、套件和/或方法的任何组合包括在本公开的范围内。
92.在一些实现方式中,方法被阐述为包括操作,诸如在计算设备的第一处理器处处理麦克风的输出,所述输出对应于由用户提供给麦克风的口头话语,其中,计算设备包括第二处理器,当口头话语由用户提供时,第二处理器在睡眠模式中操作。方法还可以包括在第一处理器处确定输出是否至少部分地对应于用于调用经由计算设备能够访问的自动化助理的调用短语。该方法还可以包括,当第一处理器确定输出至少部分地对应于调用短语时:由第一处理器使得第二处理器从睡眠模式转变到操作模式;由第一处理器向第二处理器提供表征麦克风的输出的数据;由第二处理器基于从第一处理器接收到的数据确定数据表征调用短语的程度;由第二处理器基于数据表征调用短语的程度确定第二处理器保持在操作模式的唤醒时间量;以及基于确定第二处理器的唤醒时间量,使得第二处理器至少在唤醒时间量内在操作模式操作。
93.在一些实现方式中,方法还可以包括当第二处理器至少在唤醒时间量内在操作模式操作时:在第二处理器处从第一处理器接收表征来自用户或另一用户的单独口头话语的附加数据,并且由第二处理器使得自动化助理基于附加数据而响应于单独口头话语。在一
些实现方式中,第一处理器操作第一语音识别模型,并且第二处理器操作与第一语音识别模型不同的第二语音识别模型。在一些实现方式中,第一语音识别模型与用于确定数据表征调用短语的另一程度的第一准确度阈值相关联,并且第二语音识别模型与用于确定数据表征调用短语的程度的、不同于第一准确度阈值的第二准确度阈值相关联。在一些实现方式中,第二准确度阈值由口头输入和调用短语之间的更大相关度满足,并且更大相关度相对于用于满足第一准确度阈值的相关度。
94.在一些实现方式中,第一处理器是数字信号处理器(dsp),第二处理器是设备片上系统(soc),并且计算设备包括当设备soc处于操作模式时向第一处理器和第二处理器提供电力的一个或多个电池。在一些实现方式中,确定第二处理器保持在操作模式的唤醒时间量包括标识为第二处理器指定的先前确定的唤醒时间量;并且先前确定的唤醒时间量基于在用户提供口头话语之前用户与自动化助理之间的一个或多个交互。在一些实现方式中,该方法还可以包括,当第一处理器确定输出不至少部分地对应于调用短语时:由第一处理器绕过使得第二处理器从睡眠模式转变到操作模式。
95.在一些实现方式中,该方法还可以包括,当第一处理器确定输出至少部分地对应于调用短语时:由第二处理器基于表征麦克风的输出的数据,确定由麦克风的输出表征的用户语音特性,其中,确定第二处理器保持在操作模式中的唤醒时间量进一步基于由麦克风的输出表征的用户语音特性。
96.在其他实现方式中,方法被阐述为包括操作,诸如在计算设备的第一处理器处处理麦克风的输出,所述输出对应于由用户提供给麦克风的口头话语,其中,计算设备包括第二处理器,当口头话语由用户提供时,第二处理器在睡眠模式操作。在一些实现方式中,方法还可以包括在第一处理器处确定输出是否至少部分地对应于用于调用经由计算设备能够访问的自动化助理的调用短语。在一些实现方式中,该方法还可以包括,当第一处理器确定输出至少部分地对应于调用短语时:由第一处理器使得第二处理器从睡眠模式转变到操作模式,由第二处理器确定由麦克风的输出表征的语音特性;由第二处理器基于由输出表征的语音特性,确定第二处理器保持在操作模式的唤醒时间量;以及基于确定第二处理器的唤醒时间量,使得第二处理器至少在唤醒时间量内根据操作模式操作。
97.在一些实现方式中,方法还可以包括在第二处理器根据操作模式操作之后且当第二处理器随后根据睡眠模式操作时:在计算设备的第一处理器处确定来自麦克风的另一输出至少部分地对应于用于调用自动化助理的调用短语,其中,另一输入响应于单独用户向麦克风提供单独口头话语而提供;由第一处理器使得第二处理器从睡眠模式转变到操作模式;由第二处理器基于另一输出确定由来自麦克风的另一输出表征的另一语音特性;由第二处理器基于由另一输出表征的语音特性确定用于第二处理器保持在操作模式中的另一唤醒时间量,其中,另一唤醒时间量不同于唤醒时间量;以及基于确定第二处理器的唤醒时间量,使得第二处理器至少在另一唤醒时间量内根据操作模式操作。
98.在一些实现方式中,当确定口头话语是否由用户和/或单独用户提供给麦克风时,第二处理器操作语音特性模型。在一些实现方式中,计算设备包括当第二处理器根据操作模式操作时向第一处理器和第二处理器提供电力的一个或多个电池。在一些实现方式中,唤醒时间量基于在用户提供口头话语之前用户与自动化助理之间的一个或多个交互。
99.在其他实现方式中,方法被阐述为包括操作,诸如由计算设备的处理器确定计算
设备的麦克风的输入至少部分地对应于用于调用经由计算设备能够访问的自动化助理的调用短语。方法还可以包括由处理器基于麦克风的输入,使得计算设备的另一处理器从睡眠模式转变到操作模式。该方法还可以包括,在另一处理器从睡眠模式转变到操作模式之后:由另一处理器生成表征由计算设备经由与计算设备通信的一个或多个扬声器提供的音频输出的第一数据,其中,第一数据包括表征另一处理器生成第一数据的时间的第一时间数据;由处理器确定另一输入已经被提供给计算设备的麦克风;由处理器生成表征计算设备的麦克风的另一输入的第二数据,其中,第二数据包括表征处理器生成第二数据的另一时间的第二时间数据;由另一处理器确定另一处理器生成第一数据的时间与处理器生成第二数据的另一时间之间的时间偏移;由另一处理器使用时间偏移处理第二数据,以促进移除由一个或多个扬声器提供的音频输出的一个或多个特征;由另一处理器基于使用时间偏移处理第二数据确定麦克风的另一输入是否对应于用于调用经由计算设备能够访问的自动化助理口头话语。方法还可以包括当确定到麦克风的另一输入对应于用于调用自动化助理的口头话语时:由另一处理器使得自动化助理经由与计算设备通信的接口提供响应输出。
100.在一些实现方式中,使用时间偏移处理第二数据以促进移除音频输出的一个或多个特征包括使用第二数据和音频数据来进行声学回声消除aec过程。在一些实现方式中,时间偏移对应于处理器的时钟和另一处理器的另一时钟的时钟操作特性的差。在一些实现方式中,时间偏移基于:使用时钟确定的第一时钟值与使用另一时钟确定的第二时钟值之间的差。在一些实现方式中,当另一处理器处于操作模式中时确定第一时钟值和第二时钟值。在一些实现方式中,第一时钟值和第二时钟值在另一处理器处于操作模式时被确定。在一些实现方式中,时间偏移通过将时钟值之间的差的比率乘以与另一时间相对应的时间值来确定。在一些实现方式中,计算设备包括当另一个处理器根据操作模式操作时向处理器和另一个处理器提供电力的一个或多个电池。在一些实现方式中,处理器是数字信号处理器(dsp)并且另一处理器是设备片上系统(soc)。
101.在其它实现方式中,阐述了一种方法,包括操作,诸如从广播设备并且在计算设备的wifi芯片处接收来自广播设备的多播域名系统(mdns)广播数据,其中,计算设备包括在计算设备的wifi芯片接收到mdns广播数据时在第一操作模式操作的设备片上系统soc。方法还可以包括由wifi芯片基于mdns广播数据确定由mdns广播数据所标识的目标端口是否对应于经由计算设备能够访问的特定端口。方法还可以包括当由mdns广播数据所标识的目标端口对应于经由计算设备能够访问的特定端口时:当设备soc在第一操作模式操作时,基于目标端口与特定端口相对应,访问存储在能够访问wifi芯片的存储器设备中的缓存广播设备数据;基于存储在存储器中的缓存广播设备数据确定缓存广播设备数据是否表征由mdns广播数据指定的广播设备的一个或多个特征;以及当缓存广播设备数据表征广播设备的一个或多个特征时:基于缓存广播设备数据来生成响应数据;以及将响应数据传送到广播设备。
102.在一些实现方式中,该方法还可以包括,当由mdns广播数据所标识的目标端口对应于经由计算设备能够访问的特定端口时,并且当缓存广播设备数据未表征广播设备的一个或多个特征时:基于缓存广播设备数据未表征一个或多个特征,使得设备soc从第一操作模式转变到第二操作模式,其中,与设备soc在第一操作模式操作时的功率消耗相比,第二
操作模式与设备soc的更高功率消耗相关联。
103.在一些实现方式中,计算设备包括当设备soc根据第二操作模式操作时向wifi芯片和设备soc提供电力的一个或多个电池。在一些实现方式中,确定缓存广播设备数据是否表征广播设备的一个或多个特征包括:确定缓存广播设备数据是否标识初始化从广播设备传送mdns广播数据的应用。在一些实现方式中,确定缓存广播设备数据是否表征广播设备的一个或多个特征包括:确定缓存广播设备数据是否标识由广播设备正请求的服务。在一些实现方式中,该方法还可以包括,当由mdns广播数据所标识的目标端口对应于经由计算设备能够访问的特定端口时,并且当缓存广播设备数据未表征广播设备的一个或多个特征时:使得设备soc基于mdns广播数据生成其他响应数据,以及由wifi芯片将其它响应数据传送到广播设备。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜