CN117877477A - 用于基于语音发起定制装置动作的***和方法 - Google Patents

用于基于语音发起定制装置动作的***和方法 Download PDF

Info

Publication number
CN117877477A
CN117877477A CN202410003320.6A CN202410003320A CN117877477A CN 117877477 A CN117877477 A CN 117877477A CN 202410003320 A CN202410003320 A CN 202410003320A CN 117877477 A CN117877477 A CN 117877477A
Authority
CN
China
Prior art keywords
action
client
data processing
processing system
actions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410003320.6A
Other languages
English (en)
Inventor
王波
苏巴亚·文卡塔
克里斯·拉姆斯代尔
普拉维尔·古普塔
查德·约什卡瓦
阿方索·戈麦斯-约尔达娜
凯文·延
徐材源
郑蓝天
盛相洙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN117877477A publication Critical patent/CN117877477A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开了用于基于语音发起定制装置动作的***和方法。用于实现与电子装置的基于语音的交互的***和方法可以包括:数据处理***,所述数据处理***维护多个装置动作数据集和每个装置动作数据集的相应标识符。所述数据处理***可以从电子装置接收表示语音查询的音频信号和标识符。所述数据处理***可以通过使用所述标识符来识别装置动作数据集。所述数据处理***可以基于所述音频信号的内容来从装置动作数据集中识别装置动作。然后,所述数据处理***可以从所述装置动作数据集中识别与所述装置动作相关联的命令,并且将所述命令发送至执行装置以便执行。

Description

