利用本地文本响应映射呈现对用户的口头话语的响应的制作方法
- 国知局
- 2024-10-21 15:04:24
背景技术:
1、基于语音的用户界面越来越多地用于控制计算机和其他电子设备。基于语音的用户界面的一个尤其有用的应用是随同便携式电子设备,诸如移动电话、手表、平板电脑、头戴式设备、虚拟或增强现实设备等。另一有用的应用是随同车载电子系统,诸如结合导航和音频功能的汽车系统。这种应用通常以非传统形式因素为特征,这些非传统形式因素限制了更传统的键盘或触摸屏输入的效用和/或在期望鼓励用户保持专注于其他任务的情况(诸如当用户正在驾驶或行走时)下的用途。
2、基于语音的用户界面已经从只能理解简单直接命令的早期初级界面持续发展到响应自然语言请求并且能够理解场境并管理与用户的往返对话或会话的更复杂的界面。许多基于语音的用户界面结合了将人类语音的音频记录转换成文本的初始讲话到文本转换、以及在试图确定用户的请求的含义中分析文本的语义分析。基于用户的记录语音的确定含义,可以采取行动,诸如执行搜索或以其他方式控制计算机或其他电子设备。
3、用户可以经由口头话语向客户端设备提交查询和/或命令,从而口头指示提供什么用户感兴趣的信息和/或用户感兴趣执行的动作。典型地,口头话语由客户端设备的一个或多个麦克风检测,并被捕获为音频数据。音频数据被传输到远程系统以便进行进一步处理。远程系统处理音频数据以确定适当的响应,并将该响应传输给客户端设备,以便由客户端设备进行呈现。
4、由远程系统对音频数据进行的处理可以包括使用讲话到文本(speech-to-text,stt)组件来基于音频数据生成文本,其中所生成的文本反映了由音频数据捕获的口头话语。该处理还可以包括在试图确定文本的含义或意图——以及基于所确定的含义要执行的动作时,使用自然语言处理器(nlp)和/或其他语义处理器处理所生成的文本。然后,可以执行该动作以生成相对应的响应,并将该相对应的响应传输到从其接收音频数据的客户端设备。
5、远程系统的组件可以使大量计算资源致力于处理音频数据,使得能够实施比在客户端设备中本地实施的更复杂的讲话识别和语义分析功能。然而,客户机-服务器方法必然要求客户机在处理语音输入时在线(即,与远程系统通信)。在各种情况下,可能无法在所有时间和所有位置保证连续的在线连接,因此每当客户端设备“离线”并因此未连接到在线服务时,在该设备中,客户端-服务器的基于语音的用户界面可能被禁用。此外,客户端-服务器方法可能消耗大量带宽,因为它需要从客户端向远程系统的组件传输高带宽音频数据。在远程系统正在处理来自大量客户端设备的请求的一般情况下,带宽消耗被放大。更进一步地,客户端-服务器方法在向用户呈现响应时可能表现出显著的延迟,这可能导致基于语音的用户-客户端交互被延长,并且客户端设备的资源将被利用持续延长的持续时间。客户端-服务器方法的延迟可能是传输延迟和/或由远程系统执行的语音到文本处理、语义处理和/或响应生成方面的延迟的结果。更进一步地,在客户端-服务器方法中客户端和服务器之间的消息交换可能需要相对大量的功率消耗以便进行消息的传输和接收。这一点的影响可能尤其被客户端设备感受到,该客户端设备的可用功率通常由具有相对有限的存储容量的设备上的电池提供。
技术实现思路
1、本文公开的实施方式涉及由客户端设备生成和/或利用在客户端设备上本地存储的文本响应映射。文本响应映射可以包括多个映射,其中映射中的每一个定义相对应的文本和相对应的响应之间的相对应的直接关系。基于先前根据由客户端设备捕获的先前的音频数据生成的相对应的文本并且基于先前响应于向远程系统传输先前的音频数据和相对应的文本中的至少一个而从远程系统接收的相对应的响应,在文本响应映射中定义映射中的每一个。
2、当由客户端设备检测到口头话语时,客户端设备可以利用本地语音到文本/讲话到文本(stt)模型来生成对应于口头话语的文本。客户端设备然后可以确定所生成的文本是否与文本响应映射的相对应的文本中的任何一个相匹配。如果是并且可选地如果满足一个或多个其他条件(例如,基于本文描述的置信度得分的一个或多个条件),则客户端设备可以利用文本响应映射的相对应的映射来选择与相对应的文本具有直接关系的响应,如相对应的映射所定义的那样。客户端设备然后可以经由客户端设备的一个或多个输出设备(例如,一个或多个扬声器和/或一个或多个显示器),从其本地存储器立即呈现响应。响应于口头话语来呈现该响应,并且呈现响应可以包括呈现响应的文本、响应的一个或多个图形、响应的音频数据(或者使用本地存储的文本到讲话(tts)处理器从响应转换的音频数据)和/或其他内容。响应可以附加地或替代性地包括要由客户端设备传输的命令,诸如被传输(例如,经由wifi和/或蓝牙)到一个或多个外围设备以控制一个或多个外围设备的命令。如下所解释那样,在已经确定由本地语音到文本/讲话到文本(stt)生成的文本与文本响应映射的相对应的文本中的任何一个相匹配的情况下,响应可以由客户端设备提供,而无需客户端设备向远程系统传输指示检测到的口头话语的数据。
3、以这些和其他方式,客户端设备可以呈现响应,而不需要执行和/或不等待执行本地和/或远程资源密集型的和延迟诱导的以下操作:用于确定文本的含义或意图的文本的语义处理;以及基于所确定的含义或意图生成响应。因此,当所生成的文本与文本响应映射的相对应的文本中的一个相匹配时,可以以减少的延迟和/或减少的资源消耗来呈现与文本(如由文本响应映射的相对应的映射所定义)具有直接关系的响应。而且,在各种情况下,可以在没有(捕获口头话语的)音频数据或基于音频数据生成的文本到远程系统的消耗带宽的传输的情况下呈现响应。这可以进一步提高客户端设备的电池寿命,或者另外地释放功率资源用于在客户端设备处进行其他任务,因为到远程系统/来自远程系统的消息的功率密集型传输和接收减少了。
4、在一些实施方式中,提供了一种方法,该方法包括以下步骤:客户端设备捕获用户的口头话语的音频数据,并处理该音频数据以生成文本。在这样的实施方式中,stt处理在客户端设备上本地执行,并且不需要将音频数据提交到云。接下来,访问文本响应映射,该文本响应映射包括映射到响应的文本。这个映射是基于先前文本来构建的,该先前文本是根据被映射到当先前提交音频数据时从远程系统接收的响应的、用户的先前口头话语的音频数据生成的。客户端设备然后确定文本响应映射是否包括所生成的文本的文本映射。响应于确定文本响应映射包括与文本相匹配的文本映射,由客户端设备选择并呈现这个文本映射的映射的响应。
5、如果文本未包括在映射中,则将音频数据(和/或对应于音频数据的、客户端设备生成的文本)提交给远程系统以便进行进一步处理。由远程系统执行stt和/或nlp以确定对应于口头话语的动作,利用所生成的动作来生成响应,并将该响应提供给客户端设备。然后,客户端设备可以呈现响应,并将生成的文本与响应一起存储。当用户随后提交相同的口头话语,客户端设备可以本地处理音频数据以生成相对应的文本、检查该文本是否包括在映射中,并且在不需要nlp处理和提交给服务器的情况下呈现映射的响应。因此,不仅客户端设备上的本地映射节省了计算时间,如果映射已经包括文本的话,则该方法可以离线执行。
6、在某些情况下,响应是动态的,并且对于相同的口头话语可能导致不同的响应。例如,“what time is it right now(现在几点了)”的口头话语是动态查询,该动态查询在其每次提交时不同。动态查询的其他示例包括天气、与用户的位置相关的查询以及时间敏感的其他查询。另一方面,一些查询可以是静态的,并且对于给定的话语很少(如果有的话)导致不同的响应。例如,“what is the capital of the united states(美国的首都是什么)”总是会导致相同的响应,而不管话语是何时提交的。在某些情况下,响应可能在给定的时间段内是静态的,并且然后过期。例如,“what is the weather today(今天天气如何)”可能会在一天的持续时间中保持是静态的,并且随后在给定时间过期,诸如在午夜。
7、在一些实施方式中,为了帮助保持在客户端设备上本地存储的文本的映射的响应是最新的,客户端设备即使在映射中标识了文本的情况下也可以向远程系统提交音频数据或指示口头话语的其他数据(诸如对应于音频数据的客户端设备生成的文本)。客户端设备可以提供映射的响应,并且一旦从远程系统接收响应,就可以用映射的响应来检查所接收的响应。如果映射的响应与接收的响应匹配,则客户端设备可以更新映射以反映响应是静态的。例如,可以更新与每个文本映射相关联的置信度得分,以反映接收到与存储在映射中相同的响应。如果接收到不同的响应,可以更新置信度得分以反映所存储的和所接收的响应不匹配。例如,在某些情况下,如果响应不匹配,则可以移除文本映射,以确保随后不向用户提供过时的响应。在某些情况下,映射可能被标记为过时,而不移除文本映射。在一些情况下,仅当与映射相关联的置信度得分满足阈值的情况下,才可以提供映射的响应。例如,在映射的响应的置信度得分达到代替向远程系统提供音频数据或指示口头话语的其他数据而提供映射的响应的水平之前,服务器响应可以被提供必要的次数(其中每个服务器响应是相同的)。可选地,当置信度得分满足阈值时,客户端设备可以自动不向远程系统传输音频数据或指示口头话语的其他数据。替代性地,在客户端设备向远程系统传输音频数据或指示口头话语的其他数据的实施方式中,客户端设备可以在从远程系统接收回复之前从其本地存储器提供映射的响应。
8、在一些实施方式中,提供了一种由客户端设备的一个或多个处理器实施的方法,并且该方法包括经由客户端设备的至少一个麦克风捕获音频数据,该音频数据捕获用户的口头话语。该方法还包括处理音频数据以生成对应于口头话语的当前文本。处理音频数据以生成当前文本利用在客户端设备上本地存储的语音到文本模型。该方法还包括访问本地存储在客户端设备上的文本响应映射。文本响应映射包括多个映射,其中映射中的每一个基于先前根据由客户端设备捕获的先前的音频数据生成的相对应的文本并且基于先前响应于向远程系统传输先前的音频数据和相对应的文本中的至少一个而从远程系统接收的相对应的响应来定义相对应的文本和相对应的响应之间的相对应的直接关系。该方法还包括确定文本响应映射的相对应的文本中的任何一个是否与当前文本相匹配。该方法还包括,响应于确定文本响应映射的相对应的文本中的给定文本与当前文本相匹配而:选择文本响应映射的相对应的响应中的给定响应,并使得该给定响应经由与客户端设备相关联的一个或多个用户界面输出设备被呈现。选择给定响应是基于包括映射中的将给定响应定义为与给定文本有直接关系的映射的文本响应映射。
9、该技术的这些和其他实施方式可以包括以下特征中的一个或多个。
10、在一些实施方式中,该方法还包括:将音频数据或当前文本传输到远程系统;响应于传输音频数据或当前文本,从远程系统接收响应于口头话语的服务器响应;将服务器响应与给定响应进行比较;以及基于比较来更新文本响应映射。在那些实施方式的一些版本中,接收服务器响应发生在给定响应的至少一部分已经经由一个或多个用户界面输出设备被呈现之后。在这些实施方式的一些附加或替代版本中,将服务器响应与给定响应进行比较指示服务器响应不同于给定响应。在这些附加或替代性版本中的一些版本中,更新文本响应映射包括:基于指示服务器响应不同于给定响应的比较,更新将给定响应定义为与给定文本具有直接关系的映射,以将服务器响应定义为与给定文本具有直接关系。在这些附加或替代性版本中的一些版本中,更新文本响应映射包括:基于指示服务器响应不同于给定响应的比较来从文本响应映射中移除将给定响应定义为与给定文本具有直接关系的映射。在这些附加或替代性版本中的一些版本中,更新文本响应映射包括:基于指示服务器响应不同于给定响应的比较来在文本响应映射中存储防止给定文本被映射到任何响应的数据。
11、在包括更新文本响应映射的一些实施方式中,更新文本响应映射包括调整与将给定响应定义为与给定文本具有直接关系的映射相关联的置信度得分。在那些实施方式的一些版本中,调整与将给定响应定义为与给定文本具有直接关系的映射相关联的置信度得分包括:如果比较指示给定响应与服务器响应相匹配,则将置信度得分调整为更多地指示置信度。在这些实施方式的一些附加或替代版本中,选择给定响应还基于与映射相关联的置信度得分满足阈值。
12、在一些实施方式中,该方法还包括:经由客户端设备的至少一个麦克风捕获附加音频数据,该附加音频数据捕获附加口头话语;利用在客户端设备上本地存储的语音到文本模型,处理附加音频数据以生成对应于附加口头话语的附加文本;确定文本响应映射的相对应的文本中的任何一个是否与附加文本相匹配;以及响应于确定文本响应映射的相对应的文本中没有一个与附加文本相匹配而:向服务器系统传输附加文本和附加音频数据中的至少一个、响应于传输附加文本和附加音频数据中的至少一个而从服务器系统接收附加响应,以及使得附加响应经由与客户端设备相关联的用户界面输出设备中的一个或多个被呈现。在这些实施方式的一些中,该方法还包括:从服务器系统与附加响应一起接收服务器响应是附加文本的静态响应的指示;以及响应于接收到服务器响应是附加文本的静态响应的指示而向文本响应映射添加定义附加文本和附加响应之间的新的直接关系的新映射。
13、在一些实施方式中,当执行该方法时,客户端设备缺乏到互联网的任何连接。
14、在一些实施方式中,该方法还包括确定与将给定响应定义为与给定文本具有直接关系的映射相关联的置信度得分。在这些实施方式中的一些实施方式中,使得给定响应被呈现包括:响应于置信度得分满足阈值而使得给定响应被呈现,而不将音频数据或当前文本传输到远程系统。
15、在一些实施方式中,该方法还包括:在呈现给定响应之前,向远程系统传输音频数据或当前文本;确定与将给定响应定义为与给定文本具有直接关系的映射相关联的置信度得分;以及基于置信度得分,确定用于等待响应于传输音频数据或当前文本从远程系统接收响应于口头话语的服务器响应的阈值时间量。在这些实施方式中的一些实施方式中,使得给定响应被呈现包括:当在阈值时间量到期之前没有接收到服务器响应时,使得给定响应在阈值时间量到期时被呈现。
16、在一些实施方式中,提供了一种由客户端设备的一个或多个处理器实施的方法,并且该方法包括经由客户端设备的至少一个麦克风捕获音频数据,该音频数据捕获用户的口头话语;以及处理音频数据以生成对应于口头话语的当前文本。处理音频数据以生成当前文本利用在客户端设备上本地存储的语音到文本模型。该方法还包括访问本地存储在客户端设备上的文本响应映射。文本响应映射包括多个映射,并且映射中的每一个基于先前根据由客户端设备捕获的先前的音频数据生成的相对应的文本并且基于先前响应于向远程系统传输先前的音频数据和相对应的文本中的至少一个而从远程系统接收的相对应的响应来定义相对应的文本和相对应的响应之间的相对应的直接关系。该方法还包括:由客户端设备确定文本响应映射的相对应的文本未能与当前文本相匹配;向远程系统传输音频数据或当前文本;响应于提交音频数据或当前文本从远程系统接收响应;以及通过添加给定的文本映射来更新文本响应映射。给定的文本映射定义了当前文本和响应之间的直接关系。该方法还包括:在更新文本响应映射之后,捕获第二音频数据;利用在客户端设备上本地存储的语音到文本模型,处理第二音频数据以生成第二文本;基于文本响应映射来确定当前文本与第二文本相匹配;并且响应于确定当前文本与第二文本相匹配,并且基于包括定义当前文本和响应之间的直接关系的给定文本映射的文本响应映射而:使得响应经由与客户端设备相关联的一个或多个用户输出设备被呈现。
17、该技术的这些和其他实施方式可以可选地包括以下特征中的一个或多个。
18、在一些实施方式中,该方法还包括与该响应一起接收该响应是否是静态的指示。在这些实施方式中的一些中:响应于指示响应是静态的指示而发生将给定的文本映射添加到文本响应映射。
19、在一些实施方式中,更新文本响应映射还包括存储与给定文本映射相关联的置信度得分,其中置信度得分指示响应是静态的可能性。在这些实施方式的一些中,该方法还包括:向远程系统提交第二音频数据;响应于提交第二音频数据,从远程系统接收第二服务器响应;以及基于第二服务器响应来进一步更新置信度得分。
20、在一些实施方式中,该方法还包括:与响应一起接收响应仅在直到期事件发生之前为止是静态的指示;利用给定的文本映射更新文本响应映射以包括到期事件的指示;以及当到期事件发生时,从文本响应映射中移除给定的文本映射。
21、在一些实施方式中,更新文本响应映射包括从文本响应映射中移除一个或多个映射。
22、一些实施方式包括计算装置,该计算装置包括一个或多个处理器和存储计算机可执行指令的至少一个存储器,该计算机可执行指令在被一个或多个处理器执行时,使得一个或多个处理器执行一种方法,诸如上文或本文别处描述的方法。计算装置可以是例如客户端设备。一个或多个处理器可以包括例如一个或多个中央处理单元、一个或多个图形处理单元和/或一个或多个张量处理单元。一些实施方式包括包含计算机可执行指令的非暂时性计算机可读介质,这些计算机可执行指令在由至少一个计算装置的一个或多个处理器执行时使得执行一种方法,诸如上文或本文别处描述的方法。
23、应当理解的是,本文更详细描述的前述构思和附加构思的所有组合被认为是本文公开的主题的一部分。例如,出现在本公开的结尾的所要求保护的主题的所有组合被认为是本文公开的主题的一部分。
本文地址:https://www.jishuxx.com/zhuanli/20241021/320398.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。