用于基于语音发起定制装置动作的***和方法
分案说明
本申请属于申请日为2018年05月07日的中国发明专利申请201880028784.5的分案申请。
技术领域
本申请涉及用于基于语音发起定制装置动作的***和方法。
相关申请的交叉引用
本申请要求2018年3月7日提交的标题为“DISTRIBUTED IDENTIFICATION INNETWORKED SYSTEM”的美国临时专利申请第62/640,007号的权益和优先权,其通过引用的方式全部并入本文。
背景技术
数字虚拟助理(DVA)可以与客户端装置交互。例如,客户端装置的用户可以经由基于语音或者基于聊天的查询来发起在线任务(例如,在线搜索或者在线交易)。DVA可以允许与客户端装置的免提交互。
发明内容
根据本公开的至少一个方面,一种用于实现与客户端装置的基于语音的交互的数据处理***可以包括:通信接口;存储器;装置动作定制组件;以及自然语言处理器组件。通信接口可以从计算装置接收装置动作数据和与该装置动作数据相关联的标识符。装置动作数据可以指示由多个客户端装置支持的多个装置动作和多个装置可执行命令。该多个装置可执行命令中的每个装置可执行命令可以配置为触发对多个装置动作中的对应装置动作的执行。存储器可以存储装置动作数据。装置动作定制组件可以将装置动作数据映射至标识符。通信接口可以从多个客户端装置中的客户端装置接收音频信号和标识符。客户端装置可以响应于基于语音的查询而获得音频信号。自然语言处理器组件可以通过使用标识符和与音频信号相关联的内容来识别由多个客户端装置支持的多个装置动作中的装置动作。装置动作定制组件可以识别多个装置可执行命令中与装置动作对应的装置可执行命令。通信接口可以响应于基于语音的查询而向客户端装置传输要执行的装置可执行命令以使得执行装置动作。
本公开的至少一个方面涉及一种实现与客户端装置的基于语音的交互的方法。该方法可以包括:数据处理***从计算装置接收装置动作数据和与该装置动作数据相关联的标识符。装置动作数据可以指示由多个客户端装置支持的多个装置动作和多个装置可执行命令。该多个装置可执行命令中的每个装置可执行命令可以触发对多个装置动作中的对应装置动作的执行。该方法可以包括数据处理***将装置动作数据存储在存储器中。该方法可以包括数据处理***将装置动作数据映射至标识符。该方法可以包括数据处理***从多个客户端装置中的客户端装置接收音频信号和标识符。客户端装置可以响应于基于语音的查询而获得音频信号。该方法可以包括数据处理***使用标识符和与音频信号相关联的内容来识别由多个客户端装置支持的多个装置动作中的装置动作。该方法可以包括数据处理***识别多个装置可执行命令中与装置动作对应的装置可执行命令。该方法可以包括数据处理***响应于基于语音的查询而向客户端装置传输要执行的装置可执行命令以使得执行装置动作。
根据本公开的至少一个方面,提供了一种用于支持基于语音的交互的电子装置。该电子装置可以包括音频接收器、通信接口、以及命令执行组件。音频接收器可以生成与输入的基于语音的查询对应的音频信号。该电子装置可以与由远程数据处理***维护的装置动作数据和该装置动作数据的标识符相关联。装置动作数据可以包括由与装置动作数据相关联的电子装置支持的多个装置动作和多个装置可执行命令。每个装置可执行命令可以配置为触发对多个装置动作中的对应装置动作的执行。通信接口可以响应于基于语音的查询而将标识符和音频信号传输至远程数据处理***。该远程数据处理***可以维护将标识符映射至多个装置动作和多个装置可执行命令的一个或者多个数据结构。通信接口可以响应于对音频信号的传输而从远程数据处理***接收多个装置可执行命令中的装置可执行命令。数据处理***可以基于标识符、音频信号以及一个或者多个数据结构来识别装置可执行命令。命令执行组件可以配置为执行装置可执行命令以执行装置动作。
根据本公开的至少一个方面,提供了一种支持基于语音的交互的方法。该方法可以包括:电子装置生成与输入的基于语音的查询对应的音频信号。电子装置可以与由远程数据处理***维护的装置动作数据和该装置动作数据的标识符相关联。装置动作数据可以包括由与装置动作数据相关联的电子装置支持的多个装置动作和多个装置可执行命令。每个装置可执行命令可以配置为触发对多个装置动作中的对应装置动作的执行。该方法可以包括电子装置响应于基于语音的查询而将标识符和音频信号传输至远程数据处理***。该远程数据处理***可以维护将标识符映射至多个装置动作和多个装置可执行命令的一个或者多个数据结构。该方法可以包括电子装置响应于对音频信号的传输而从远程数据处理***接收多个装置可执行命令中的装置可执行命令。数据处理***可以基于标识符、音频信号以及一个或者多个数据结构来识别装置可执行命令。该方法可以包括:电子装置执行装置可执行命令以执行装置动作。
根据本公开的至少一个方面,提供了一种响应于基于语音的交互而提供内容的数据处理***。该数据处理***可以包括存储器、装置动作定制组件、通信接口、以及自然语言处理器组件、以及内容选择器组件。存储器可以存储包括由多个电子装置支持的多个装置动作-命令对的装置动作数据。每个装置动作-命令对可以包括多个装置动作中的相应装置动作和多个装置可执行命令中的相应装置可执行命令以触发对相应装置动作的执行。装置动作定制组件可以标识符映射至由多个电子装置支持的多个装置动作-命令对中的每个装置动作-命令对。通信接口可以从电子装置接收标识符和电子装置响应于基于语音的查询而获得的音频信号。自然语言处理器组件可以通过使用与音频信号相关联的内容和标识符来识别多个装置动作-命令对中的装置动作-命令对。装置动作定制组件可以基于装置动作数据或者装置命令对来识别基于语音的查询的场境(context)。内容选择器组件可以基于该基于语音的查询的场境来选择数字分量。通信接口可以将数字分量和与装置动作-命令对相关联的装置可执行命令传输至电子装置。装置可执行命令在被执行时可以使得执行与装置动作-命令对相关联的装置动作,并且数字分量可以由电子装置呈现(或者渲染)。
根据本公开的至少一个方面,提供了一种响应于基于语音的交互而提供内容的方法。该方法可以包括数据处理***在存储器中存储包括由多个电子装置支持的多个装置动作-命令对的装置动作数据。每个装置动作-命令对可以包括多个装置动作中的相应装置动作和多个装置可执行命令中的相应装置可执行命令以触发对相应装置动作的执行。该方法可以包括数据处理***将标识符映射至由多个电子装置支持的多个装置动作-命令对中的每个装置动作-命令对。该方法可以包括数据处理***从电子装置接收标识符和电子装置响应于基于语音的查询而获得的音频信号。该方法可以包括数据处理***使用与音频信号相关联的内容和标识符来识别多个装置动作-命令对中的装置动作-命令对。该方法可以包括数据处理***基于装置动作数据或者装置命令对来识别基于语音的查询的场境。该方法可以包括数据处理***基于该基于语音的查询的场境来选择数字分量。该方法可以包括数据处理***将数字分量和与装置动作-命令对相关联的装置可执行命令传输至电子装置。用于使得执行装置动作的装置可执行命令可以与装置动作-命令对相关联,并且数字分量可以由电子装置呈现。
下面详细讨论了这些以及其它方面和实施方式。前述信息和以下详细描述包括各个方面和实施方式的说明性示例,并且提供了用于理解要求保护的方面和实施方式的性质和特性的概述或者框架。附图提供了对各个方面和实施方式的说明和进一步理解,并且被并入本说明书以及构成本说明书的一部分。
附图说明
不旨在按比例绘制附图。各个附图中的相似附图标记和标号指示相似的元件。为了清楚起见,并非可以在每个附图中标注每个组件。
在附图中:
图1图示了用于使电子装置能够具有基于语音的交互能力和定制的数字虚拟助理(DVA)功能的示例***;
图2图示了用于在电子装置中实现基于语音的交互的示例方法的流程图;
图3图示了支持基于语音的交互的电子装置的框图;
图4图示了使电子装置能够支持基于语音的交互的示例方法的流程图;
图5图示了响应于基于语音的交互而向电子装置提供内容的示例方法的流程图;以及
图6是图示了用于可以采用来实施本文描述的并且图示的***和方法的元件的计算机***的一般架构的框图。
具体实施方式
下面是对与用于实现与第二方装置、第三方应用或者其组合的基于音频的(或者基于聊天的)交互的方法、设备和***有关的各种概念和该方法、设备和***的实施方式的更详细的描述。可以按照许多方式中的任何方式来实施在上面介绍的并且在下面更详细地讨论的各种概念。
可以将数字虚拟助理(DVA)集成到在线平台中以允许与关联于在线平台的客户端装置的基于语音(基于音频)或基于聊天的交互。例如,客户端装置的用户可以经由基于语音或基于聊天的查询来发起在线任务例如在线搜索或者在线交易。DVA可以解释基于语音或基于聊天的查询,并且发起在基于语音或基于聊天的查询中请求的在线动作。通常,具有DVA能力的客户端装置还可以与相应用户进行音频对话以实现用户的查询。与用户进行有意义的对话并且准确地服务用户的基于语音的查询的DVA能力为对应的客户端装置增添了很大的价值,因为它们显著增强了用户体验。具体地,DVA允许与客户端装置的免提交互。另外,利用对基于语音或基于聊天的输入的准确解释和有意义的响应,DVA通过允许明智的用户-装置对话来使用户与客户端装置的交互人性化。
可以将DVA集成在在线平台和对应的客户端装置中以允许与对应的客户端装置的基于聊天的或者基于语音的交互。例如,可以将DVA客户端(或者DVA软件代理)集成到能够与所述DVA功能的一个或者多个远程服务器通信的移动装置或者智能家居装置的操作***(OS)中。实施DVA功能的OS和一个或者多个服务器可以由相同的实体或者提供商(在本文中称为第一方提供商)提供。这种集成方法表明:不同于提供DVA的第一方提供商的第二方装置提供商(例如,原始设备制造商(OEM)、装置制造商或者装置供应商)可以实施其自己的DVA或者采用DVA代理集成在其中的OS以使相应的第二方装置能够支持与DVA相关联的功能和服务。两个选项都对在广泛的第二方装置上扩展DVA施加了限制或者障碍。这些限制和障碍还应用于扩展对DVA的使用以实现与由第三方提供商(例如,不同于第一方提供商和第二方提供商)实施的第三方应用(例如,移动应用或者客户端程序)的基于语音的交互以在第一方装置或者第二方装置上运行。
对于第二方装置提供商,修改现有OS或者采用集成DVA客户端的新OS会是破坏性的、在技术上麻烦的以及昂贵的。即使将不对OS进行改变,使用相应的第一方提供商的现有DVA也可能涉及第二方装置的提供商维护云存在(例如,经由云服务器)以与DVA平台或者DVA服务器通信并且服务相应的第二方装置。同样,使用相应的第一方提供商的现有DVA使第二方装置的提供商对针对定制以区别与其装置的基于语音的交互或者相较于竞争对手向其顾客提供不同的体验,具有很低的灵活性(若有的话)。例如,在与给定第二方装置的基于语音的交互中使用的词汇的范围和幅度可以相对较窄和特定(例如,与在与其它装置的基于语音的交互中使用的词汇的范围和幅度相比较)。具体地,每个装置(例如,给定类型或者型号的装置)可以支持对应的特定装置动作集合,该对应的特定装置动作集合可以与由其它装置支持的装置动作不同。由于与装置的用户交互通常涉及触发对应的装置动作,因此,使用定义由给定类型或者型号的装置支持的装置动作的狭窄词汇范围可以帮助DVA***更好地服务给定类型或者型号的装置。DAV***可以在解释基于语音的查询以及向这种查询提供明智的响应时提高其准确性。如本文使用的,DVA***是指提供服务器侧DVA功能的数据处理***。
针对扩展对基于DVA的服务或者能力(例如,基于语音或基于聊天的交互)的使用,相似的限制和障碍还应用于第三方应用。第三方应用可以包括移动应用、客户端应用或者由第三方开发者开发的其它应用。如本文使用的,第三方是与提供DVA***的实体(在本文中也称为第一方)和提供在其上应用可以进行执行或者运行的装置的实体(在本文中也称为第二方)不同的实体(例如,应用开发者)。可能最初在制造或者开发阶段未在装置上安装第三方应用,而是在市场上销售装置之后下载并且安装(或者甚至开发)第三方应用。即使装置支持DVA客户端,在装置上运行的第三方应用也可能不能采用DVA的功能,例如,以允许与第三方应用或者其内容的基于语音的交互。
在本公开中,自助服务方法可以允许第二方装置提供商或者第三方应用提供商实现基于语音的(或者基于聊天的)交互以触发相应的定制动作。第二方装置提供商可以构建或者定义由相应的装置组(例如,给定类型、类别或者型号的装置)支持的定制装置动作的捆绑(或者动作包),并且将捆绑(或者动作包)提供至DVA***。定制装置动作的每个捆绑可以包括(或者指定)由相应的装置组支持的一个或者多个装置动作以及一个或者多个对应的装置可执行命令。定制装置动作的捆绑中的每个装置动作可以与对应的装置可执行命令相关联,该对应的装置可执行命令用于在相应的装置组中的任何装置上执行(或者使得执行)该装置动作。针对每个相应的装置动作,定制装置动作的捆绑还可以包括(或者指定)要提供以便结合该装置动作的执行显示在相应的装置组中的任何装置上的对应响应(例如,音频响应、视觉响应或者视听响应)。
DVA***可以与相应标识符相关联地维护定制装置动作的每个捆绑。标识符可以是指示与定制装置动作的捆绑相关联的装置组的装置型号的装置型号标识符(ID)、第二方装置提供商的标识符、捆绑ID、维护定制装置动作的捆绑的目录的目录ID或者其组合。第二方装置提供商可以将标识符与定制装置动作的捆绑一起提供至DVA***。将定制装置动作的捆绑和标识符提供至DVA***的过程可以被视为向DVA***注册对应的装置装置组(或者对应的装置型号)。注册装置型号(或者潜水组)还可以包括:提供对装置组(例如,与装置型号相关联的装置组)的属性、特性、特征或者能力的指示、与装置组或者装置型号相关联的其它元数据或者其组合。DVA***(或者其第一方提供商)可以允许第二方装置提供商向DVA***注册装置型号(或者装置组),例如,经由用户界面(UI)、web接口或者静态应用编程接口(API)。第一方提供商或者DVA***可以在例如成功地测试了在定制装置动作的捆绑中提供的装置可执行命令之后验证(或者证明)装置型号(或者装置组)。
同样,第三方应用提供商可以构建或者定义由相应的应用支持的定制应用动作的捆绑(或者包),并且将捆绑(或者包提供至DVA***。定制应用动作的捆绑可以包括由应用支持的一个或者多个动作以及一个或者多个对应的应用可执行命令。每个定制应用动作可以与对应的应用可执行命令相关联,该对应的应用可执行命令用于使应用执行该定制应用动作。与定制装置动作的捆绑相似,DVA***可以与相应标识符相关联地维护定制应用动作的每个捆绑。标识符可以是应用ID、第三方应用提供商ID、捆绑ID或者指示维护定制应用动作的捆绑的目录(或者项目)的目录ID。
第一方提供商或者DVA***可以为集成第二方装置或者第三方应用提供一个或者多个软件开发工具包(SDK)以允许基于语音的用户交互。第一方提供商可以为第二方装置和第三方应用提供单独的SDK。当(多个)SDK被集成到第二方装置或者第三方应用中时,(多个)SDK可以提供用于激活音频接收器(例如,麦克风)、发起对话、发起与DVA***的通信会话、向DVA***发送请求和从DVA***接收响应、对从DVA***接收到的响应进行解析或者其组合的软件工具。同样,第二方装置提供商或者第三方应用提供商可以构建装置上动作处理程序以执行装置可执行命令或者应用可执行命令的装置上执行。
第二方装置(例如,与注册的装置组或者装置型号相关联的第二方装置)可以接收来自相应的用户的基于语音的查询,并且生成与该基于语音的查询对应的音频信号。第二方装置可以将音频信号以及与相应的动作包相关联的标识符(例如,装置型号ID)传输至DVA***。DVA***可以基于音频信号和标识符来识别在定制装置动作的相应动作包中列出的装置动作中的装置动作。在识别装置动作时,DVA***可以向指示在相应动作包中列出的动作的表达或者查询模式分配不同的权重。DVA***可以对指示由装置型号支持的装置动作的查询模式应用具有场境话音偏置的场境装置动作匹配和排名机制。例如,在使接收到的音频信号与多个查询模式中的查询模式相匹配时,DVA***可以向与由装置型号支持的装置动作相关联的(或者指示由装置型号支持的装置动作的)查询模式应用偏置。
DVA***可以检索与识别到的装置动作相关联的装置可执行命令,并且将装置可执行命令发送至第二方装置以便执行。DVA***还可以检索与识别到的装置动作相关联的响应,并且将响应的音频版本发送至第二方装置以便在执行在基于语音的查询中请求的装置动作之前、期间或者之后向用户进行呈现(或者播放)。在第二方装置接收到装置可执行命令后,装置上操作处理程序可以从DVA***接收到的通信中提取或者检索装置可执行命令,并且使第二方装置执行装置可执行命令以执行在基于语音的查询中请求的装置动作。第二方装置可以在执行装置动作之前、期间或者之后播放(从DVA***接收到的)任何音频响应、视觉响应或者视听响应。
第三方应用(例如,其中集成有SDK并且在装置上运行)可以提供交互式用户界面(UI)组件以便在装置的显示器上进行呈现。装置的用户可以例如与交互式UI组件交互(例如,通过点击、触摸或者滑动交互式UI组件)以开始与第三方应用的对话。在接收到来自用户的基于语音的查询之后,应用可以生成与基于语音的查询对应的音频信号,并且将该音频信号以及与相应的动作包相关联的标识符(例如,应用ID、动作包ID、目录ID)传输至DVA***。DVA***可以基于音频信号和标识符来识别在相应的装置动作包中列出的定制应用动作中的应用动作。在识别装置动作时,DVA***可以向指示在相应动作包中列出的动作的表达或者查询模式分配不同的权重。DVA***可以对指示由第三方应用支持的应用动作的查询模式应用具有场境话音偏置的场境装置动作匹配和排名机制。DVA***可以识别与应用动作相关联的命令,并且将该命令传输至装置以由第三方应用执行。
他DVA***还可以通过使用标识符、识别到的装置动作或者应用动作、装置的标识符或者其组合来识别基于语音的查询的场境。识别基于语音的查询的场境可以包括识别在基于语音的查询背后的用户意图。DVA***可以基于该基于语音的查询的场境来选择数字分量诸如第三方数字分量(例如,广告),并且将该数字分量发送至装置以便进行呈现。数字分量可以包括音频内容或者视听内容。数字分量可以包括向用户建议或者提供服务或者产品的促销内容。装置可以按照无缝方式来呈现数字分量,使得用户感觉或者看起来是针对基于语音的查询的自然响应的一部分。
根据本公开的示例实施例,本文描述的***、方法和装置通过采用装置动作的装置上执行模型来实现与第二方装置或者第三方应用的基于语音的交互,而无需第二方装置提供商或者第三方应用提供商维护云点以与关联于第一提供商的DVA***通信。DVA***可以从第二方装置接收音频查询,并且执行话音识别和智能自然语言处理以识别请求的装置动作或者应用动作。DVA***可以向第二方装置提供指示装置可执行命令的响应(例如,JSON响应),该响应触发第二方装置执行所请求的装置动作。同样,根据本公开的示例实施例,用户可以进行基于语音的查询以在不明确地要求装置调用代理或者与代理谈话的情况下请求执行特定装置动作或者特定应用动作。
在下文中,装置动作可以指定制装置动作或者定制应用动作。实际上,定制装置动作和定制应用动作都由电子(或者客户端)装置执行。同样,电子(或者客户端)装置或者***可以指具有执行指令或者命令的电子(或者处理)能力的装置或者***。
图1图示了用于使电子装置和第三方应用能够具有基于语音的交互能力和定制的数字虚拟助理(DVA)功能的示例***100。***100可以包括数据处理***102和经由通信网络106通信地耦合至数据处理***102的多个客户端装置104。数据处理***102和客户端装置104可以与不同的或者单独的提供商相关联。***100可以包括与客户端装置104的提供商或者在客户端装置104上可执行的第三方应用(例如,第二方装置)的提供商相关联的一个或者多个计算装置108。如本文使用的,装置提供商可以包括装置制造商或者向客户或者用户提供客户端装置104的另一实体。第三方应用提供商可以包括应用开发者或者提供应用以供消费的另一实体。一个或者多个计算装置108可以通过通信网络106通信地耦合至数据处理***102。通信网络106可以包括互联网、无线蜂窝网络、有线网络、局域网、广域网、公共网络、专用网络或者其组合。
数据处理***102可以包括用于存储数据或者计算机代码指令的存储器110、用于执行计算机代码指令的一个或者多个处理器112以及用于与其它***或者装置诸如客户端装置104或者客户端装置108通信的通信接口114。数据处理***102可以包括用于存储一个或者多个动作包(或者捆绑)118的数据储存库116。数据处理***102可以包括用于管理存储、访问或者处理动作包118或者对应的数据的动作定制组件120。数据处理***102可以包括用于将音频信号转换为文本的话音识别组件122和用于确定文本诸如由话音识别组件122提供的文本输出的结构和含义的自然语言处理器(NLP)组件124。数据处理***102可以包括用于将文本转换为对应的音频(或者可听)信号的音频信号生成器组件。数据处理***102可以包括用于选择要呈现在客户端装置104上的内容或者数字分量(在本文中也称为内容项)的内容选择器组件128。
数据处理***102可以包括一个或者多个计算机服务器(在图1中未示出)。例如,数据处理***102可以包括促进分布式计算技术的多个逻辑分组的服务器(在图1中未示出)。可以将逻辑服务器组称为数据中心、服务器场或者机器场。服务器可以在地理上分散。可以将数据中心或者机器场作为单个实体来进行管理,或者机器场可以包括多个机器场。每个机器场内的服务器可以是异构的——服务器或者机器中的一个或者多个可以根据一种或者多种类型的操作***平台来进行操作。数据处理***102可以包括数据中心中存储在位于例如企业数据中心中的一个或者多个高密度机架***以及相关联的存储***中的服务器。具有这种整合服务器的数据处理***102可以通过在本地化的高性能网络上对服务器和高性能存储***进行定位来改进***可管理性、数据安全性、***的物理安全性以及***性能。使数据处理***102组件中的全部或者一些组件包括服务器和存储***集中并且将它们与高级***管理工具耦合允许更有效地使用服务器资源,这节省了功率和处理要求,并且减少了带宽使用。
客户端装置104可以包括第二方装置集合,该第二方装置集合具有例如由第二方装置集合的提供商定义的装置型号(或者与该装置型号相关联)。通常,数据处理***102可以服务(或者可以通信地耦合至)多个第二方装置集合,其中,每个第二方装置集合具有相应的装置型号或者装置类型(或者与相应的装置型号或者装置类型相关联)。客户端装置104可以包括其上安装有第三方应用的第一方装置或者第二方装置。客户端(或者电子)装置104可以包括机器人、汽车或者其它车辆、家电、家庭安全***、照明控制***、有线电视盒、智能电视、媒体播放器、无线电装置、智能闹钟、智能手表、移动或者手持装置(例如,平板、智能电话或者手持媒体播放器)、视频游戏机、医学成像装置、健身和锻炼装置或者具有处理能力以执行指令或者命令以及通信能力以例如经由网络106与数据处理***102通信的其它装置。装置型号可以由装置提供商定义(或者指定)以定义该提供商店共享相应的特征、属性、特性或者能力集合的装置集合或者装置组。装置型号的示例可以包括汽车(或者其它车辆型号、家电型号(冰箱型号或者炉灶型号)、家庭安全***型号、照明控制***型号、有线电视盒型号、智能电视型号、媒体播放器型号、无线电装置型号、智能闹钟型号、智能手表型号、智能电话型号、平板型号、膝上型计算机型号、视频游戏机型号、医学成像装置型号或者健身和锻炼装置型号。装置型号可以包括装置型号标识符(例如,装置型号名称、装置型号序列号或者装置型号代码)。具有给定装置型号的第二方装置可以具有共享公共部分的装置标识符。装置标识符的公共部分可以充当装置型号的标识符或者指示符。装置提供商可以具有多个装置104集合(或者多个装置104组),其中,每个集合或者每一组与对应的装置型号相关联。
与给定装置型号(或者装置类型或者装置类别)相关联的第二方装置可以支持相应的多个装置动作。这些相应的多个装置动作可以表示可以由具有给定装置型号的第二方装置执行的动作,并且可以由第二方装置的用户触发。例如,与给定机器人型号的机器人相关联的装置动作可以包括例如向左移动、向右移动、向前移动、向后移动或者其组合。由给定安全***型号的家庭安全***支持的装置动作可以包括例如激活离开模式、激活停留模式、切换到(例如,特定摄像头编号的)特定摄像头、激活警报、停用警报或者其组合。由给定健身和锻炼装置型号的健身和锻炼装置(例如,跑步机)支持的装置动作可以包括例如激活/切换到有氧运动模式、激活/切换到燃脂模式、将速度设置为特定速度值、将高度设置为特定仰角或者其组合。给定装置型号的每个装置动作可以与触发具有给定装置型号的第二方装置执行该装置动作的对应命令(或者装置可执行命令)相关联。
同样,第三方应用可以支持相应的多个装置动作。这些相应的多个装置动作可以表示可以由安装了第三方应用的客户端装置104执行的动作,并且可以由第三方应用或者客户端装置的用户触发。例如,与用于使司机与搭乘者联系的应用相关联的装置(或者应用)动作可以包括搜索从第一位置到第二位置的搭乘、从搭乘列表中选择搭乘、检查司机的当前位置或者其组合。社交网络应用的装置(或者应用)动作可以包括打开页面(例如,朋友的页面)、播放由朋友共享的媒体文件、共享内容项、用输入的内容来响应朋友的帖子或者其组合。导航应用的装置(或者应用)动作可以包括:提供从第一位置到第二位置的驾驶方向(或者路线)、提供沿路的交通信息、搜索沿路的设施(例如,加油站、休息区或者餐馆)、切换到替代路线或者其组合。
第三方应用提供商或者第二方装置提供商可以生成动作包118(例如,装置动作文件或者装置动作脚本),该动作包118指定由第三方应用(或者安装了第三方应用的客户端装置104)或者分别地,与装置型号相关联的客户端装置104(例如,第二方装置)支持的装置动作。动作包118可以针对每个装置动作列出用于在客户端装置104上触发装置动作的一个或多个查询模式。例如,对于给定机器人型号的机器人,查询模式可以包括针对向左移动动作的“向左移动”和“向左走”、针对向右移动动作的“向右移动”和“向右走”、针对向前移动动作的“向前移动”和“向前走”、针对向后移动动作的“向后移动”和“向后走”或者其组合。对于给定安全***型号的家庭安全***,查询模式可以包括针对激活离开安全模式的动作的“激活离开模式”和“切换到离开模式”、针对激活停留安全模式的动作的“激活停留模式”和“切换到停留模式”、针对切换到来自特定摄像头的视频内容的动作的“切换到摄像头CAMERA_NUMBER(摄像头编号)”、针对激活警报的动作的“激活警报”、针对停用警报的动作的“停用警报”或者其组合。对于给定健身和锻炼装置型号的健身和锻炼装置(例如,跑步机),查询模式可以包括例如针对激活心血管模式的动作的“激活有氧运动模式”和“切换到有氧运动模式”、针对激活燃脂模式的动作的“激活燃脂模式”和“切换到燃脂模式”。对于移动装置,示例查询模式可以包括“打开设定”、“打开电子邮件”、“向我显示我的提醒事项”或者其组合。对于用于使司机与搭乘者联系的应用,示例查询可以包括“需要从位置1搭乘到位置2”、“前往搭乘”或者“显示司机的位置”。针对社交网络应用的示例查询可以包括“打开朋友页面”、“播放视频”、“共享视频”或者“用内容评论帖子”。对于导航应用,对应的查询可以包括“向我显示从位置1到位置2的驾驶路线”、“向我显示交通信息”、“向我显示设施”或者“切换到新路线”。
动作包118可以包括每个装置动作的动作名称。动作包118可以针对每个装置动作指定用于触发在装置上执行装置动作的相应装置可执行命令(或者应用可执行命令)。动作包118可以针对每个装置动作指定要由客户端装置104结合装置动作的执行而呈现的响应。可以将每个响应描述为可以被转换为音频以供客户端装置104呈现的文本表达。
下面的脚本提供了对定义智能炊具的动作包的示例脚本的说明。
该脚本针对烹饪蛋糕定义了名称为“COOK_CAKE”的单个装置动作。该脚本还定义了与装置动作相关联的查询模式“bake a cake(烤蛋糕)”和“cook a cake(烹饪蛋糕)”。该脚本定义了用于执行装置动作的装置可执行命令“command.COOK_CAKE”。进一步地,该脚本可以响应于语音查询“烤蛋糕”或者“烹饪蛋糕”而定义例如要由客户端装置104以音频格式播放的响应(例如,“烤蛋糕”)。
第二方装置提供商或者第三方应用提供商可以使用计算装置108来向数据处理***102提供对应的动作包和与该动作包相关联的标识符(ID)。例如,第二方装置提供商可以经由计算装置108来向数据处理***102注册相应的装置型号。计算装置108可以包括桌面型计算机、膝上型计算机、智能电话、手持装置或者其它计算装置。计算装置108可以将动作包118和装置型号数据传输至数据处理***102作为注册装置型号的一部分。装置型号数据可以包括例如装置型号的指示符(或指示)(例如,装置型号标识符或者装置型号名称)、对与装置型号相关联的装置的属性、特性、特征或者能力的指示、对应的第二方装置提供商的名称、对与装置型号相关联的装置的描述以及对装置类型的指示或者其组合。第三方应用提供商还可以使用计算装置108来向数据处理***102提供相应的动作包(例如,定义由应用支持的装置动作)和与该动作包相关联的ID(例如,应用ID、包ID、目录ID或者项目ID)。数据处理***102可以提供静态API或者UI以供计算装置108用于向数据处理***102传输动作数据、ID或者其它信息。例如,UI可以与由数据处理***102或者第一方提供商提供的网页或者应用相关联。计算装置108可以访问网页或者应用以允许将装置动作数据、装置型号数据、应用信息数据或者其组合填充到例如UI的对应文本输入槽中。静态API是使用HTTP请求(例如,GET、PUT、POST或者DELETE)来请求、传输或者删除数据的API。
下面的脚本提供了对可以由计算装置108提供至数据处理***102作为注册第二方装置的一部分的数据的示例说明。该数据与针对上面提供的示例动作包所讨论的智能炊具有关。
上面的脚本中的数据指定了装置型号ID、制造商名称、产品名称、装置描述、装置类型以及对动作包(例如,与上面的第一个脚本相关联的动作包)的引用(例如,“com.smart_cooker.intent.COOK_CAKE”)。计算装置108还可以将动作包、标识符以及与第二方装置(或者第三方应用)相关联的其它信息单独地或者一起传输至数据处理***102。
下面针对图2和图5更详细地讨论了数据处理***102的组件。
图2图示了用于实现与客户端(或者电子)装置的基于语音的交互的示例方法200的流程图。方法200可以包括:接收装置动作数据和相应的标识符(ACT 202)。方法200可以包括:将装置动作数据存储在存储器中(ACT 204)。方法200可以包括:将标识符映射至装置动作数据(ACT 206)。方法200可以包括:从客户端装置接收标识符和音频信号(ACT 208)。方法200可以包括:基于标识符和音频信号来识别装置动作(ACT 210)。方法200可以包括:识别与装置动作对应的装置可执行命令(ACT 212)。方法200可以包括:将装置可执行命令传输至客户端装置(ACT 214)。
参照图1和图2,方法200可以包括:数据处理***102从对应的计算装置108接收装置动作数据和对应的标识符(ACT 202)。计算装置108可以与第二方装置提供商或者第三方应用提供商相关联。标识符可以包括装置型号ID(例如,装置型号名称、装置型号代码或者其组合)、装置类型ID、项目ID、目录ID、应用ID、动作包ID、提供商ID或者其组合。项目ID可以识别使第二方装置或者第三方应用集合能够具有基于语音的交互的项目。该项目可以是指由第二方装置提供商或者第三方应用提供商提供至数据处理***102的软件工具和/或数据的类集。目录ID可以识别由数据处理***102用于存储动作数据的目录。装置动作数据可以包括对由(例如,与装置型号ID或者装置类型ID相关联的)第二方装置或者由(例如,与应用ID或者项目ID相关联的)第三方应用支持的多个装置动作的指示。装置动作数据还可以包括多个装置可执行命令。该多个装置可执行命令中的每个装置可执行命令可以与多个装置动作中的对应装置动作相关联。对于每个装置动作,对应的装置可执行命令可以触发在一个或者多个客户端装置104上执行装置动作。数据处理***102还可以接收信息,包括对装置类型的指示、第二方装置的标识符或者名称、第三方应用提供商的标识符或者名称、对装置型号或者对应的第二方装置的描述、对第三方应用的描述、第三方应用的版本或者其组合。
通信接口114还可以接收要由客户端装置104结合装置装置动作的执行来呈现的多个响应。该多个响应中的每个响应可以与对应的装置动作相关联,并且可以被提供至客户端装置104以便结合对应的装置动作的执行进行呈现。例如,客户端装置104可以按照音频形式来播放响应以向用户通知开始执行、正执行或者完成执行对应装置动作。
方法200可以包括将装置动作数据存储在存储器中(ACT 204)。存储器110或者装置动作定制组件120可以分配用于存储用于各种装置型号、各种第三方应用或者其组合的装置动作数据的数据储存库116。装置动作定制组件120可以单独地存储与单独的装置型号或者单独的第三方应用相关联的装置动作数据,例如,作为单独的动作包118。每个动作包118可以包括列出与例如装置型号或者第三方应用相关联的多个装置动作和对应的装置可执行命令的一个或者多个对应数据结构、一个或者多个对应数据文件或者其组合。
方法200可以包括将标识符与装置动作数据进行映射(ACT 206)。装置动作定制组件114可以布置装置动作数据,使得将标识符映射或者链接至对应的动作包118中的多个装置动作中的每个装置动作。例如,可以通过对应的标识符来识别如由数据处理***102存储的动作包118。例如,装置动作定制组件114可以向动作包118分配包括标识符的名称,或者可以将动作包118存储在具有包括标识符的名称的目录中。装置动作定制组件114还可以将每个装置动作映射或者链接至对应的装置可执行命令。装置动作定制组件114还可以将每个装置动作映射或者链接至对应的响应(若有的话)。例如,装置动作定制组件114可以将装置动作、装置可执行命令和响应存储在表中,其中,每个装置动作与对应的装置可执行命令和对应的响应共享同一行(或者同一列)。
对于与装置型号相关联的第二方装置,装置动作定制组件114还可以在服务与该装置型号相关联的第二方装置之前验证或者证明装置型号。例如,在成功地测试了装置可执行命令之后(例如,在原型或者实际的第二方装置上),装置动作定制组件114可以通过在对应的动作包118中进行设置(或者创建参数)来验证或者证明装置型号以指示动作包118是活动的。数据处理***102不会服务与非活动动作包相关联的第二方装置。
方法200可以包括:从客户端装置接收标识符和音频信号(ACT 208)。通信接口114可以响应于来自客户端装置104的用户的基于语音的查询而从(例如,与动作包118相关联的)客户端装置104接收音频信号和标识符。例如,对于第二方装置,相应的用户可以对第二方装置进行基于语音的查询,该第二方装置转而可以记录与查询对应的音频信号,并且将其与标识符一起发送至数据处理***102。对于第三方应用,该应用可以提供用于发起与安装了该应用的客户端装置104的对话的交互式UI组件。当与交互式UI组件交互时,应用可以使客户端装置104例如激活音频接收器(例如,麦克风)、与数据处理***102建立通信会话或者进行两者。当用户进行基于语音的查询时,应用可以使客户端装置104记录表示查询的音频信号并且将音频信号以及标识符发送至数据处理***102。客户端装置104可以指定不同于音频接收器的另一音频源,通过该另一音频源,接收要发送至数据处理***102的音频输入。
方法200可以包括基于标识符和音频信号来识别装置动作(ACT 210)。装置动作定制组件120可以使用接收到的标识符来识别由数据处理***102维护(或者数据处理***102可访问)的动作包118中的对应动作包118。装置动作定制组件120可以检索与动作包118中列出的装置动作中的每个装置动作相关联的(多个)查询模式。话音识别组件122可以将音频信号转换为对应的文本。NLP组件122可以通过使用由话音识别组件122生成的文本和检索到的查询模式来识别与标识符相关联的动作包中列出的多个装置动作中的装置动作。当使由话音识别组件生成的文本与对应含义相匹配时,NLP组件124可以对检索到的查询模式应用偏置。例如,给定已知接收到的音频信号由与标识符或者对应的动作包118相关联的第二方装置或者第三方应用提供,NLP组件124可以向不与动作包118中列出的查询模式对应的含义分配零匹配权重或者相对较小的匹配权重(例如,与针对与动作包118中的查询模式对应的含义的匹配权重相比较)。NLP组件124可以(例如基于匹配权重)通过使用NLP组件124的机器学习过程来确定每个装置动作(或(多个)对应查询模式)的匹配分数。NLP组件124可以选择具有最高权重的装置动作作为与接收到的音频信号的内容相匹配的装置动作。
方法200可以包括:识别与装置动作对应的装置可执行命令(ACT212)。装置动作定制组件120可以识别(或者检索)动作包118中的多个装置可执行命令中与由NLP组件124识别到的装置动作对应的装置可执行命令。例如,装置动作定制组件120可以检索被映射或者链接至动作包118中的(由NLP组件124识别到的)装置动作的装置可执行动作。装置动作定制组件120还可以识别与装置可执行命令相关联的一个或者多个参数。例如,如果装置动作(或者对应的装置可执行命令)与对驾驶方向的请求或者对搭乘的请求有关,对应参数可以包括对起点位置和终点位置的指示。如果装置动作与打开资源信息(例如,社交网络页面或者web页面)有关,则(多个)参数可以包括资源的名称或者地址。对于每个装置动作,(多个)对应的查询模式可以指示装置动作是否与任何输入参数相关联。例如,查询“need ridefrom LOCATION1 to LOCATION2(需要从位置1搭乘到位置2)”指示参数LOCATION1(位置1)和LOCATION2(位置2)待由客户端装置104的用户提供。同样,在查询模式“open FRIENDpage(打开朋友页面)”、“go with RIDE(前往搭乘)”、“show me FACILITIES(向我显示设施)”和“comment to POST with CONTENT(用内容评论帖子)”中,参数“FRIEND(朋友)”、“RIDE(搭乘)”、“FACILITIES(设施)”、“POST(帖子)”和“CONTENT(内容)”待由用户提供。NLP组件124可以对与接收到的音频信号对应的文本进行解析,并且识别装置动作参数的值(若有的话)。装置动作定制组件120可以在将装置可执行命令发送至客户端装置104之前将识别到的参数附加至与装置动作对应的装置可执行命令。
装置动作定制组件120还可以检索被映射或者链接至对应的动作包118中的(由NLP组件124识别到的)装置动作的响应。如果响应最初是文本格式,则音频信号生成器126可以将响应转换为音频格式(例如,音频信号)。如果与装置动作相关联的响应是音频、视觉或者视听格式,则装置动作定制组件120可以将响应提供至通信接口114以便发送至第二方装置104。
方法200可以包括将装置可执行命令传输至第二方装置(ACT214)。通信接口114可以向客户端装置104传输装置可执行命令以及对应的参数(若有的话)以便响应于基于语音的查询而执行。可执行命令在被执行时可以使客户端装置104执行由NLP组件124识别到的装置动作。通信接口114还可以将响应(音频格式、视觉格式或者视听格式)(若有的话)传输至客户端装置104以便进行渲染。
图3图示了支持基于语音的交互的客户端(或者电子)装置104的框图。客户端装置104可以包括用于接收基于语音的查询的音频接收器302和用于与其它装置或者***诸如数据处理***102通信的通信接口304。客户端装置104可以包括用于执行(或者使得执行)装置可执行命令的命令执行组件306和用于基于音频信号(例如,从数据处理***102接收到的音频信号)来生成音频波的扬声器308。客户端装置104可以包括用于管理与数据处理***102的通信的控制器310。下面针对图4进一步讨论第二方装置的这些组件。
图4图示了使客户端装置能够支持基于语音的交互的示例方法400的流程图。方法400可以包括响应于基于语音的查询而生成音频信号(ACT 402)。方法400可以包括将无线电信号和标识符传输至远程数据处理***(ACT 404)。方法400可以包括接收装置可执行命令(ACT 406),以及执行装置可执行命令(ACT 408)。
参照图3和图4,方法400可以包括响应于基于语音的查询而生成音频信号(ACT402)。客户端装置104的用户可以发起与客户端装置或者安装在客户端装置上的第三方应用的对话。客户端装置104或者第三方应用可以提供交互式UI组件、按钮或者用于用信号向客户端装置104通知用户打算开始对话的其它输入机构。当发生与交互式UI组件的交互时(或者当发生其它输入时),客户端装置104或者第三方应用可以致动音频接收器302(例如,麦克风)以记录音频输入、与数据处理***建立通信会话或者进行两者。音频接收器302可以生成与来自客户端装置104的用户的基于语音的查询对应的音频信号。音频接收器302可以例如将与基于语音的查询对应的声波转换为电音频信号。客户端装置104还可以(例如,在对应的存储器中)存储与定义了由客户端装置104或者第三方应用支持的装置动作的动作包相关联的标识符(例如,装置型号ID、应用ID、项目ID、目录ID或者其组合)。客户端装置104(或者第三方应用)可以指定不同于音频接收器的另一音频源,通过该音频源接收要发送至数据处理***102的音频输入。客户端装置104或者第三方应用可以在发生与交互式UI组件的交互时致动指定的音频源。
方法400可以包括:将标识符和无线电信号传输至远程数据处理***(ACT 404)。控制器310可以使通信接口304响应于基于语音的查询而将标识符和音频信号传输至数据处理***102。控制器310可以生成要发送至数据处理***102的包括音频信号和标识符的请求。可以将该请求视为用于解释基于语音的查询的内容的请求。控制器310可以使通信接口304将该请求传输至数据处理***102。如上面针对图1和图2讨论的,数据处理***102可以使用标识符来识别由数据处理***维护的多个动作包118中的动作包118,并且使用音频信号来确定动作包118中列出的装置动作或者查询模式中与基于语音的查询的内容对应的装置动作包(或者(多个)对应的查询模式)。数据处理***102可以确定与音频信号的内容相匹配的对应于装置动作的装置可执行命令(若有的话)。
方法400可以包括接收装置可执行命令(ACT 406)。通信接口304可以响应于对音频信号和标识符的传输而从数据处理***接收响应消息,该响应消息包括与音频信号的内容相匹配的装置动作对应的装置可执行命令。装置可执行命令可以由数据处理***102在识别到与基于语音的查询的内容(或者音频信号)对应的装置动作之后识别。接收装置可执行命令可以包括(例如在响应消息中)接收与命令相关联并且由用户在基于语音的查询中提供的一个或者多个参数。通信接口304还可以从数据处理***102接收音频响应。控制器310可以对接收到的消息进行解析以识别装置可执行命令、与命令相关联的任何参数、要由客户端装置104渲染的媒体响应或者其组合。
方法400可以包括执行装置可执行命令(ACT 408)。控制器310可以将装置可执行命令及其任何参数提供至命令执行组件306以便执行。命令执行组件306可以执行装置可执行命令以使客户端装置104执行与接收到的装置可执行命令对应的装置动作。执行命令可以包括客户端装置104(或存储在其上的应用)生成搜索查询(或请求)并且将其发送至在线服务器(例如,与第三方应用相关联的服务器)。例如,应用或客户端装置104可以基于接收到的可执行命令和对应的参数来生成从第一位置搭乘到第二位置的请求。客户端装置104可以将搜索查询或者请求传输至在线服务器。在接收到来自在线服务器的响应之后,客户端装置104可以将响应中的信息呈现给用户。
控制器310或者命令可执行组件306可以包括(或者实施)装置动作处理程序以从数据处理***102接收到的通信(或者消息)中提取装置可执行命令以及任何对应的参数,并且执行提取的命令。下面的脚本表示对装置动作处理程序的示例说明。
控制器310可以向对应的媒体播放器提供要由客户端装置104渲染的任何媒体响应。例如,控制器310可以将从数据处理***102接收到的音频响应提供至音频播放器以便结合装置可执行命令的执行而通过扬声器308播放该音频响应。控制器310可以在执行装置可执行命令之前、期间或者之后使得渲染音频响应。音频播放器和扬声器还可以播放从数据处理***102接收到的任何其它音频内容。如果接收到视觉响应或者视听响应,控制器可以使音频视觉播放器(例如,图像播放器、动画播放器或者视频播放器)在客户端装置104的显示器上渲染视觉响应或者视听响应。
针对图3和图4描述的动作包、装置动作和对应的装置可执行命令与上面针对图1和图2描述的那些动作包、装置动作和对应的装置可执行命令相似。同样,虽然对图3和图4的描述集中于由客户端装置104执行的过程和动作,但是这些过程和动作与由数据处理***102执行并且针对图1和图2描述的过程和动作互相关联。
图5图示了响应于基于语音的交互而提供内容以便触发装置动作的示例方法500的流程图。方法500可以包括在存储器中存储装置动作数据(ACT 502)。方法500可以包括将标识符映射至装置动作数据(ACT 504)。方法500可以包括从客户端装置接收标识符和音频信号(ACT 506)。方法500可以包括基于标识符和音频信号来识别装置动作-命令对(ACT508)。方法500可以包括识别与音频信号相关联的基于语音的查询的场境(ACT 510)。方法500可以包括基于与音频信号相关联的基于语音的查询的场境来选择数字分量(ACT 512)。方法500可以包括将数字分量和与装置动作-命令对对应的装置可执行命令传输至客户端装置104(ACT 514)。
数据处理***102(或者其组件)可以按照与上面针对图1和图2讨论的相似方式来执行方法500的ACT 502至ACT 508(与图2中的ACT 202至ACT 208相似)。装置动作数据可以包括装置动作包118,该装置动作包118定义例如由与装置型号相关联的第二方装置或者由安装在一个或者多个客户端装置104上(或者能够在一个或者多个客户端装置104上运行)的第三方应用支持的定制装置动作。
方法500可以包括识别与音频信号相关联的基于语音的查询的场境(ACT 510)。动作定制组件120可以基于例如与音频信号的内容、关联于标识符的动作包118(或者装置动作数据)的内容或者两者相关联的因子来确定与接收到的音频信号对应的基于语音的查询的场境。例如,与标识符相关联的动作包118(或者装置动作数据)中的每个装置动作可以与一个或者多个关键字(例如由第二方装置提供商或者第三方应用提供商提供的一个或者多个关键字或者由数据处理***基于采集到的历史数据生成的一个或者多个关键字)相关联。关键字可以指示与该装置动作相匹配的查询的公共场境。动作定制组件120可以在描述装置动作的场境时使用与装置动作相关联的关键字。
动作定制组件120可以基于与动作包相关联的信息来识别基于语音的查询的场境(或者其属性),例如,从而描述与装置型号相关联的第二方装置(例如,标识符是否是装置标识符)或者描述与动作包相关联的第三方应用。例如,如果应用是游戏应用,则基于语音的查询的场境(或者场境属性)将是游戏。同样,如果第二方装置是健身装置,则基于语音的查询的场境(或者场境属性)将是健身或者锻炼。
动作定制组件120可以基于与动作包相关联的信息来识别基于语音的查询的场境(或者其属性),例如,从而描述与装置型号相关联的第二方装置(例如,标识符是否是装置标识符)或者描述与动作包相关联的第三方应用。例如,如果应用是游戏应用,则基于语音的查询的场境(或者场境属性)将是游戏。同样,如果第二方装置是健身装置,则基于语音的查询的场境(或者场境属性)将是健身或者锻炼。
动作定制组件120可以基于在基于语音的查询中提供并且由NLP组件124提取的信息(或者参数)来识别基于语音的查询的场境(或者其属性)。例如,动作定制组件120可以使用提取的指示地理位置的参数来确定基于语音的查询的地理场境。动作定制组件120可以使用提取的指示商业类型(例如,加油站或者餐馆)的参数来确定用户意图(例如,加油或者进食)。
装置动作定制组件120可以将由NLP组件124识别到的装置动作映射至一个或者多个预定义的对应装置动作序列。例如,装置动作定制组件120可以采集由与装置型号相关联的第二方装置的用户或者第三方应用的用户请求的装置动作序列的统计数据(例如,重复发生或者频率)。给定识别到的装置动作,装置动作定制组件120可以确定包括识别到的装置动作的一个或者多个最可能的装置动作序列。装置动作定制组件120可以识别(或者预测)在识别到的装置动作之后的一个或者多个其它装置动作。例如,对于智能TV或者有线电视盒,如果当前识别到的动作是切换到点播频道的动作,则接下来要请求的装置动作最可能包括请求电影列表或者点播内容列表和订购要流式传输的电影或者媒体内容。在这种情况下,场境可以是例如,“电影流式传输”或者“娱乐内容流式传输”。
动作定制组件120可以使用各种因子的组合来识别基于语音的查询的场境。例如,动作定制组件120可以使用装置或应用描述、从基于语音的内容提取的参数、与动作包118中的查询模式相关联的关键字的任何组合。动作定制组件120可以采用随时间采集到的数据和机器学习方法来扩展用于确定基于语音的查询的场境的因子(或者信息)。
方法500可以包括基于与音频信号相关联的基于语音的查询的场境来选择数字分量(ACT 512)。内容选择器组件128可以使用描述基于语音的查询的场境的关键字(或者属性)来选择一个或者多个数字分量(或者内容项)。例如,当确定场境与媒体内容流式传输有关时,内容选择器组件128可以选择与用于流式传输的电影(或者其它媒体内容)有关的数字分量(例如,广告)。内容选择器组件128可以在选择数字分量时运行拍卖或者向内容传递***发送包括与场境相关联的关键字的请求。内容选择器组件128可以使音频信号生成器或者数据处理***102的其它组件将数字分量从第一格式转换为第二格式(例如,从文本转换为音频)。例如,内容选择器组件128或者装置动作定制组件120可以将数字分量格式化为对与识别到的装置动作相关联的音频响应的音频扩展。在这种情况下,数字分量可以被感知为(由客户端装置103的用户)音频响应的一部分。
方法500可以包括:将数字分量和与装置动作-命令对对应的装置可执行命令传输至客户端装置(ACT 512)。通信接口114可以将装置可执行命令(以及任何对应的参数)、数字分量和响应(若存在)发送至第二方装置104。例如,如上面针对图4讨论的,客户端装置104可以执行装置可执行命令,并且向用户播放(或者呈现)响应和/或数字分量。
虽然在对图1至图5的描述中,将标识符描述为由第二方装置提供商或者第三方应用提供商提供,但是本公开所设想的其它实施例包括数据处理***102响应于对相应装置动作数据的上传而生成标识符并且将其提供至第二方装置提供商或者第三方应用提供商。数据处理***可以将生成的标识符分配给或者映射至装置动作数据。
图6是示例计算机***600的框图。计算机***或者计算装置600可以包括或者用于实施***100或者其组件诸如数据处理***102(或者其装置或者组件)、客户端装置104或者装置提供商计算装置108。计算***600包括总线605或者用于传送信息的其它通信组件以及耦合至总线605以便处理信息的处理器610或者处理电路。计算***600还可以包括耦合至总线以便处理信息的一个或者多个处理器610或者处理电路。计算***400还包括耦合至总线605以便存储信息和待由处理器610执行的指令的主存储器615诸如随机存取存储器(RAM)或者其它动态存储装置。主存储器615可以是或者包括数据储存库116。主存储器615还可以用于存储临时变量或者在处理器610执行指令期间的其它中间信息。计算***600可以进一步包括耦合至总线405以便存储用于处理器610的静态信息和指令的只读存储器(ROM)620或者其它静态存储装置。可以将存储装置625诸如固态装置、磁盘或者光盘耦合至总线605以持久地存储信息和指令。存储装置625可以包括数据储存库122或者是数据储存库122的一部分。
计算***600可以经由总线605耦合至显示器635诸如液晶显示器或者有源矩阵显示器以便向用户显示信息。可以将输入装置630诸如包括字母数字键和其它键的键盘耦合至总线605以便向处理器610传送信息和命令选择。输入装置430可以包括触摸屏显示器635。输入装置630还可以包括用于向处理器610传送方向信息和命令选择并且用于控制在显示器635上的光标移动的光标控件诸如鼠标、轨迹球或者光标方向键。例如,显示器635可以是数据处理***102、客户端计算装置104或者图1中的其它组件的一部分。
本文所描述的过程、***和方法可以由计算***600响应于处理器610执行包括在主存储器615中的指令的布置而实施。可以通过另一计算机可读介质诸如存储装置625来将这种指令读取到主存储器615中。执行包括在主存储器615中的指令的布置使计算***600执行本文所描述的说明性过程。还可以采用在多处理布置中的一个或者多个处理器来执行包括在主存储器615中的指令。代替软件指令,可以使用硬连线电路***,或者可以结合软件指令与本文所描述的***和方法一起使用硬连线电路***。本文描述的***和方法不限于硬件电路***和软件的任何特定组合。
虽然已经在图6中描述了示例计算***,但是可以在其它类型的数字电子电路***中或者在计算机软件、固件或者硬件中(包括在本说明书中所公开的结构及其结构等效物)或者在它们中的一个或者多个的组合中实施包括在本说明书中所描述的操作的主题。
对于本文所讨论的***采集有关用户的个人信息或者可以利用个人信息的情况,可以为用户提供控制可以采集个人信息(例如,有关用户的社交网络、社交动作或者活动、用户的偏好或者用户的位置的信息)的程序或者特征或者控制是否和/或如何从内容服务器或者其它数据处理***接收可能与用户更有关的内容的机会。另外,在存储或者使用特定数据之前,可以按照一种或者多种方式来使该特定数据匿名,从而使得在生成参数时去除了个人身份信息。例如,可以使用户的身份匿名,从而使得无法确定用户的个人身份信息,或者可以在获得位置信息时一般化用户的地理位置(诸如,到城市、邮政编码或者州县等级),从而使得无法确定用户的特定位置。由此,用户可以对内容服务器采集和使用有关他或者她的信息的方式进行控制。
可以在数字电子电路***中、或者在计算机软件、固件、或者硬件中(包括本说明书中所公开的结构及其结构等效物)、或者在它们中的一个或者多个的组合中实施本说明书中所描述的主题和操作。可以将本说明书中描述的主题实施为一个或者多个计算机程序,例如,编码在一个或者多个计算机存储介质上以由数据处理设备执行或者以控制数据处理设备的操作的计算机程序指令的一个或者多个电路。可替代地或者另外,程序指令可以编码在人工生成的传播信号上,例如,机器生成的电气、光学或者电磁信号,生成该信号是为了对信息进行编码以便传输至合适的接收器设备供数据处理设备执行。计算机存储介质可以是计算机可读存储装置、计算机可读存储基板、随机或者串行存取存储器阵列或者装置或者它们中的一个或者多个的组合,或者包括在其中。当计算机存储介质不是传播信号时,计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或者目的地。计算机存储介质还可以是一个或者多个单独的组件或者介质(例如,多个CD、磁盘或者其它存储装置),或者包括在其中。可以将本说明书中描述的操作实施为由数据处理设备对存储在一个或者多个计算机可读存储装置或者从其它源接收到的数据执行的操作。
术语“数据处理***”、“计算装置”、“组件”或者“数据处理设备”囊括用于处理数据的各种设备、装置和机器,包括例如可编程处理器、计算机、片上***或者前述内容的多个或者其组合。该设备可以包括专用逻辑电路***,例如,FPGA(现场可编程门阵列)或者ASIC(专用集成电路)。除了硬件之外,该设备还可以包括为探讨中的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理***、操作***、跨平台运行时间环境、虚拟机或者它们中的一个或者多个的组合的代码。该设备和执行环境可以实现各种不同的计算模型基础设施,诸如,web服务、分布式计算和网格计算基础设施。数据处理***102的装置动作定制组件120、话音识别组件122、NLP组件124、音频信号生成器组件126或者内容选择器组件128可以包括或者共享一个或者多个数据处理设备、***、计算装置或者处理器。
可以用任何形式的编程语言包括编译语言或者解释语言、陈述性语言或者程序语言来编写计算机程序也称为程序、软件、软件应用、应用、脚本或者代码,并且可以按照任何形式包括作为独立式程序或者模块、组件、子例程、对象或者适合用于计算环境的其它单元来部署计算机程序。计算机程序可以与文件***中的文件对应。可以将计算机程序存储在保持其它程序或者数据(例如,存储在标记语言文档中的一个或者多个脚本)的文件的一部分中,或者存储在专用于所探讨中的程序的单个文件中,或者存储在多个协作文件(例如,存储一个或者多个模块、子程序或者部分代码的文件)中。可以将计算机程序部署为在一个计算机上执行或者在位于一个站点处或者分布在多个站点中并且通过通信网络互相连接的多个计算机上执行。
可以通过一个或者多个可编程处理器来执行本说明书中描述的过程和逻辑流程,该一个或者多个可编程处理器执行一个或者多个计算机程序(例如,数据处理***102的组件)以通过操作输入数据并且生成输出来执行动作。还可以由专用逻辑电路例如FPGA(现场编程门阵列)或者ASIC(专用集成电路)来执行过程和逻辑流,并且还可以将设备实施为专用逻辑电路例如FPGA(现场编程门阵列)或者ASIC(专用集成电路)。适合于存储计算机程序指令和数据的装置包括所有形式的非易失性存储器、介质和存储器装置,包括例如半导体存储器装置例如EPROM、EEPROM和闪速存储器装置、磁盘例如内部硬盘或者可移动盘、磁光盘、CD-ROM盘和DVD-ROM盘。处理器和存储器可以由专用逻辑电路***补充或者可以并入专用逻辑电路***中。
可以将本文描述的主题实施在包括后台组件的计算***(例如,作为数据服务器)、或者包括中间件组件的计算***(例如,应用服务器)、或者包括前端组件的计算***(例如,具有图形用户界面或者web浏览器的客户端计算机,通过该图形用户界面或者web浏览器,用户可以与本说明书中所描述的主题的实施方式交互)、或者包括一个或者多个这种后台组件、中间件组件、或者前端组件的组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的组件相互连接。通信网络的示例包括:局域网(“LAN”)和广域网(“WAN”)、网际网(例如,互联网)以及点对点网络(例如,ad hoc点对点网络)。
本文所描述的计算***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络(例如,网络106)进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。在一些实施方式中,服务器向客户端计算装置传输数据(例如,表示数字分量的数据包)(例如,为了向与客户端计算装置交互的用户显示数据和接收来自该用户的用户输入)。可以在服务器处从客户端计算装置接收在客户端计算装置处生成的数据(例如,用户交互的结果)(例如,由数据处理***105或者其服务器接收)。
虽然在附图中按照特定顺序来描述操作,但是不需要按照示出的特定顺序或者相继顺序来执行这种操作,并且不需要执行所有图示的操作。可以按照不同的顺序来执行本文描述的动作。
各个***组件的分离不要求在所有实施方式中都分离,并且描述的程序组件可以包括在单个硬件或者软件产品中。例如,装置动作定制组件120、话音识别组件122、NLP组件124、音频信号生成器组件126和内容选择器组件128的任何组合可以是单个组件、应用、程序或者具有一个或者多个处理电路的逻辑装置或者数据处理***102的一个或者多个服务器的一部分。
现在已经描述了一些说明性实施方式,显而易见的是,前述内容是说明性的而非限制性的,已经通过示例的方式呈现出来。具体地,虽然本文所呈现的示例中的许多示例涉及方法动作或者***元件的特定组合,但是可以按照其它方式来组合这些动作和这些元件以实现相同的目的。结合一种实施方式讨论的动作、元件和特征不旨在从其它实施方式或者实施方式中的相似作用排除。
本文所使用的措辞和术语是为了进行描述,并且不应该将其视为是限制性的。本文对包括(“including”)、包括(“comprising”)、“具有”、“包括(containing)”、“涉及”、“以…为特征”、“特征在于”及其变型的使用是指囊括其后列出的项、其等效物和附加项以及由其后排外地列出的项组成的替代实施方式。在一种实施方式中,本文所描述的***和方法由所描述的元件、动作或者组件中的一个、所描述的元件、动作或者组件中的一个以上的各种组合或者所有所描述的元件、动作或者组件组成。
对本文中以单数表示的***和方法的实施方式或者元件或者动作的任何引用还可以包括包括多个这些元件的实施方式,并且本文中以复数形式对任何实施方式、元件或者动作的任何引用还可以包括只包括单个元件的实施方式。以单数或者复数形式的引用不旨在将目前所公开的***或者方法、其组件、动作或者元件限制为单个或者多个配置。对任何动作或者元件的引用基于任何信息、动作或者元件可以包括动作或者元件至少部分地基于任何信息、动作或者元件的实施方式。
本文公开的任何实施方式可以与任何其它实施方式或者实施例组合,并且对“实施方式”、“一些实施方式”、“一个实施方式”等的引用不一定是相互排斥的,并且旨在指示结合实施方式描述的特定特征、结构或者特性可以包括在至少一个实施方式或者至少一个实施例中。如本文使用的这种术语不一定都是指相同的实施方式。可以按照与本文所公开的方面和实施方式一致的任何方式来包括地或者排外地将任何实施方式与任何其它实施方式组合。
可以将对“或”的引用解释为包括的,使得通过使用“或”描述的任何术语可以指示单个所描述的术语、一个以上所描述的术语和所有所描述的术语中的任何一种。例如,对“‘A’和‘B’中的至少一个”的引用可以包括只有‘A’、只有‘B’、以及‘A’和‘B’两者。结合“包括”或者其它开放性术语使用的这些引用可以包括附加项。
在附图、详细描述或者任何权利要求中的技术特征带有附图标记的情况下,已经将附图标记包括进来以增加附图、详细描述和权利要求书的可懂度。因此,附图标记和附图标记的缺少都对任何权利要求要素的范围没有任何限制。
在不脱离本文所描述的***和方法的特性的情况下,可以按照其它特定形式来体现本文所描述的***和方法。前述实施方式是说明性的,而不是限制所描述的***和方法。因此,本文所描述的***和方法的范围由所附权利要求书而不是前述描述指示,并且在权利要求书的等效含义和范围内的变化包括在其中。

Claims (18)

1.一种用于实现与客户端装置的基于语音的交互的数据处理***,包括:
通信接口,用于从与装置型号相关联的多个客户端装置中的客户端装置接收音频信号和定义所述装置型号的装置型号标识符,所述音频信号由所述客户端装置响应于基于语音的查询而获得;
自然语言处理器组件,用于使用所述装置型号标识符和与所述音频信号相关联的内容来识别由与所述装置型号相关联的所述多个客户端装置支持的多个装置动作中的装置动作;
装置动作定制组件,用于识别与所述装置动作相对应的装置可执行命令,并且用于识别与所述装置动作相对应的音频或视觉响应;以及
所述通信接口,用于响应于所述基于语音的查询而向所述客户端装置传输要执行的所述装置可执行命令以使得执行所述装置动作并且用于向所述客户端装置传输所述音频或视觉响应以用于结合并基于所述装置动作来在所述客户端装置上渲染。
2.根据权利要求1所述的数据处理***,包括:
话音识别组件,用于将从所述客户端装置接收到的所述音频信号转换为对应文本,所述自然语言处理器组件通过使用所述对应文本来识别所述装置动作。
3.根据权利要求1所述的数据处理***,包括所述自然语言处理器组件用于:
针对所述多个装置动作中的每个第一装置动作,确定用于使所接收到的音频信号的所述内容与所述第一装置动作相匹配的对应权重值;以及
基于所述权重值来识别所述装置动作。
4.根据权利要求1所述的数据处理***,包括:
所述装置动作定制组件,用于在与关联于所述装置型号的所述多个客户端装置交互之前并且在成功地测试了由关联于所述装置型号的所述多个客户端装置支持的多个装置可执行命令中的每个装置可执行命令之后,验证所述装置型号。
5.根据权利要求1所述的数据处理***,包括:
所述装置动作定制组件,用于提供用户界面以允许计算装置提供所述装置型号标识符和指示由与所述装置型号相关联的所述多个客户端装置支持的所述多个装置动作的装置动作数据。
6.根据权利要求1所述的数据处理***,包括:
所述装置动作定制组件,用于提供静态应用编程接口(API),以允许向所述数据处理***传输所述装置型号标识符和指示由与所述装置型号相关联的所述多个客户端装置支持的所述多个装置动作的装置动作数据。
7.根据权利要求1所述的数据处理***,其中,所述装置型号标识符与安装在所述多个客户端装置上的应用相关联,所述多个装置动作是由所述应用支持的装置动作,并且所述装置可执行命令是特定于所述应用的可执行命令。
8.根据权利要求7所述的数据处理***,包括:
所述装置动作定制组件,用于识别与所述装置可执行命令相关联的一个或者多个参数;以及
所述通信接口,用于向所述客户端装置传输所述一个或者多个参数。
9.一种实现与客户端装置的基于语音的交互的方法,所述方法包括:
从与装置型号相关联的多个客户端装置中的客户端装置接收音频信号和定义所述装置型号的装置型号标识符,所述音频信号由所述客户端装置响应于基于语音的查询而获得;
使用所述装置型号标识符和与所述音频信号相关联的内容来识别由与所述装置型号相关联的所述多个客户端装置支持的多个装置动作中的装置动作;
用于识别与所述装置动作相对应的装置可执行命令,并且用于识别与所述装置动作相对应的音频或视觉响应;以及
响应于所述基于语音的查询而向所述客户端装置传输要执行的所述装置可执行命令以使得执行所述装置动作并且向所述客户端装置传输所述音频或视觉响应以用于结合并基于所述装置动作来在所述客户端装置上渲染。
10.根据权利要求9所述的方法,包括:
将从所述客户端装置接收到的所述音频信号转换为对应文本,自然语言处理器组件通过使用所述对应文本来识别所述装置动作。
11.根据权利要求9所述的方法,包括:
针对所述多个装置动作中的每个第一装置动作,确定用于使所接收到的音频信号的所述内容与所述第一装置动作相匹配的对应权重值;以及
基于所述权重值来识别所述装置动作。
12.根据权利要求9所述的方法,包括:
在与关联于所述装置型号的所述多个客户端装置交互之前并且在成功地测试了由关联于所述装置型号的所述多个客户端装置支持的多个装置可执行命令中的每个装置可执行命令之后,验证所述装置型号。
13.根据权利要求9所述的方法,包括:
提供用户界面以允许计算装置提供所述装置型号标识符和指示由与所述装置型号相关联的所述多个客户端装置支持的所述多个装置动作的装置动作数据。
14.根据权利要求9所述的方法,包括:
所述装置动作定制组件,用于提供静态应用编程接口(API),以供所述计算装置使用来传输所述装置型号标识符和指示由与所述装置型号相关联的所述多个客户端装置支持的所述多个装置动作的装置动作数据。
15.根据权利要求9所述的方法,其中,所述装置型号标识符与安装在所述多个客户端装置上的应用相关联,所述多个装置动作是由所述应用支持的装置动作,并且所述装置可执行命令是特定于所述应用的可执行命令。
16.根据权利要求15所述的方法,包括:
识别与所述装置可执行命令相关联的一个或多个参数;以及
向所述客户端装置传输所述一个或多个参数。
17.根据权利要求9所述的方法,其中,向所述客户端装置传输所述装置可执行命令包括:在提供给所述客户端装置的JSON响应中传输所述装置可执行命令。
18.根据权利要求9所述的方法,其中,向所述客户端装置传输所述音频或视觉响应包括:向所述客户端装置传输要由所述客户端装置通过将文本表达转换为音频来渲染的所述音频或视觉响应。
CN202410003320.6A 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法 Pending CN117877477A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862640007P 2018-03-07 2018-03-07
US62/640,007 2018-03-07
CN201880028784.5A CN110574105B (zh) 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法
PCT/US2018/031454 WO2019172948A1 (en) 2018-03-07 2018-05-07 Systems and methods for voice-based initiation of custom device actions

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201880028784.5A Division CN110574105B (zh) 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法

Publications (1)

Publication Number Publication Date
CN117877477A true CN117877477A (zh) 2024-04-12

Family

ID=62386969

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201880028784.5A Active CN110574105B (zh) 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法
CN202410003320.6A Pending CN117877477A (zh) 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201880028784.5A Active CN110574105B (zh) 2018-03-07 2018-05-07 用于基于语音发起定制装置动作的***和方法

Country Status (6)

Country Link
US (2) US11314481B2 (zh)
EP (1) EP3596729A1 (zh)
JP (2) JP7130761B2 (zh)
KR (2) KR102520068B1 (zh)
CN (2) CN110574105B (zh)
WO (1) WO2019172948A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019135403A1 (ja) * 2018-01-05 2019-07-11 国立大学法人九州工業大学 ラベル付与装置、ラベル付与方法、及びプログラム
KR102520068B1 (ko) 2018-03-07 2023-04-10 구글 엘엘씨 사용자 지정 디바이스 액션들의 음성 기반 시작을 위한 시스템들 및 방법들
US11127395B1 (en) * 2018-05-23 2021-09-21 Amazon Technologies, Inc. Device-specific skill processing
KR20200027753A (ko) * 2018-09-05 2020-03-13 삼성전자주식회사 전자 장치 및 단축 명령어에 대응하는 태스크 수행 방법
KR102673293B1 (ko) * 2018-11-08 2024-06-11 현대자동차주식회사 서비스 로봇 및 그의 운용 방법
KR20200098025A (ko) * 2019-02-11 2020-08-20 삼성전자주식회사 전자 장치 및 그 제어 방법
KR20200109140A (ko) * 2019-03-12 2020-09-22 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
CN112164400A (zh) * 2020-09-18 2021-01-01 广州小鹏汽车科技有限公司 语音交互方法、服务器和计算机可读存储介质
KR20220118766A (ko) * 2021-02-19 2022-08-26 삼성전자주식회사 발화 입력에 기초한 커맨드를 처리하는 방법 및 모바일 디바이스
CN112540545B (zh) * 2021-02-22 2021-04-30 武汉世聪智能科技有限公司 一种基于多智能***的智能设备控制方法及***
US11915708B2 (en) * 2021-03-18 2024-02-27 Samsung Electronics Co., Ltd. Methods and systems for invoking a user-intended internet of things (IoT) device from a plurality of IoT devices
KR102668933B1 (ko) * 2023-08-10 2024-05-28 (주)로보케어 맞춤형 서비스 제공 장치 및 방법

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69712485T2 (de) 1997-10-23 2002-12-12 Sony Int Europe Gmbh Sprachschnittstelle für ein Hausnetzwerk
GB9911971D0 (en) * 1999-05-21 1999-07-21 Canon Kk A system, a server for a system and a machine for use in a system
JP4314680B2 (ja) 1999-07-27 2009-08-19 ソニー株式会社 音声認識制御システム及び音声認識制御方法
US8498871B2 (en) * 2001-11-27 2013-07-30 Advanced Voice Recognition Systems, Inc. Dynamic speech recognition and transcription among users having heterogeneous protocols
JP2005031856A (ja) 2003-07-09 2005-02-03 Sanyo Electric Co Ltd 機器制御システム
US20050234779A1 (en) * 2003-11-17 2005-10-20 Leo Chiu System for dynamic AD selection and placement within a voice application accessed through an electronic information pace
JP2006221270A (ja) 2005-02-08 2006-08-24 Nec Saitama Ltd 音声認識機能を備えた携帯端末装置のマルチタスクシステム及び方法
JP5394738B2 (ja) * 2005-08-09 2014-01-22 モバイル・ヴォイス・コントロール・エルエルシー 音声制御型ワイヤレス通信デバイス・システム
US7818176B2 (en) 2007-02-06 2010-10-19 Voicebox Technologies, Inc. System and method for selecting and presenting advertisements based on natural language processing of voice-based input
US8538757B2 (en) * 2007-05-17 2013-09-17 Redstart Systems, Inc. System and method of a list commands utility for a speech recognition command system
US8745213B2 (en) 2008-12-19 2014-06-03 Openpeak Inc. Managed services platform and method of operation of same
US10264138B2 (en) * 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US20110067059A1 (en) * 2009-09-15 2011-03-17 At&T Intellectual Property I, L.P. Media control
US20110271210A1 (en) * 2010-04-30 2011-11-03 American Teleconferncing Services Ltd. Conferencing Application Store
US8805683B1 (en) * 2012-02-24 2014-08-12 Google Inc. Real-time audio recognition protocol
TWI453603B (zh) 2010-06-30 2014-09-21 Ibm 平台無關之資訊處理系統,其通訊方法,及其電腦程式產品
US8787987B2 (en) * 2010-10-19 2014-07-22 General Motors Llc Configuring of vehicle communications modules
US10069781B2 (en) 2015-09-29 2018-09-04 Theatro Labs, Inc. Observation platform using structured communications with external devices and systems
US9847083B2 (en) * 2011-11-17 2017-12-19 Universal Electronics Inc. System and method for voice actuated configuration of a controlling device
KR101972955B1 (ko) * 2012-07-03 2019-04-26 삼성전자 주식회사 음성을 이용한 사용자 디바이스들 간 서비스 연결 방법 및 장치
US9125987B2 (en) 2012-07-17 2015-09-08 Elwha Llc Unmanned device utilization methods and systems
US9733644B2 (en) 2012-07-17 2017-08-15 Elwha Llc Unmanned device interaction methods and systems
US8953757B2 (en) * 2012-08-06 2015-02-10 Angel.Com Incorporated Preloading contextual information for applications using a conversation assistant
US9196250B2 (en) 2012-11-16 2015-11-24 2236008 Ontario Inc. Application services interface to ASR
JP2014122978A (ja) 2012-12-20 2014-07-03 Casio Comput Co Ltd 撮像装置、音声認識方法、及びプログラム
US9172747B2 (en) * 2013-02-25 2015-10-27 Artificial Solutions Iberia SL System and methods for virtual assistant networks
US9397836B2 (en) * 2014-08-11 2016-07-19 Fisher-Rosemount Systems, Inc. Securing devices to process control systems
JP6236805B2 (ja) 2013-03-05 2017-11-29 日本電気株式会社 発話コマンド認識システム
US9189196B2 (en) 2013-03-14 2015-11-17 Google Inc. Compartmentalized self registration of external devices
US9462663B2 (en) * 2013-05-28 2016-10-04 Abl Ip Holding Llc Interactive user interface functionality for lighting devices or system
US9443527B1 (en) 2013-09-27 2016-09-13 Amazon Technologies, Inc. Speech recognition capability generation and control
US9698999B2 (en) * 2013-12-02 2017-07-04 Amazon Technologies, Inc. Natural language control of secondary device
US9626966B2 (en) * 2013-12-18 2017-04-18 Harman International Industries, Incorporated Voice recognition query response systems and methods for generating query responses using information from a vehicle
US9823811B2 (en) 2013-12-31 2017-11-21 Next It Corporation Virtual assistant team identification
AU2015266863B2 (en) * 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US10448307B2 (en) * 2014-07-15 2019-10-15 Comcast Cable Communications, Llc Systems and methods for managing network devices
US9318107B1 (en) 2014-10-09 2016-04-19 Google Inc. Hotword detection on multiple devices
US9741344B2 (en) * 2014-10-20 2017-08-22 Vocalzoom Systems Ltd. System and method for operating devices using voice commands
KR102277259B1 (ko) * 2014-11-26 2021-07-14 엘지전자 주식회사 디바이스 제어 시스템, 디지털 디바이스 및 디지털 디바이스 제어 방법
US10147421B2 (en) 2014-12-16 2018-12-04 Microcoft Technology Licensing, Llc Digital assistant voice input integration
US9552816B2 (en) * 2014-12-19 2017-01-24 Amazon Technologies, Inc. Application focus in speech-based systems
US9811312B2 (en) 2014-12-22 2017-11-07 Intel Corporation Connected device voice command support
US10509829B2 (en) * 2015-01-21 2019-12-17 Microsoft Technology Licensing, Llc Contextual search using natural language
US9947364B2 (en) 2015-09-16 2018-04-17 Google Llc Enhancing audio using multiple recording devices
US20170092278A1 (en) 2015-09-30 2017-03-30 Apple Inc. Speaker recognition
US9747926B2 (en) 2015-10-16 2017-08-29 Google Inc. Hotword recognition
US9928840B2 (en) 2015-10-16 2018-03-27 Google Llc Hotword recognition
US9653075B1 (en) 2015-11-06 2017-05-16 Google Inc. Voice commands across devices
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US9820039B2 (en) 2016-02-22 2017-11-14 Sonos, Inc. Default playback devices
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10958695B2 (en) 2016-06-21 2021-03-23 Google Llc Methods, systems, and media for recommending content based on network conditions
US9972320B2 (en) 2016-08-24 2018-05-15 Google Llc Hotword detection on multiple devices
US10528977B1 (en) * 2016-09-22 2020-01-07 Amazon Technologies, Inc. Generating dynamic audio content for delivery to audio devices
US10096319B1 (en) * 2017-03-13 2018-10-09 Amazon Technologies, Inc. Voice-based determination of physical and emotional characteristics of users
CN107507614B (zh) * 2017-07-28 2018-12-21 北京小蓦机器人技术有限公司 结合ui执行自然语言命令的方法、设备、***与存储介质
US11450314B2 (en) * 2017-10-03 2022-09-20 Google Llc Voice user interface shortcuts for an assistant application
CN107919129A (zh) * 2017-11-15 2018-04-17 百度在线网络技术(北京)有限公司 用于控制页面的方法和装置
US11087752B2 (en) 2018-03-07 2021-08-10 Google Llc Systems and methods for voice-based initiation of custom device actions
KR102520068B1 (ko) 2018-03-07 2023-04-10 구글 엘엘씨 사용자 지정 디바이스 액션들의 음성 기반 시작을 위한 시스템들 및 방법들

Also Published As

Publication number Publication date
US20210026593A1 (en) 2021-01-28
WO2019172948A1 (en) 2019-09-12
US12002463B2 (en) 2024-06-04
KR102520068B1 (ko) 2023-04-10
EP3596729A1 (en) 2020-01-22
US11314481B2 (en) 2022-04-26
CN110574105B (zh) 2024-01-23
JP2021515911A (ja) 2021-06-24
CN110574105A (zh) 2019-12-13
KR20230051619A (ko) 2023-04-18
KR20200128725A (ko) 2020-11-16
JP2022164744A (ja) 2022-10-27
JP7130761B2 (ja) 2022-09-05
US20220244910A1 (en) 2022-08-04

Similar Documents

Publication Publication Date Title
CN110574105B (zh) 用于基于语音发起定制装置动作的***和方法
US11087752B2 (en) Systems and methods for voice-based initiation of custom device actions
KR102389331B1 (ko) 컴퓨팅 디바이스간의 액세스 제어 동기화
CN112083987A (zh) 移动装置动作的远程调用
US11556442B2 (en) Immersive web-based simulator for digital assistant-based applications
US11556454B2 (en) Immersive web-based simulator for digital assistant-based applications
JP5559078B2 (ja) コミュニケーションシステム
CN107924403B (zh) 查询组成***
EP3516831B1 (en) Uniform resource identifier and image sharing for contextual information display
US9968844B2 (en) Server and user device for providing a computer implemented game reward
EP4235438A2 (en) Assessing applications for delivery via an application delivery server
US11765118B1 (en) Selective posting for social networks
KR20200016464A (ko) 사용자 가치 평가 장치 및 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination