CN113836507A - 用于言语设备控制的多用户虚拟助手 - Google Patents

用于言语设备控制的多用户虚拟助手 Download PDF

Info

Publication number
CN113836507A
CN113836507A CN202110944409.9A CN202110944409A CN113836507A CN 113836507 A CN113836507 A CN 113836507A CN 202110944409 A CN202110944409 A CN 202110944409A CN 113836507 A CN113836507 A CN 113836507A
Authority
CN
China
Prior art keywords
action
user
audio data
spoken utterance
automated
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.)
Granted
Application number
CN202110944409.9A
Other languages
English (en)
Other versions
CN113836507B (zh
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
Priority to CN202110944409.9A priority Critical patent/CN113836507B/zh
Publication of CN113836507A publication Critical patent/CN113836507A/zh
Application granted granted Critical
Publication of CN113836507B publication Critical patent/CN113836507B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/22Interactive procedures; Man-machine interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Abstract

本公开涉及用于言语设备控制的多用户虚拟助手。在一个示例中,一种方法包括:接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;基于所述音频数据而识别提供了所述口头话语的用户;基于所述音频数据而识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于所述口头话语;确定所识别的用户是否被授权以致使执行所识别的自动化动作;以及响应于确定所识别的用户被授权以致使执行所识别的自动化动作,致使所述一个或多个自动化设备执行所识别的自动化动作。

Description

用于言语设备控制的多用户虚拟助手
分案说明
本申请属于申请日为2018年3月29日的中国发明专利申请201880029263.1的分案申请。
技术领域
本公开涉及用于言语设备控制的多用户虚拟助手。
背景技术
一些计算平台可以提供用户接口,用户可以从所述用户接口与虚拟的计算助手(例如,也称为“智能助手”或简称为“助手”)聊天、讲话或以其它方式进行沟通,以致使所述助手响应于用户的需求输出有用的信息,或另外执行某些操作以帮助用户完成多种真实世界或虚拟任务。举例来说,一些助手可以触发自动化设备来执行自动化动作以满足用户请求。遗憾的是,这种助手可能无法区分不同的用户,并且可能会触发自动化操作的执行而不考虑提供请求的用户的身份。
发明内容
通常而言,本公开的技术可以使虚拟计算助手(例如,也称为“智能助手”或简称为“助手”)能够选择性地致使自动化设备基于提出请求的用户的身份和相关联的访问权限(例如,许可、授权等)而执行满足口头或言语用户请求的自动化动作。举例来说,计算设备可以利用麦克风来接收对应于用户话语的声学输入(例如,音频数据)。基于声学输入,计算设备可以识别提供了口头话语的用户,并且识别用于满足所述话语的自动化动作(例如,使用语音识别)。如果用户具有致使执行识别的自动化动作的访问权限,则计算设备可以发起所述自动化动作的执行(即,致使一个或多个自动化设备执行所述自动化动作)。类似地,如果用户不具有致使执行识别的自动化动作的访问权限,则计算设备可以避免发起自动化动作的执行。通过这种方式,所述助手可以防止用户触发其未经授权的自动化动作。为此,所述助手可以提高自动化动作的口头或言语触发的安全性。
在一个示例中,一种方法包括:接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;基于所述音频数据而识别提供了口头话语的用户;由一个或多个处理器并基于音频数据,识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;由一个或多个处理器确定识别的用户是否被授权以致使执行识别的自动化动作;以及响应于确定识别的用户被授权以致使执行识别的自动化动作,由所述一个或多个处理器致使所述一个或多个自动化设备执行识别的自动化动作。
在另一示例中,一种计算系统包括:通信模块;至少一个处理器;以及至少一个存储器。在该示例中,至少一个存储器包括指令,所述指令当被执行时致使至少一个处理器提供助手,所述助手被配置成:经由通信模块,接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;获得提供了口头话语的用户的标识,所述标识基于音频数据而确定;基于音频数据,识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;确定识别的用户是否被授权以致使执行识别的自动化操作;以及响应于确定识别的用户被授权以致使执行识别的自动化动作,致使所述一个或多个自动化设备执行识别的自动化动作。
在另一示例中,一种计算机可读存储介质存储指令,所述指令当被执行时致使计算系统的至少一个处理器:接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;获得提供了口头话语的用户的标识,所述识别基于音频数据而确定;基于音频数据而识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;确定识别的用户是否被授权以致使执行识别的自动化操作;以及响应于确定识别的用户被授权以致使执行识别的自动化动作,致使所述一个或多个自动化设备执行识别的自动化动作。
在另一示例中,一种计算系统或计算设备包括:用于接收由计算设备的一个或多个麦克风生成的音频数据的装置,所述音频数据表示口头话语;用于基于音频数据而识别提供了口头话语的用户的装置;用于基于音频数据而识别与一个或多个自动化设备相关联的自动化动作的装置,所述自动化动作对应于口头话语;用于确定识别的用户是否被授权以致使执行识别的自动化操作的装置;以及用于响应于确定识别的用户被授权以致使执行识别的自动化动作,致使所述一个或多个自动化设备执行识别的自动化动作的装置。
一个或多个示例的细节在附图和以下描述中阐述。根据说明书和附图以及根据权利要求,本公开的其它特征、目标和优点将是显而易见的。
附图说明
图1是示出根据本公开的一个或多个方面的执行示例性虚拟助手的示例性系统的概念图。
图2是示出根据本公开的一个或多个方面的被配置成执行示例性虚拟助手的示例性计算设备的框图。
图3是示出根据本公开的一个或多个方面的由执行示例性虚拟助手的一个或多个处理器执行的示例性操作的流程图。
图4是示出根据本公开的一个或多个方面的被配置成执行示例性虚拟助手的示例性计算设备的框图。
图5是示出根据本公开的一个或多个方面的由执行示例性虚拟助手的一个或多个处理器执行的示例性操作的流程图。
具体实施方式
图1是示出根据本公开的一个或多个方面的执行示例性虚拟助手的示例性系统的概念图。图1的系统100包括经由网络130与自动化设备106A到106N(统称为“自动化设备106”)通信的数字助手系统160、搜索服务器系统180和计算设备110。虽然系统100被示出为分布在助手自动化设备106、数字助手系统160、搜索服务器系统180和计算设备110中,但是在其它示例中,归因于系统100的特征和技术可以由计算设备110的本地部件在内部执行。类似地,数字助手系统160可以包括某些部件并且执行各种技术,所述技术在以下描述中另外归因于搜索服务器系统180和/或计算设备110。
网络130表示用于在计算系统、服务器与计算设备之间传输数据的任何公共或专用通信网络,例如蜂窝、Wi-Fi和/或其它类型的网络。数字助手系统160可以经由网络130与计算设备110交换数据,以当计算设备110连接至网络130时提供可被计算设备110访问的虚拟助手服务。数字助手系统160可以经由网络130与搜索服务器系统180交换数据,以访问由搜索服务器系统180提供的搜索服务。计算设备110可以经由网络130与搜索服务器系统180交换数据,以访问由搜索服务器系统180提供的搜索服务。
网络130可以包括可操作地相互联接从而提供系统160和180与计算设备110之间的信息交换的一个或多个网络集线器、网络交换机、网络路由器或任何其它网络设备。计算设备110、数字助手系统160和搜索服务器系统180可以使用任何适当的通信技术跨网络130传输和接收数据。计算设备110、数字助手系统160和搜索服务器系统180可以各自使用相应的网络链路可操作地联接到网络130。将计算设备110、数字助手系统160和搜索服务器系统180联接到网络130的链路可以是以太网或其它类型的网络连接,并且这种连接可以是无线和/或有线连接。
数字助手系统160和搜索服务器系统180表示能够向诸如网络130等网络发送信息以及从所述网络接收信息的任何合适的远程计算系统,诸如一个或多个台式计算机、膝上型计算机、大型机、服务器、云计算系统等。数字助手系统160对于虚拟助手服务作为主机(或至少提供对虚拟助手服务的访问)。搜索服务器系统180对于搜索服务作为主机(或至少提供对搜索服务的访问)。在一些示例中,数字助手系统160和搜索服务器系统180表示云计算系统,所述云计算系统经由云提供对其相应服务的访问。
自动化设备106表示能够向诸如网络130等网络发送信息以及从所述网络接收信息的任何合适的自动化设备,诸如锁、灯、电动百叶窗或其它窗帘、车库门开启工具、草坪洒水器、风扇、烟雾和/或一氧化碳检测器、厨房用具、扬声器、恒温器或其它气候控制设备、安全摄像头、警报系统、门铃、充电器、宠物食品分配器、泄漏和/或洪水传感器、能量监视设备、电视或其它音频/视频设备、电动床垫等。在一些示例中,自动化设备106可以被称为所谓的智能设备或物联网(IoT)设备。在一些示例中,自动化设备106可以是家庭自动化设备,因为自动化设备106可以位于住宅之中、之上或周围。然而,通常而言,自动化设备106可以位于包括商业(例如,零售店、办公室等)、住宅、工业、政府(例如,机场、市政、军事等)的任何环境或其它环境之中,之上或周围。
自动化设备106中的每个可以被配置成执行一个或多个自动化动作。举一个示例来说,自动化设备106的门或窗锁可以被配置成执行锁定门或窗的锁定动作和解锁门或窗的解锁动作。举另一个示例来说,自动化设备106的车库门开启工具可以被配置成执行打开与车库门开启工具通信的车库门的开启动作,和关闭与车库门开启工具通信的车库门的关闭动作。举另一个示例来说,自动化设备106的恒温器可以被配置成执行温度调整动作(例如,升高或降低温度设定点)、湿度调整动作(例如,升高或降低湿度设定点)、风扇激活动作(例如,激活暖通空调(HVAC)系统的风扇)和/或风扇停用动作(例如,用于停用HVAC系统的风扇)。
自动化设备106可以响应于接收到来自诸如计算设备110或数字助手系统160等其它设备的请求而执行自动化动作。举例来说,自动化设备106的宠物食品分配器可以响应于接收到来自计算设备110(例如,经由网络130)的用于执行分配食物动作的请求而执行分配食物动作。
计算设备110表示一个或多个个别移动或非移动计算设备。计算设备110的示例包括移动电话、平板计算机、膝上型计算机、台式计算机、服务器、大型机、机顶盒、电视、可穿戴设备(例如,计算机化手表、计算机化眼镜、计算机化手套等)、家庭自动化设备或系统(例如,智能恒温器或家庭助手设备)、个人数字助理(PDA)、游戏系统、媒体播放器、电子书阅读器、移动电视平台、汽车导航或信息娱乐系统或被配置成执行或访问虚拟助手并经由网络(诸如,网络130)接收信息的任何其它类型的移动、非移动、可穿戴和不可穿戴计算设备。
数字助手系统160和/或搜索服务器系统180可以经由网络130与计算设备110通信,以使计算设备110访问由数字助手系统160提供的虚拟助手服务和/或向计算设备110提供对由搜索服务器系统180提供的搜索服务的访问。在提供虚拟助手服务的过程中,数字助手系统160可以经由网络130与搜索服务器系统180通信,以获得用于向用户提供虚拟助手服务信息来完成任务的搜索结果。
在图1的示例中,数字助手系统160包括远程助手模块122B和用户信息数据存储装置124B。远程助手模块122B可以将用户信息数据存储装置124B维持作为数字助手系统160经由网络130(例如,向计算设备110)提供的虚拟助手服务的一部分。计算设备110包括用户接口设备(UID)112、用户接口(UI)模块120、本地助手模块122A和用户信息数据存储装置124A。本地助手模块122A可以将用户信息数据存储装置124A维持作为在计算设备110处本地执行的虚拟助手服务的一部分。远程助手模块122B和本地助手模块122A可以统称为助手模块122A和122B。本地数据存储装置124A和远程数据存储装置124B可以被统称为数据存储装置124A和124B。
模块120、122A、122B和182可以使用在计算设备110、数字助手系统160或搜索服务器系统180中的一个中驻留和/或执行的软件、硬件、固件或硬件、软件和固件的混合来执行所描述的操作。计算设备110、数字助手系统160和搜索服务器系统180可以利用多个处理器或多个设备来执行模块120、122A、122B和182。计算设备110、数字助手系统160和搜索服务器系统180可以将模块120、122A、122B和182作为在底层硬件上执行的虚拟机来执行。模块120、122A、122B和182可以作为操作系统或计算平台的一项或多项服务执行。模块120、122A、122B和182可以作为一个或多个可执行程序在计算平台的应用层处执行。
计算设备110的UID 112可以用作计算设备110的输入和/或输出设备。可以使用各种技术来实现UID 112。举例来说,UID 112可以用作使用存在敏感型输入屏幕的输入设备,所述存在敏感型输入屏幕诸如电阻式触摸屏、表面声波触摸屏、电容性触摸屏、投射电容式触摸屏、压敏屏幕、声脉冲识别触摸屏或另一种存在敏感型显示技术。
UID 112可以用作使用麦克风技术、红外传感器技术或用于接收用户输入的其它输入设备技术的输入设备。例如,UID 112可以使用内置麦克风技术来检测UI模块120和/或本地助手模块122A为完成任务而处理的语音输入。举另一个示例来说,UID 112可以包括可以接收来自计算设备110的用户的触觉输入的存在敏感型显示器。UID 112可以通过检测来自用户的一个或多个手势(例如,用户利用手指或手写笔触碰或指向UID 112的一个或多个位置)来接收触觉输入的指示。
UID 112可以用作输出(例如,显示)设备并且将输出呈现给用户。UID 112可以用作使用任何一个或多个显示设备的输出设备,所述一个或多个显示设备诸如液晶显示器(LCD)、点矩阵显示器、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、电子墨水或能够向计算设备110的用户输出可见信息的类似的单色或彩色显示器。UID 112可以用作使用扬声器技术、触觉反馈技术或在向用户输出信息所使用的的其它输出设备技术的输出设备。UID 112可以呈现与由本地助手模块122A和/或远程助手模块122B提供的虚拟助手有关的用户接口。UID112可以呈现与在计算设备110上执行和/或可从计算设备110访问的计算平台、操作系统、应用和/或服务的其它功能(例如,电子邮件、聊天、在线服务、电话、游戏等)有关的用户接口。
UI模块120可以管理与UID 112和包括与数字助手系统160进行交互的计算设备110的其它部件的用户交互,以便经由UID 112提供助手服务。UI模块120可以致使UID 112在计算设备110的用户查看输出和/或在UID 112处提供输入时输出用户接口。UI模块120和UID112可以在不同的时间并且当用户和计算设备110处于不同位置时,在用户与用户接口交互时接收来自用户的一个或多个输入指示(例如,语音输入、手势输入等)。UI模块120和UID 112可以解释在UID 112处检测到的输入,并且可以将关于在UID 112处检测到的输入的信息转发到例如本地助手模块122A和/或在计算设备110处执行的一个或多个其它相关联平台、操作系统、应用和/或服务,以致使计算设备110执行各功能。
UI模块120可以从在计算设备110和/或一个或多个远程计算系统(诸如,系统160和180)处执行的一个或多个相关联平台、操作系统、应用和/或服务接收信息和指令。另外,模块120可以充当在计算设备110处执行的一个或多个相关联平台、操作系统、应用和/或服务与计算设备110的各种输出设备(例如,扬声器、LED指示器、音频或触觉输出设备等)之间的媒介,以利用计算设备110产生输出(例如,图形、闪光灯、声音、触觉响应等)。
搜索模块182可以对被确定为与搜索模块182自动生成(例如,基于与计算设备110相关联的场境信息)的或搜索模块182从数字助手系统160或计算设备110接收到(例如,作为虚拟助手代表计算设备110的用户正在完成的任务的一部分)的搜索查询相关的信息执行搜索。搜索模块182可以基于搜索查询而执行互联网搜索,以识别与来自多种信息源(例如,存储在本地的或远离搜索服务器系统180存储的)中的搜索查询相关的信息(例如,天气或交通状况、新闻、股票价格、运动成绩、用户时间表、运输时间表、零售价格等)。在执行搜索之后,搜索模块182可以将从搜索返回的信息(例如,搜索结果)输出到数字助手系统160或计算设备110。
计算设备110的本地助手模块122A和数字助手系统160的远程助手模块122B可以各自执行本文所述的类似功能以自动地执行助手,所述助手被配置成在用户与助手之间的持续对话期间获得与计算设备的用户相关联的个人信息。远程助手模块122B和用户信息数据存储装置124B表示示例性虚拟助手的服务器侧或云实施方式,而本地助手模块122A和用户信息数据存储装置124A表示示例性虚拟助手的客户端侧或本地实施方式。
模块122A和122B(统称为“助手模块122”)可以分别包括相应的软件代理,所述软件代理被配置成作为智能个人助手执行,所述智能个人助手可以为诸如计算设备110的用户等个人执行任务或服务。助手模块122可以基于用户输入(例如,在UID 112处检测到)、位置感知(例如,基于场境)和/或访问来自多种信息源(例如,本地地存储在计算设备110、数字助手系统160处或经由由搜索服务器系统180提供的搜索服务获得)的其它信息(例如,天气或交通状况、新闻、股票价格、运动成绩、用户时间表、运输时间表、零售价格等)的能力。助手模块122可以执行人工智能和/或机器学习技术,以代表用户自动地识别并完成一个或多个任务。
由助手模块122提供的相应助手可以被配置成在执行操作的过程中触发或另外发起自动化动作的执行,以满足计算设备110的用户的言语或口头请求。举例来说,由助手模块122提供的助手可以用计算设备110的一个或多个麦克风接收声学输入(例如,音频数据),所述声音输入对应于计算设备110的用户请求执行特定的自动化动作(例如,“解锁前门”)的话语。由助手模块122提供的助手可以分析音频数据,以识别自动化设备106的对应于口头话语的自动化动作和相关联的自动化设备。举例来说,由助手模块122提供的助手可以利用语音识别来确定“解锁前门”的口头话语对应于由与前门相关联的自动化设备106的锁执行的解锁动作。由助手模块122提供的助手可以致使自动化设备106的识别的自动化设备执行识别的自动化动作。举例来说,由助手模块122提供的助手可以向与前门相关联的自动化设备106的锁输出执行解锁动作的请求。以此方式,由助手模块122提供的助手可以促进自动化动作的执行,以满足计算设备110的用户的言语或口头请求。
计算设备110可以被多个用户利用(例如,多个不同的用户可以向计算设备110提供口头话语)。举一个示例来说,在计算设备110位于住宅环境中的情况下,计算设备110可以被家庭成员、室友、客人等利用。举另一示例来说,在计算设备110位于商业或工业环境中的情况下,计算设备110可以被各种管理人员、工人、保安人员、访客等利用。
在一些示例中,可能不希望计算设备110的每个用户能够触发每个可用的自动化动作。例如,可能不希望计算设备110的每个用户都能够触发由与前门相关联的自动化设备106的锁执行的解锁动作。另一方面,可能期望计算设备110的每个用户都能够触发自动化设备106的光的调光动作。
根据本公开的一种或多种技术,由助手模块122提供的助手可以响应于基于提供了口头话语的用户(下面称作“提出请求的用户”)的身份的所述口头话语选择性地约束自动化动作的执行。在操作中,由助手模块122提供的助手可以用计算设备110的一个或多个麦克风接收声学输入(例如,音频数据),所述声学输入对应于计算设备110的用户请求执行特定自动化动作(例如,“解锁前门”)的话语。在一些示例中,由助手模块122提供的助手可以基于计算设备110从由计算设备110的一个或多个麦克风生成的音频数据识别的触发短语(例如,“好的计算机”、“嘿设备”等)而接收对应于所述话语的音频数据。
由助手模块122提供的助手可以识别提出请求的用户。举例来说,由助手模块122提供的助手可以通过将音频数据与被配置成利用计算设备110的一个或多个用户的声纹进行比较来执行说话者识别。如下面进一步详细讨论的,被配置成利用计算设备110的一个或多个用户的声纹可以存储在用户信息存储装置124A和/或用户信息存储装置124B中。如果说话者识别的执行产生了匹配的声纹,则由助手模块122提供的助手可以确定提出请求的用户是对应于匹配的声纹的用户。如果说话者识别的执行没有产生匹配的声纹,则由助手模块122提供的助手可以确定提出请求的用户是访客用户。
由助手模块122提供的助手可以分析、解析或以其它方式处理音频数据,以识别自动化设备106的对应于口头话语的自动化动作和相关联的自动化设备。举例来说,由助手模块122提供的助手可以利用语音识别来确定“解锁前门”的口头话语对应于由与前门相关联的自动化设备106的锁执行的解锁动作。
由助手模块122提供的助手可以确定识别的用户是否被授权致使执行识别的自动化动作。举例来说,由助手模块122提供的助手可以确定许可设置(授权设置、访问权限等)是否指示识别的用户被授权来致使执行识别的自动化动作。如下面进一步详细讨论的,许可设置可以存储在用户信息存储装置124A和/或用户信息存储装置124B中。
响应于确定识别的用户被授权致使执行识别的自动化动作,由助手模块122提供的助手可以致使自动化设备106的识别的自动化设备执行识别的自动化动作。举例来说,响应于确定识别的用户被授权来致使对与前门相关联的自动化设备106的锁执行解锁动作,由助手模块122提供的助手可以向与前门相关联的自动化设备106的锁输出执行解锁动作的请求。
响应于确定识别的用户没有被授权以致使执行识别的自动化动作,由助手模块122提供的助手可能不会致使自动化设备106的识别的自动化设备执行识别的自动化动作。在这种示例中的一些中,由助手模块122提供的助手可以经由UID 112输出这样的指示:识别的用户没有被授权以致使执行识别的自动化动作。例如,由助手模块122提供的助手可以致使UID 112输出带有合成声音的音频数据,所述合成的声音说识别的用户没有被授权以致使执行识别的自动化动作(例如,“对不起,您似乎无权解锁前门”)。以此方式,由助手模块122提供的助手可以促进自动化动作的执行,以满足计算设备110的用户的言语或口头请求,同时还提高了系统100的安全性。
由远程助手模块122B和本地助手模块122A提供的相应助手可以在执行操作以支持与计算设备110的用户的对话的过程中,自动创建、生成或另外维持在对话期间获得的信息的个人记录,并且以分别与用户信息数据存储装置124B和用户信息数据存储装置124A相同的结构化和语义方式将个人记录存储为特定于用户的值。数据存储装置124B和124A可以分别使由远程助手模块122B和本地助手模块122A执行的相应助手能够快速访问个人信息(例如,特定于用户的值)以完成真实世界任务(例如,自动化动作)、虚拟任务或另外响应于计算设备110的用户的即时或未来需求。为了便于描述,主要从由本地助手模块122A执行的角度描述了本公开的技术。
助手模块122A和122B可以维持用户信息数据装置124A和124B,作为由助手模块122A和122B一起或分开地提供给计算设备110的虚拟助手服务的一部分。由助手模块122提供的助手可以在执行操作以支持与计算设备110的用户进行对话的过程中,维持从对话中自动剔除的信息的个人记录,并以与用户信息存储装置124A和124B相同的结构化和语义方式存储个人记录。数据存储装置124A和124B可以使由助手模块122A和122B执行的助手能够快速访问个人信息以完成真实世界的任务、虚拟任务或者另外响应于计算设备110的用户的即时和/或未来需求。
助手模块122A和122B可以在首先从用户接收这样做的明确许可之后,仅保留与计算设备110的用户相关联的个人记录。因此,用户可以完全控制助手如何收集和使用关于用户的信息,包括许可设置和自动化动作使用历史记录。例如,在保留与计算设备110的用户相关联的信息之前,助手模块122A和122B可以致使UI模块120经由UID112呈现用户接口,所述用户接口请求用户以选择框、单击按钮、陈述语音输入或另外向用户接口提供特定输入,所述特定输入被助手模块122A和122B解释成用于助手模块122A和122B以收集并利用用户的个人信息的明确、肯定的同意。
助手模块122A和122B可以在将个人信息存储在数据存储装置124A和124B处之前,对被维持作为个人记录的信息进行加密或以其它方式进行处理,以移除用户的实际身份。例如,信息可以由助手模块122A和122B进行处理,以使得当存储在数据存储装置124A和124B处时,任何个人可识别信息都将从用户的个人记录中移除。
助手模块122A和122B可以致使UI模块120经由UID 112呈现用户接口,计算设备110的用户可以从所述用户接口修改或从存储在数据存储装置124A和124B处的个人记录中移除信息。例如,用户接口可以提供区域,计算设备110的用户可以在所述区域处提供输入以将修改或移除个人信息的特定部分的命令传达给助手模块122A和122B。以这种方式,计算设备110的用户可以完全控制由助手模块122A和122B保留在数据存储装置124A和124B处的信息。
在由数据存储装置124A和124B存储的个人记录中的每个条目可以与预定义模式相关联,所述预定义模式可以被助手模块122A和122B快速遍历或解析以找出助手模块122A和122B在当前时间所需的信息以理解用户需求并且帮助用户完成任务。一旦个人信息已经被记录为特定于用户的一个或多个值,则助手模块122A和122B可以快速使用存储在数据存储装置124A和124B处的信息来完成任务。如果没有正在进行的任务,则助手模块122A和122B可以为用户提供助手在未来会如何使用所述信息来帮助用户的示例。用户随后可以在UID 112处提供输入以命令助手模块122A和122B忽略或修改该信息。
由数据存储装置124A和124B存储的值可以是文本值(例如,人名、地名、实体的其它文本描述符)、数值(例如,年龄、身高、体重、其它生理数据、与实体相关联的其它数值信息)、或特定于用户的值的指示(例如,实体在用户的知识图中的存储器位置、联系人在地址簿中的存储器位置等)。换句话说,特定于用户的值可以采用许多形式,并且特定于由记录模式定义的个人记录的字段。所述值可以指示特定于用户的实际信息,或者可以是可以从中检索特定于用户的信息的位置的参考。
在助手模块122A和122B接收到由UID 112检测到的指示用户同意向助手模块122A和122B提供关于用户的个人信息(例如,用户的声纹)的用户输入指示之后,助手模块122A和122B可以接收来自UI模块120的用户输入指示(例如,自然语言的语音),该用户输入指示包括用户诵读一个或多个短语的音频数据,可以从所述音频数据生成声纹。如上面所讨论的,可以将以这种方式向计算设备110登记或另外注册的用户的声纹存储在用户信息存储装置124A和/或用户信息存储装置124B中。同样如上面所讨论的,在一些示例中,由助手模块122提供的助手可以在识别出哪个用户提供了口头话语时利用存储在用户信息存储装置124A和/或用户信息存储装置124B中的声纹。
由助手模块122提供的助手可以管理自动化设备的许可设置的创建和更新。例如,在促进将自动化设备106中的新的自动化设备添加到系统100(例如,通过设置程序引导用户并将新的自动化设备与系统100相关联)时,由助手模块122提供的助手可以请求管理员(或其它特权用户,诸如所有者或被配置成利用计算设备110的第一用户)选择哪些用户和/或用户组被授权以访问新的自动化设备。由助手模块122提供的助手可以存储(例如,存储在用户信息数据存储装置124A和/或124B中)新的自动化设备的记录以及许可设置,所述许可设置反映管理员选择哪些用户和/或用户组被授权访问新的自动化设备。新的自动化设备的记录可以包括:新的自动化设备能够执行哪些自动化动作的指示、新的自动化设备的联系信息(例如,MAC地址、IP地址等)和/或由助手模块122提供的助手可以用来控制新的自动化设备的任何其它信息。在一些示例中,所有自动化设备的记录可以被存储在图形结构中。在住宅环境中,图形结构可以被称为主图。
图2是示出根据本公开的一个或多个方面的被配置成执行示例性虚拟助手的示例性计算设备的框图。下面将图2的计算设备210描述为图1的计算设备110的示例。图2仅示出了计算设备210的一个特定示例,并且计算设备210的许多其它示例可以在其它实例中使用,并且可以包括示例性计算设备210中包括的部件的子集,或者可以包括图2中未示出的额外部件。
如图2的示例中所示,计算设备210包括用户接口设备(UID)212、一个或多个处理器240、一个或多个通信单元242、一个或多个输入部件244、一个或多个输出部件246以及一个或多个存储部件248。UID212包括显示部件202、存在敏感型输入部件204、麦克风部件206和扬声器部件208。计算设备210的存储部件248包括UI模块220、助手模块222、搜索模块282、一个或多个应用模块226、场境模块230、用户信息数据存储装置224、用户识别模块232、动作识别模块234和授权模块236。
通信信道250可以互连部件212、240、242、244、246和248中的每个,以进行部件间通信(物理地、通信地和/或可操作地)。在一些示例中,通信信道250可以包括系统总线、网络连接、进程间通信数据结构或用于传达数据的任何其它方法。
计算设备210的一个或多个通信单元242可以通过在一个或多个网络(例如,图1的系统100的网络130)上传输和/或接收网络信号而经由一个或多个有线和/或无线网络与外部设备(例如,图1的系统100的数字助手系统160和/或搜索服务器系统180)通信。通信单元242的示例包括网络接口卡(例如,诸如以太网卡)、光学收发器、射频收发器、GPS接收器或可以发送和/或接收信息的任何其它类型的设备。通信单元242的其它示例可以包括短波无线电、蜂窝数据无线电、无线网络无线电以及通用串行总线(USB)控制器。
计算设备210的一个或多个输入部件244可以接收输入。输入的示例是触觉、音频和视频输入。在一个示例中,计算设备210的输入部件242包括存在敏感型输入设备(例如,触敏屏幕、PSD)、鼠标、键盘、语音响应系统、相机、麦克风或用于检测来自人或机器的输入的任何其它类型的设备。在一些示例中,输入部件242可以包括一个或多个传感器部件、一个或多个位置传感器(GPS部件、Wi-Fi部件、蜂窝部件)、一个或多个温度传感器、一个或多个移动传感器(例如,加速度计、陀螺仪)、一个或多个压力传感器(例如,气压计)、一个或多个环境光传感器以及一个或多个其它传感器(例如,红外接近传感器、湿度计传感器等)。仅举几个其它非限制性示例来说,其它传感器可以包括心率传感器、磁力计、葡萄糖传感器、嗅觉传感器、罗盘传感器、步进计数器传感器。
计算设备110的一个或多个输出部件246可以生成输出。输出的示例是触觉、音频和视频输出。在一个示例中,计算设备210的输出部件246包括存在敏感型显示器、声卡,视频图形适配器卡、扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或用于对人或机器生成输出的任何其它类型的设备。
计算设备210的UID 212可以类似于计算设备110的UID 112,并且包括显示部件202、存在敏感型输入部件204、麦克风部件206和扬声器部件208。显示部件202可以是由UID212在其上显示信息的屏幕,同时存在敏感型输入部件204可以检测显示部件202处和/或附近的物体。扬声器部件208可以是UID 212从中播放可听信息的扬声器,而麦克风部件206可以检测在显示部件202和/或扬声器部件208处和/或附近提供的可听输入。
虽然被示出为计算设备210的内部部件,但是UID 212也可以表示与计算设备210共享数据路径以用于传输和/或接收输入和输出的外部部件。举例来说,在一个示例中,UID212表示计算设备210的位于计算设备210的外部包装内并物理地连接到所述外部包装(例如,移动电话上的屏幕)的内置部件。在另一个示例中,UID 212表示计算部件210的位于计算设备210的包装或外壳外侧并且与所述包装或外壳物理地分开的外部部件(例如,与计算设备210共享有线和/或无线数据路径的监视器、投影仪等)。
作为一个示例性范围,存在敏感型输入部件204可以检测物体,诸如在显示部件202的两英寸或更短范围内的手指或手写笔。存在度敏型输入部件204可以确定显示部件202检测到物体的位置(例如,[x,y]坐标)。在另一个示例性范围中,存在敏感型输入部件204可以检测距离显示部件202六英寸或更短范围内的物体,并且其它范围也是可能的。存在敏感型输入部件204可以使用电容、感应和/或光学识别技术来确定由用户的手指选择的显示部件202的位置。在一些示例中,如相关于显示部件202所述,存在敏感型输入部件204还使用触觉、音频或视频刺激向用户提供输出。在图2的示例中,UID 212可以呈现用户接口(诸如,图形用户接口)。
扬声器部件208可以包括内置在计算设备210的外壳中的扬声器,并且在一些示例中,可以是内置在可操作地联接到计算设备210的一组有线或无线头戴式耳机中的扬声器。麦克风部件206可以检测在UID212处或附近发生的可听输入。麦克风部件206可以执行各种噪声消除技术以移除背景噪声并将用户语音与检测到的音频信号隔离。
计算设备210的UID 212可以检测二维和/或三维手势作为来自计算设备210的用户的输入。举例来说,UID 212的传感器可以检测到用户在UID 212的传感器的阈值距离内的移动(例如,移动手、手臂、笔、手写笔等)。UID 212可以确定移动的二维或三维矢量表示并将矢量表示与具有多个维度的手势输入(例如,挥手、捏、拍、笔划等)相关联。换句话说,UID 212可以检测多维手势,而无需用户在UID 212输出用于显示的信息的屏幕或表面处或附近做出手势。替代地,UID 212可以检测在传感器处或附近执行的多维手势,所述传感器可能位于或可能不位于UID 212输出用于显示的信息的屏幕或表面附近。
一个或多个处理器240可以实现功能和/或执行与计算设备210相关联的指令。处理器240的示例包括应用处理器、显示控制器、辅助处理器、一个或多个传感器中枢以及被配置成用作处理器、处理单元或处理设备的任何其它硬件。模块220、222、226、230、232、234、236和282可以由处理器240操作以执行计算设备210的各种动作、操作或功能。例如,计算设备210的处理器240可以检索并执行由存储部件248存储的指令,所述指令致使处理器240执行操作模块220、222、226、230、232、234、236和282。所述指令当由处理器240执行时可以致使计算设备210将信息存储在存储部件248内。
计算设备210内的一个或多个存储部件248可以存储用于在计算设备210的操作期间进行处理的信息(例如,计算设备210可以存储模块220、222、226、230、232、234、236和282在计算设备210处执行期间访问的数据)。在一些示例中,存储部件248是临时存储器,这意味着存储部件248的主要目的不是长期存储。计算设备210上的存储部件248可以被配置用于作为易失性存储器对信息进行短期存储,并且因此如果断电则不保留存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)以及本领域已知的其它形式的易失性存储器。
在一些示例中,存储部件248还包括一个或多个计算机可读存储介质。在一些示例中,存储部件248包括一个或多个非暂时性计算机可读存储介质。存储部件248可以被配置成存储比通常由易失性存储器存储的信息量更大的信息量。存储部件248还可以被配置为用于作为非易失性存储空间的信息的长期存储,并且在通电/断电循环周期之后保留信息。非易失性存储器的示例包括磁性硬盘、光盘、软盘、快闪存储器或电可编程存储器(EPROM)或电可擦可编程存储器(EEPROM)的形式。存储部件248可以存储与模块220、222、226、230、232、234、236和282以及数据存储装置224相关联的程序指令和/或信息(例如,数据)。存储部件248可以包括被配置成存储与模块220、222、226、230、232、234、236和282以及数据存储装置224相关联的数据或其它信息的存储器。
UI模块220可以包括图1的计算设备110的UI模块120的所有功能,并且可以执行与UI模块120类似的操作,以便管理计算设备210在例如UID 212处提供的用户接口,以便促进计算设备110的用户与助手模块222之间的交互。例如,计算设备210的UI模块220可以从助手模块222接收信息,所述信息包括用于输出(例如,显示或播放音频)助手用户接口的指令。UI模块220可以通过通信信道250从助手模块222接收信息,并且使用所述数据来生成用户接口。UI模块220可以在通信信道250上传输显示或可听的输出命令以及相关联的数据,以致使UID 212在UID 212处呈现用户接口。
在一些示例中,UI模块220可以接收对在UID 212处检测到的一个或多个用户输入的指示,并且可以将关于用户输入的信息输出到助手模块222。例如,UID 212可以检测来自用户的语音输入,并且将关于语音输入的数据发送到UI模块220。
UI模块220可以将语音输入的指示发送到助手模块222以用于进一步解释。助手模块222可以基于语音输入而确定检测的语音输入表示对助手模块222执行一个或多个任务的用户请求。
应用模块226表示在计算设备210上执行并可以从所述计算设备210访问的所有各种单独的应用和服务,所述应用和服务可以由诸如助手模块222等助手访问以向用户提供信息和/或执行任务。计算设备210的用户可以与和一个或多个应用模块226相关联的用户接口进行交互,以致使计算设备210执行功能。应用模块226的多种示例可以存在,并且包括健身应用、日历应用、搜索应用、地图或导航应用、运输服务应用(例如,公共汽车或火车跟踪应用)、社交媒体应用、游戏应用、电子邮件应用、聊天或消息传递应用、互联网浏览器应用或可以在计算设备210处执行的任何和所有其它应用。
计算设备210的搜索模块282可以代表计算设备210执行整合的搜索功能。搜索模块282可以由UI模块220、应用模块226中的一个或多个和/或助手模块222来调用,以代表所述模块执行搜索操作。当被调用时,搜索模块282可以执行搜索功能,诸如基于跨各种本地和远程信息源的生成的搜索查询而生成搜索查询并执行搜索。搜索模块282可以将执行的搜索的结果提供给调用部件或模块。即,搜索模块282可以响应于调用命令而将搜索结果输出到UI模块220、助手模块222和/或应用模块226。
场境模块230可以收集与计算设备210相关联的场境信息以定义计算设备210的场境。具体地说,上下文模块230主要被助手模块222用来定义计算设备210的场境,所述场境指定计算设备210和计算设备210的用户的实体和/或虚拟环境在特定时间的特性。
如在本公开全文中使用的那样,术语“场境信息”用于描述可以被场境模块230用来定义计算设备以及计算设备的用户可能会在特定时间经历的虚拟和/或实体环境特性。场境信息的示例是众多的,并且可以包括:由计算设备210的传感器(例如,位置传感器、加速计、陀螺仪、气压计、环境光传感器、接近度传感器、麦克风和任何其它传感器)获得的传感器信息、由计算设备210的通信模块发送和接收的通信信息(例如,基于文本的通信、可听的通信、视频通信等)以及与在计算设备210处执行的应用相关联的应用使用信息(例如,与应用相关联的应用数据、互联网搜索历史、文本通信、语音和视频通信、日历信息、社交媒体帖子及相关信息等)。场境信息的其它示例包括从计算设备210外部的传输设备获得的信号和信息。例如,场境模块230可以经由计算设备210的无线电或通信单元接收从位于零售商的物理位置处或附近的外部信标传输的信标信息。
助手模块222可以包括图1的计算设备110的本地助手模块122A的所有功能,并且可以执行与本地助手模块122A类似的操作以便提供助手。在一些示例中,助手模块222可以在本地执行(例如,在处理器240处)以提供助手功能。在一些示例中,助手模块222可以充当计算设备210可访问的远程助手服务的接口。例如,助手模块222可以是图1的数字助手系统160的远程助手模块122B的接口或应用编程接口(API)。如图2中所示,助手模块222可以包括用户识别模块232、动作识别模块234和授权模块236。
用户识别模块232可以由处理器240执行,以基于表示口头话语的音频数据而识别提供口头话语的用户。换句话说,用户识别模块232可以执行说话者(即,用户)识别。在一些示例中,用户识别模块232可以部分地基于音频数据与被配置成利用计算设备210的一个或多个用户的声纹之间的比较而识别用户。例如,用户识别模块232可以确定得分,所述得分表示音频数据与被配置成利用计算设备210的每个用户的声纹的匹配度有多么准确,并且确定对应于最高(所述得分在本文中被描述为与匹配准确度正相关,以使得较高的得分表示更好的匹配,尽管负相关性(诸如,高尔夫球得分越低越好)也是可以预期的)匹配声纹重打分的用户提供了所述话语。在一些示例中,如果最高得分低于阈值,则用户识别模块232可以确定不存在匹配的声纹。
如果比较产生被配置成利用计算设备210的特定用户的匹配声纹,则用户识别模块232可以将该特定用户识别为提供口头话语的用户。如果比较未产生被配置成利用计算设备210的用户的匹配声纹,则用户识别模块232可以将提供了口头话语的用户识别为未向计算设备210注册的访客用户。
如上面所讨论的,在一些示例中,助手模块222可以接收对应于基于由用户说出并由计算设备210识别的触发短语(例如,“好的计算机”,“嘿设备”等)的话语的音频数据。在一些示例中,被配置成使用和/或向计算设备210注册的每个用户可以与相应的触发阶段相关联。举例来说,在向计算设备210注册时,第一用户可以选择第一用户可以说的第一触发短语(例如,“你好吉夫斯”)以便激活计算设备210的进一步的音频接收,而第二用户可以选择第二触发短语(例如,“嘿酒保”)以激活计算设备210的进一步音频接收。这样,与向计算设备210注册的多个用户中的第一用户相关联的触发短语可以不同于与多个用户中的第二用户相关联的触发短语。另外,在一些示例中,可以响应于计算设备210识别出通用或访客触发短语(例如,“好的,助手供应商公司”)而激活计算设备210的进一步音频接收。
在一些示例中,用户识别模块232可以至少部分地基于由计算设备210识别的触发短语而识别用户,所述触发短语激活了表示口头话语的音频数据的接收。举例来说,在由计算设备210识别的触发短语与向计算设备210注册的多个用户中的第一用户相关联的情况下,用户识别模块232可以将第一用户识别为提供了口头话语的用户(即,提出请求的用户)。类似地,在由计算设备210识别的触发短语是通用或访客触发短语的情况下,用户识别模块232可以将提供了口头话语的用户识别为访客用户。
在一些示例中,用户识别模块232可以至少部分地基于由计算设备210识别的触发短语以及音频数据与被配置成利用计算设备210的一个或多个用户的声纹之间的比较而识别用户。例如,用户识别模块232可以提高与特定用户相关联的声纹的确定的得分(即,确定的得分表示音频数据与声纹的匹配程度),其中由计算设备210识别的触发短语与特定用户相关联。
动作识别模块234可以由处理器240执行,以识别与一个或多个自动化设备相关联的对应于口头话语的自动化动作。例如,动作识别模块234可以对表示口头话语的音频数据执行语音识别,以识别对应于口头话语的自动化动作。在一些示例中,动作识别模块234可以基于音频数据而仅识别单个自动化动作候选(即,可以对应于话语的自动化动作)。在其它示例中,动作识别模块234可以基于音频数据(即,可以对应于话语的自动化动作)而识别多个自动化动作候选。动作识别模块234可以针对自动化动作候选中的每个来确定得分,所述得分表示所述自动化动作候选与口头话语相对应的可能性(所述得分在本文中被描述为与匹配准确度正相关,以使得较高的得分表示更好的匹配,尽管负相关性(诸如,高尔夫球得分越低越好)也是可以预期的)。例如,动作识别模块234可以确定下面表1中示出的自动化动作候选和得分。
<u>自动化动作候选</u> <u>经授权的用户</u> <u>得分</u>
由客厅灯执行的打开灯动作 用户A和防客用户 85
由用户A的卧室里的灯执行的打开灯动作 用户A 80
由用户B的卧室里的灯执行的打开灯动作 用户B 80
表1
动作识别模块234可以选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的得分的自动化动作候选(例如,具有最高得分的自动化动作候选)作为识别的自动化动作。例如,继续上面的示例,因为“由客厅灯执行的打开灯动作”的得分最高,所以动作识别模块234可以选择“由客厅灯执行的打开灯动作”作为识别的自动化动作。
在一些示例中,动作识别模块234可以基于一个或多个因素而调整自动化动作候选的得分。举一个示例来说,动作识别模块234可以基于识别的用户而调整自动化动作候选的得分。例如,动作识别模块234可以相对于对应于识别的用户未被授权以致使执行的自动化动作的自动化动作候选的得分,来调整对应于识别的用户被授权以致使执行的自动化动作的自动化动作候选的得分。再次使用以上表1中的示例,如果识别的用户是用户B,则动作识别模块234可以增加用户B被授权以致使执行的自动化动作候选的得分。例如,动作识别模块234可以增加(例如,添加固定量[例如,5分、10分等],乘以系数等)用户B被授权以致使执行的自动化动作候选的得分。下面的表2示出了示例性更新的得分,其中将10分添加到用户B被授权以致使执行的自动化动作候选的得分。
<u>自动化动作候选</u> <u>经授权的用户</u> <u>得分</u>
由客厅灯执行的打开灯动作 用户A和访客用户 85
由用户A的卧室里的灯执行的打开灯动作 用户A 80
由用户B的卧室里的灯执行的打开灯动作 用户B 90
表2
动作识别模块234可以选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的调整后得分的自动化动作候选(例如,具有最高得分的自动化动作候选)作为识别的自动化动作。例如,继续上面表2的示例,因为“由用户B的卧室里的灯执行的打开灯动作”的得分现在是最高的,所以动作识别模块234可以选择“由用户B的卧室里的灯执行的打开灯动作”作为识别的自动化动作。
举另一个示例来说,动作识别模块234可以基于哪些自动化设备和自动化动作可用、向动作识别模块234注册、被建立和/或另外被配置以便供计算设备210的用户使用,来调整自动化动作候选的得分(例如,基于图形或家庭图、结构而调整得分)。例如,动作识别模块234可以相对于未被配置以便供计算设备210的用户使用的自动化动作候选的得分,来调整对应于被配置以便供计算设备210的用户使用的自动化动作的自动化动作候选的得分(例如,呈图形结构)。例如,动作识别模块234可以提高到(例如,通过添加固定量[例如,5分、10分等],乘以系数等)被配置以便供计算设备210的用户使用的自动化动作候选的得分。继续上面的示例,假设起居室灯、用户A的卧室里的灯以及用户B的卧室里的灯均被配置以便供计算设备210的用户使用,下面的表3示出了示例性更新的得分,其中将10分添加到被配置以便供计算设备210的用户使用的自动化动作候选的得分。
<u>自动化动作候选</u> <u>经授权的用户</u> <u>得分</u>
由客厅灯执行的打开灯动作 用户A和访客用户 95
由用户A的卧室里的灯执行的打开灯动作 用户A 90
由用户B的卧室里的灯执行的打开灯动作 用户B 100
表3
动作识别模块234可以选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的调整后得分的自动化动作候选(例如,具有最高得分的自动化动作候选)作为识别的自动化动作。例如,继续上面表3的示例,因为“由用户B的卧室里的灯执行的打开灯动作”的得分保持最高,所以动作识别模块234可以选择“由用户B的卧室里的灯执行的打开灯动作”作为识别的自动化动作。
虽然在以上示例中被描述为基于用户的身份和配置状态二者而调整得分,但是在一些示例中,动作识别模块234可以仅基于用户的身份或仅基于配置状态而调整得分。在其它示例中,动作识别模块234可以不基于用户的身份或配置状态而调整得分。
授权模块236可以由处理器240执行,以确定识别的用户是否被授权以致使执行识别的自动化动作。例如,授权模块236可以基于许可设置而确定识别的用户是否被授权以致使执行识别的自动化动作。
响应于确定识别的用户被授权以致使执行自动化动作,授权模块236可以致使与识别的自动化动作相关联的自动化设备来执行识别的自动化动作。例如,授权模块236可以致使通信单元242中的一个或多个经由网络并且向与识别的自动化动作相关联的自动化设备输出请求执行识别的自动化动作的消息。在一些示例中,所述消息可以包括对识别的用户的指示。然而,在一些示例中,所述消息可能不包括对识别的用户的指示。因此,在这种示例中,与识别的自动化动作相关联的自动化设备可能依然不知道识别的用户被授权以发起执行识别的自动化动作。以这种方式,本公开的技术可以实现对言语或口头自动化请求的访问控制的实施方式,而无需自动化设备的参与。这样,本公开的技术可以实现对由自动化设备执行的言语或口头自动化请求的访问控制的实施方式,所述自动化设备可能未配置有任何访问控制功能,诸如传统自动化设备。
类似于图1的系统100的数据存储装置124A和124B,用户信息数据存储装置可以存储由助手模块222创建的信息,所述信息包括指示由自动化设备(例如,图1的自动化设备106)发起自动化动作的授权的许可设置。如上面所讨论的,由助手模块222提供的助手可以利用由用户信息数据存储装置224存储的许可设置来确定用户是否被授权以发起执行自动化动作。
可以为单个用户和用户组的任何组合定义许可设置。举一个示例来说,许可设置可以指示特定用户被授权以发起执行哪些自动化动作。例如,许可设置可以指示用户A和用户B被授权发起执行由与前门相关联的自动化设备106的锁执行的解锁动作,并且指示用户C未被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作。举另一个示例来说,可以为用户组定义许可设置。例如,许可设置可以指示第一组中的用户被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作,并且指示第二组中的用户(例如,访客用户)未被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作。举另一个示例来说,可以为个别用户和一个或多个用户组定义许可设置。例如,许可设置可以指示用户A和用户B被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作,并且指示用户C和第二组中的用户(例如,访客用户)未被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作。
可以为自动化动作级别和自动化设备级别的任何组合定义许可设置。举一个示例来说,自动化动作级别许可设置可以指示特定用户或用户组被授权以发起执行的动作。例如,许可设置可以指示用户A和第一组中的用户被授权以发起执行由与前门相关联的自动化设备106的锁执行的解锁动作以及由自动化设备106的恒温器执行的温度调整动作。举另一个示例来说,自动化设备级别的许可设置可以指示特定用户或用户组被授权以在自动化设备106中的哪些上发起执行自动化动作。例如,许可设置可以指示用户A和第一组中的用户被授权以发起对由与前门相关联的自动化设备106的锁执行动作以及对自动化设备106的恒温器执行动作。举另一个示例来说,自动化动作级别许可设置可以与自动化设备级别许可设置共存。例如,如果设备级别许可设置指示特定用户被授权以在特定设备上发起执行自动化操作,而动作级别许可设置未指示特定用户未被授权以发起执行由特定设备执行的特定动作,那么由助手模块222提供的助手可以确定特定用户被授权以发起执行由特定设备执行的任何动作。
可以为用户/用户组和/或为动作/设备定义许可设置。举一个示例来说,为用户/用户组定义的许可设置可以指示特定用户或特定用户组被授权以利用或发起执行哪些设备或动作。例如,针对特定用户的许可设置可以指示该特定用户被授权发起执行动作A、动作B和动作C。举另一个示例来说,为动作/设备定义的许可设置可以指示哪些用户或哪些用户组被授权以利用或发起执行所述动作/设备。例如,针对特定设备的许可设置可以指示用户A、用户B和用户C被授权利用和发起对特定设备的动作。
如上所述,可以以黑名单(例如,指示用户或用户组未被授权以发起执行哪些设备/动作的许可设置)、白名单(例如,指示用户或用户组被授权以发起执行哪些设备/动作的许可设置)以及黑名单和白名单二者的任何组合来定义许可设置。除了由场境模块230和/或搜索模块282提供的任何信息之外,助手模块222还可以依赖于存储在数据存储装置224处的信息来执行助手任务。
图3是示出根据本公开的一个或多个方面的由执行示例性虚拟助手的一个或多个处理器执行的示例性操作的流程图。下面在图1的系统100的上下文中描述图3。例如,根据本公开的一个或多个方面,本地助手模块122A当在计算设备110的一个或多个处理器处执行时可以执行操作302到312中的一个或多个。并且在一些示例中,根据本公开的一个或多个方面,远程助手模块122B当在数字助手系统160的一个或多个处理器处执行时,可以执行操作302到312。仅出于说明的目的,下面在图1的计算设备110的上下文中描述图3。
在操作中,计算设备110可以接收由计算设备110的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语(302)。例如,响应于识别出口头触发短语,计算设备110可以接收表示由用户计算设备110提供的言语话语的音频数据。
计算设备110可以基于音频数据而识别提供了口头话语的用户(304)。如上面所讨论的,计算设备110可以基于触发短语以及音频数据与被配置成使用计算设备110的用户的声纹的比较中的一个或二者而识别提供了口头话语的用户(即,提出请求的用户)。
在一些示例中,计算设备110可以执行所有操作302到312。然而,对于该示例,操作302和304可以由计算设备110和数字助手系统160中的一个或二者来执行,并且数字助手系统160还可以执行操作306到312。例如,计算设备110可以经由网络130并且向数字助手系统160输出表示口头话语和识别的用户的指示的音频数据。这样,数字助手系统160可以接收由计算设备110的一个或多个麦克风生成的音频数据,并且基于所述音频数据,通过从计算设备110接收音频数据和识别的用户的指示,来识别提供了口头话语的用户。
数字助手系统160可以基于接收的的音频数据而识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语(306)。举例来说,如上面所讨论的,数字助手系统160可以基于音频数据而确定多个自动化动作候选,为每个相应的自动化动作候选确定得分,所述得分指示相应的自动化动作候选对应于口头话语的可能性,并且选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的得分的自动化动作候选作为识别的自动化动作。
如下面进一步详细讨论的,在一些示例中,数字助手系统160可以基于识别的用户的一个或多个偏好而识别自动化。例如,向计算设备110注册的第一用户的简档可以指示第一用户更喜欢用话语“打开灯”来对应于打开第一灯的自动化动作,而向计算设备110注册的第二用户的简档可以指示第二用户更喜欢用话语“打开灯”来对应于打开第二灯的自动化动作。这样,数字助手系统160可以针对由不同用户提供给同一计算设备的相同话语而识别不同的自动化(例如,如果不同用户的简档指示不同的偏好)。
数字助手系统160可以确定识别的用户是否被授权以致使执行识别的自动化动作(308)。例如,数字助手系统160可以基于存储在用户信息数据存储装置124B中的许可设置而确定识别的用户是否被授权以致使执行识别的的自动化动作。
响应于确定识别的用户被授权以致使执行识别的自动化动作(308的“是”分支),数字助手系统160可以致使一个或多个自动化设备执行识别的自动化动作(310)。例如,数字助手系统160可以向与识别的自动化动作相关联的一个或多个自动化设备输出请求执行识别的自动化动作的消息。
响应于确定识别的用户未被授权以致使执行识别的自动化动作(308的“否”分支),数字助手系统160可以致使计算设备110输出识别的用户未被授权以致使执行识别的自动化动作的指示(312)。例如,数字助手系统160可以向计算设备110输出消息,所述消息请求计算设备110的UID 112输出带有合成声音的音频数据,所述合成的声音说识别的用户未被授权以致使执行识别的自动化动作(例如,“对不起,您似乎未被授权以解锁前门”)。以此方式,本公开的技术可以促进自动化动作的执行,以满足计算设备110的用户的言语或口头请求,同时还提高了系统100的安全性。
图4是示出根据本公开的一个或多个方面的被配置成执行示例性虚拟助手的示例性计算系统的框图。下面将图4的助手服务器系统460描述为图1的数字助手系统160的示例。图4示出了助手服务器系统460的仅一个特定示例,并且助手服务器系统460的许多其它示例可以在其它实例中使用,并且可以包括包括在示例性助手服务器系统460中的部件的子集,或者可以包括图4中未示出的额外部件。
如图4的示例中所示,助手服务器系统460包括用户一个或多个处理器440、一个或多个通信单元442以及一个或多个存储部件448。存储部件448包括助手模块422、搜索模块482、场境模块430以及用户信息数据存储装置424。
处理器440类似于图2的计算系统210的处理器240。通信单元442类似于图2的计算系统210的通信单元242。存储设备448类似于图2的计算系统210的存储设备248。通信信道450类似于图2的计算系统210的通信信道250,并且因此可以互连部件440、442和448中的每个以进行部件间通信。在一些示例中,通信信道450可以包括系统总线、网络连接、进程间通信数据结构或用于传达数据的任何其它方法。
助手服务器系统460的搜索模块482类似于计算设备210的搜索模块282,并且可以代表助手服务器系统460执行整合的搜索功能。即,搜索模块482可以代表助手模块422执行搜索操作。在一些示例中,搜索模块482可以与诸如搜索服务器系统180等外部搜索系统介接,以代表助手模块422执行搜索操作。当被调用时,搜索模块482可以执行搜索功能,诸如基于跨各种本地和远程信息源的生成的搜索查询而生成搜索查询并执行搜索。搜索模块482可以将执行的搜索的结果提供给调用部件或模块。即,搜索模块482可以将搜索结果输出到助手模块422。
助手服务器系统460的场境模块430类似于计算设备210的场境模块230。上下文模块430可以收集与诸如图1的计算设备110和图2的计算设备210等的计算设备相关联的场境信息,以定义计算设备的场境。场境模块430可以主要被助手模块422和/或搜索模块482用来定义介接和访问由数字助手系统160提供的服务的计算设备的场境。场境可以指定计算设备和计算设备的用户在特定时间的物理和/或虚拟环境的特性。
助手模块422可以包括图1的本地助手模块122A和远程助手模块122B以及图2的计算设备210的助手模块222的所有功能性。助手模块422可以执行与远程助手模块122B类似的操作,以便提供可经由助手服务器系统460访问的助手服务。即,助手模块422可以充当通过网络与助手服务器系统460通信的计算设备可访问的远程助手服务的接口。例如,助手模块422可以是图1的数字助手系统160的远程助手模块122B的接口或API。
用户识别模块432、动作识别模块434和授权模块436可以包括图2的用户识别模块232、动作识别模块234和授权模块236的所有功能性。即,用户识别模块432可以由处理器440执行以基于表示口头话语的音频数据而识别提供了口头话语的用户,动作识别模块434可以由处理器440执行以识别与一个或多个自动化设备相关联的对应于所述口头话语的自动化动作,而授权模块436可以由处理器440执行以确定识别的用户是否被授权以致使执行识别的自动化动作。
用户信息数据存储装置424类似于图2的用户信息数据存储装置224,并且被配置成存储由助手模块422创建的个人记录,所述个人记录包括在用户与由助手模块422提供的助手之间的对话期间助手模块422已经了解到的关于计算设备的用户的信息。除了由场境模块430和/或搜索模块482提供的任何信息之外,助手模块422还可以依赖于存储在数据存储装置424处的信息来执行助手任务。
例如,以下表示图1的计算设备110的用户与由助手模块422提供的助手之间的各种场景。对于每个场景,在用户和助手之间存在一些初始的信息交换,并且提供了一个或多个示例来指示这将如何影响用户的体验。
图5是示出根据本公开的一个或多个方面的由执行示例性虚拟助手的一个或多个处理器执行的示例性操作的流程图。下面在图1的系统100的上下文中描述了图5。例如,根据本公开的一个或多个方面,本地助手模块122A当在计算设备110的一个或多个处理器处执行时,可以执行操作502到508中的一个或多个。并且在一些示例中,根据本公开的一个或多个方面,远程助手模块122B当在数字助理系统160的一个或多个处理器处执行时,可以执行操作502到508。仅出于说明的目的,下面在图1的计算设备110的上下文中描述了图5。
在操作中,计算设备110可以接收由计算设备110的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语(502)。例如,响应于识别出口头触发短语,计算设备110可以接收表示由用户计算设备110提供的言语话语的音频数据。
计算设备110可以基于音频数据而识别提供了口头话语的用户(504)。如上面所讨论的,计算设备110可以基于触发短语以及音频数据与被配置成使用计算设备110的用户的声纹的比较中的一个或二者,而识别提供了口头话语的用户(即,提出请求的用户)。
在一些示例中,计算设备110可以执行所有操作502到508。然而,对于该示例,操作502和504可以由计算设备110和数字助手系统160中的一个或二者执行,并且数字助手系统160还可以执行操作506和508。例如,计算设备110可以经由网络130并且向数字助手系统160输出表示口头话语和识别的用户的指示的音频数据。这样,数字助手系统160可以接收由计算设备110的一个或多个麦克风生成的音频数据,并且基于所述音频数据,通过从计算设备110接收所述音频数据和识别的用户的指示,来识别提供了口头话语的用户,。
数字助手系统160可以基于接收的的音频数据而识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语(506)。例如,如上面所讨论的,数字助手系统160可以基于音频数据而确定多个自动化动作候选,为每个相应的自动化动作候选确定得分,所述得分指示相应的自动化动作候选对应于口头话语的可能性,并且从多个自动化动作候选中选择具有指示对应于口头话语的最高可能性的得分的自动化动作候选作为识别的自动化动作。
如下面进一步详细讨论的,在一些示例中,数字助手系统160可以基于识别的用户的一个或多个偏好而识别自动化。例如,数字助手系统160可以调整与识别的用户(即,提供了口头话语的用户)所偏好的自动化动作相对应的自动化动作候选的得分。为了进行说明,在话语是“打开灯”的情况下,数字助手系统160可以确定下面的表4中示出的自动化动作候选和得分。
<u>自动化动作候选</u> <u>得分</u>
由客厅灯执行的打开灯动作 80
由用户A的卧室里的灯执行的打开灯动作 80
由用户B的卧室里的灯执行的打开灯动作 80
表4
如在表4中可以看出,所述候选中的每个最初可能具有相同的得分。如上所述,数字助手系统160可以基于识别的用户的偏好而调整得分。举例来说,如果将用户A识别为提供了话语“打开灯”的用户,并且与用户A相关联的简档指示用户A的卧室里的灯的偏好与话语“打开灯”相关联,数字助手系统160可以如下面表5中所示调整得分,其中已经提高了“由用户A的卧室里的灯执行的打开灯动作”自动化动作候选的得分。
<u>自动化动作候选</u> <u>得分</u>
由客厅灯执行的打开灯动作 80
由用户A的卧室里的灯执行的打开灯动作 90
由用户B的卧室里的灯执行的打开灯动作 80
表5
数字助手系统160可以选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的得分的自动化动作候选(例如,具有最高得分的自动化动作候选)作为识别的自动化动作。在上面的示例中,数字助手系统160可以选择“由用户A的卧室里的灯执行的打开灯动作”自动化动作候选作为识别的自动化动作。
在其它实例中,数字助手系统160可以基于相同的话语而选择其它自动化动作候选。例如,如果用户B被识别为提供了话语“打开灯”的用户,并且与用户B相关联的简档指示用户B的卧室里的灯的偏好与话语“打开灯”相关联,数字助手系统160可以提高“由用户B的卧室里的灯执行的打开灯动作”自动化动作候选的得分,并且选择“由用户B的卧室里的灯执行的打开灯动作”自动化动作候选作为识别的自动化动作。这样,数字助手系统160可以基于用户偏好而偏倚自动化动作的选择,以使得由不同的用户提供的相同的话语引起不同的识别的自动化动作。
数字助手系统160可以致使与识别的自动化动作相关联的自动化设备来执行识别的自动化动作(508)。例如,数字助手系统160可以向与识别的自动化动作相关联的一个或多个自动化设备输出请求执行识别的自动化动作的消息。
在一些示例中,在致使与识别的自动化动作相关联的自动化设备来执行识别的自动化动作之前,数字助手系统160可以确定识别的用户是否被授权以致使执行识别的自动化动作。例如,数字助手系统160可以确定识别的用户是否被授权以致使执行识别的的自动化动作,如上面参考图3所讨论的。应该注意的是,仅仅因为用户偏爱某个特定的自动化操作并不一定意味着所述用户自动被授权以发起执行该特定自动化动作。
以下编号的示例可以说明本公开的一个或多个方面:
示例1.一种方法,所述方法包括:接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;基于所述音频数据而识别提供了口头话语的用户;由一个或多个处理器并基于音频数据,识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;由一个或多个处理器确定识别的用户是否被授权以致使执行识别的自动化动作;以及响应于确定识别的用户被授权以致使执行识别的自动化动作,由所述一个或多个处理器致使所述一个或多个自动化设备执行识别的自动化动作。
示例2.根据示例1所述的方法,其中,确定识别的用户是否被授权以致使执行识别的自动化动作包括:确定识别的用户是否被授权以利用与识别的自动化动作相关联的一个或多个自动化设备;以及响应于确定识别的用户被授权以利用与识别的自动化动作相关联的一个或多个自动化设备,确定识别的用户被授权以致使执行识别的自动化动作。
示例3.根据示例1到2的任何组合所述的方法,其中,识别提供了口头话语的用户包括:确定口头话语是否由向计算设备注册的多个用户中的一个提供;以及响应于确定口头话语不是由向所述计算设备注册的所述多个用户中的一个提供的,将所述提供了所述口头话语的用户识别为未向所述计算设备注册的访客用户。
示例4.根据示例3所述的方法,其中,确定识别的用户是否被授权以致使执行识别的自动化动作包括:确定访客用户被授权以致使执行识别的自动化动作。
示例5.根据示例1到4的任何组合所述的方法,其中,一个或多个处理器被包括在与所述计算设备不同的计算系统中,并且其中,接收音频数据并识别用户包括:由计算系统的一个或多个处理器并且从计算设备接收音频数据和识别的用户的指示,其中,致使一个或多个自动化设备来执行识别的自动化动作包括:由计算系统的一个或多个处理器并且向一个或多个自动化设备输出请求执行识别的自动化动作的消息。
示例6.根据示例5所述的方法,其中,所述消息不包括识别的用户的指示。
示例7.根据示例1到6的任何组合所述的方法,其中,一个或多个处理器被包括在计算设备或一个或多个其它计算设备中的至少一个中。
示例8.根据示例1到7的任何组合所述的方法,其中,识别自动化动作包括:基于音频数据而确定多个自动化动作候选;以及为自动化动作候选中的每个相应自动化动作候选确定得分,所述得分指示相应自动化动作候选对应于口头话语的可能性;以及选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的得分的自动化动作候选作为识别的自动化动作。
示例9.根据示例8所述的方法,所述方法还包括:相对于对应于识别的用户未被授权以致使执行的自动化动作的自动化动作候选的得分,来调整对应于识别的用户被授权以致使执行的自动化动作的自动化动作候选的得分。
示例10.根据示例1到9的任何组合所述的方法,其中,音频数据是第二音频数据,所述方法还包括:基于由计算设备识别的触发短语,从由一个或多个麦克风生成的第一音频数据中接收音频数据,其中,向计算设备注册的多个用户中的每个用户与相应的触发短语相关联,其中,与多个用户中的第一用户相关联的触发短语不同于与多个用户中的第二用户相关联的触发短语,并且其中,识别提供了口头话语的用户包括:至少部分地基于由计算设备识别的触发短语,识别提供了口头话语的用户。
示例11.一种计算系统,所述计算系统包括:通信模块;至少一个处理器;以及至少一个存储器,所述至少一个存储器包括指令,所述指令当被执行时致使至少一个处理器提供助手,所述助手被配置成:经由通信模块,接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;获得提供了口头话语的用户的标识,所述标识基于音频数据而确定;基于音频数据而识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;确定识别的用户是否被授权以致使执行识别的自动化操作;以及响应于确定识别的用户被授权以致使执行识别的自动化动作,致使所述一个或多个自动化设备执行识别的自动化动作。
示例12.根据示例11所述的计算系统,其中,为了确定识别的用户是否被授权以致使执行识别的自动化动作,所述助手被配置成:确定识别的用户是否被授权以利用与识别的自动化动作相关联的一个或多个自动化设备;以及响应于确定识别的用户被授权以利用与识别的自动化动作相关联的一个或多个自动化设备,确定识别的用户被授权以致使执行识别的自动化动作。
示例13.根据示例11到12的任何组合所述的计算系统,其中,为了识别提供了口头话语的用户,所述助手被配置成:确定口头话语是否由向计算设备注册的多个用户中的一个提供;以及响应于确定口头话语不是由所述向所述计算设备注册的多个用户中的一个提供,将所述提供了所述口头话语的用户识别为未向所述计算设备注册的访客用户。
示例14.根据示例13所述的计算系统,其中,为了确定识别的用户是否被授权以致使执行识别的自动化动作,所述助手被配置成:确定访客用户被授权以致使执行识别的自动化动作。
示例15.根据示例11到14的任何组合所述的计算系统,其中,为了识别自动化动作,所述助手被配置成:基于音频数据而确定多个自动化动作候选;为自动化动作候选中的每个相应的自动化动作候选确定得分,所述得分指示相应的自动化动作候选对应于口头话语的可能性;以及选择多个自动化动作候选中的具有指示对应于口头话语的最高可能性的得分的自动化动作候选作为识别的自动化动作。
示例16.根据示例15所述的计算系统,其中,所述助手还被配置成:相对于对应于识别的用户未被授权以致使执行的自动化动作的自动化动作候选的得分,来调整对应于识别的用户被授权以致使执行的自动化动作的自动化动作候选的得分。
示例17.根据示例11到16的任何组合所述的计算系统,其中所述音频数据是第二音频数据,并且其中,所述助手还被配置成:基于由计算设备识别的触发短语,从由一个或多个麦克风生成的第一音频数据中接收音频数据,其中,向计算设备注册的多个用户中的每个用户与相应的触发短语相关联,其中,与多个用户中的第一用户相关联的触发短语不同于与多个用户中的第二用户相关联的触发短语,并且其中,识别提供了口头话语的用户包括:至少部分地基于由计算设备识别的触发短语而识别提供了口头话语的用户。
示例19.一种计算系统,所述计算系统包括:通信模块;至少一个处理器;以及至少一个存储器,所述至少一个存储器包括指令,所述指令当被执行时致使至少一个处理器提供助手,所述助手被配置成:经由通信模块,接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;获得提供了口头话语的用户的标识,所述标识基于音频数据而确定;基于音频数据和识别的用户的一个或多个偏好,识别与一个或多个自动化设备相关联的自动化动作,所述自动化动作对应于口头话语;以及致使所述一个或多个自动化设备执行识别的自动化动作。
示例20.根据示例19所述的计算系统,其中:为了接收所述音频数据,所述助手被配置成接收由所述计算设备的一个或多个麦克风生成的第一音频数据,所述第一音频数据表示由第一用户提供的口头话语;所述助手还被配置成接收由所述计算设备的一个或多个麦克风生成的第二音频数据,所述第二音频数据表示由第二用户提供的口头话语,所述第二口头话语与所述第一口头话语相同;为了基于所述第一音频数据而识别自动化动作,所述助手被配置成基于第一音频数据和第一用户的一个或多个偏好而识别第一自动化动作;并且为了基于第二音频数据而识别自动化动作,所述助手被配置成基于第二音频数据和第二用户的一个或多个偏好而识别第二自动化动作,所述第二自动化动作不同于第一自动化动作。
示例21.一种方法,所述方法包括:接收由所述计算设备的一个或多个麦克风生成的第一音频数据,所述第一音频数据表示口头话语;确定第一用户提供了由所述第一音频数据表示的口头话语;基于第一音频数据和第一用户的一个或多个偏好而识别对应于口头话语的第一自动化动作;发起执行第一自动化动作;接收由所述计算设备的一个或多个麦克风生成的第二音频数据,所述第二音频数据表示相同的口头话语;确定第二用户提供了由所述第二音频数据表示的口头话语,第二口头话语与第一口头话语相同;基于第二音频数据和第二用户的一个或多个偏好而识别对应于口头话语的第二自动化动作,所述第二自动化动作不同于第一自动化动作;以及发起执行第二自动化动作。
示例22.一种存储指令的计算机可读存储介质,所述指令当被执行时致使计算系统和/或计算设备的一个或多个处理器执行示例1到10和21的任何组合的方法。
示例23.一种系统,所述系统包括用于执行示例1到10和21的任何组合的方法的装置。
在一个或多个示例中,所描述的功能可以以硬件、软件、固件或其任何组合来实现。如果以软件实现,则所述功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在所述计算机可读介质上传输,并且可以由基于硬件的处理单元执行。计算机可读介质可以包括一个或多个计算机可读存储介质,所述介质对应于诸如数据存储介质等有形介质,或者包括有助于例如根据通信协议将计算机程序从一个地方转移到另一地方的任何介质的通信介质。以这种方式,计算机可读介质通常可以对应于(1)有形的计算机可读存储介质,其是非暂时性的;或者(2)通信介质,诸如信号或载波。数据存储介质可以是可由一个或多个计算机或一个或多个处理器访问以检索指令、代码和/或数据结构以便实现本公开中描述的技术的任何可用介质。计算机程序产品可以包括计算机可读介质。
作为示例而非限制,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储设备、快闪存储器或可以用于以指令或数据结构的形式存储所需的程序代码并且可以由计算机访问的任何其它存储介质。而且,任何连接都适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或无线技术(诸如红外、无线电和微波)从网站、服务器或其它远程源传输指令,则介质的定义包括同轴电缆、光纤电缆、双绞线、DSL或无线技术(诸如红外、无线电和微波)。然而,应当理解,一个或多个计算机可读存储介质和数据存储介质不包括连接、载波、信号或其它瞬态介质,而是涉及非瞬态有形存储介质。如本文所使用的磁盘和光盘包括光盘(CD)、激光盘、光碟、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式复制数据,而光盘则通过激光以光学方式复制数据。上述的组合也应包括在计算机可读介质的范围内。
指令可以由一个或多个处理器执行,所述一个或多个处理器诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可以指前述结构或适合于实现本文所描述的技术的任何其它结构中的任何一个。另外,在一些方面,可以在专用硬件和/或软件模块内提供本文所描述的功能性。而且,所述技术可以在一个或多个电路或逻辑元件中完全实现。
本公开的技术可以在包括无线手持机、集成电路(IC)或一组IC(例如,芯片组)的多种设备或装置中实现。本公开中描述了各种部件、模块或单元以强调被配置成执行公开的技术但不一定需要由不同硬件单元来实现的设备的功能方面。而是,如上所述,各种单元可以组合在硬件单元中或由互操作的硬件单元的集合提供,包括如上所述的一个或多个处理器以及合适的软件和/或固件。
已经描述了各种实施例。这些实施例和其它实施例在以下权利要求的范围内。

Claims (29)

1.一种由一个或多个处理器实现的方法,所述方法包括:
接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;
基于所述音频数据,识别访客用户提供所述口头话语;
基于所述音频数据,识别特定自动化设备的特定自动化动作,所述特定自动化动作对应于所述口头话语;
确定所述访客用户未被授权致使所述特定自动化设备的所述特定自动化动作的执行;
响应于确定所述访客用户未被授权致使所述特定自动化设备的所述特定自动化动作的执行,避免发起所述特定自动化动作的执行;
接收由所述计算设备的所述一个或多个麦克风生成的附加音频数据,所述附加音频数据表示附加口头话语;
基于所述附加音频数据,识别所述访客用户提供所述附加口头话语;
基于所述附加音频数据,识别所述特定自动化设备的附加自动化动作,所述附加自动化动作对应于所述附加口头话语;
确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行;和
响应于确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行:
致使所述特定自动化设备执行所述附加自动化动作。
2.根据权利要求1所述的方法,其中,识别所述访客用户提供所述口头话语包括:
确定所述口头话语是否由向所述计算设备注册的一个或多个用户中的任何一个提供;和
响应于确定所述口头话语不是由向所述计算设备注册的所述一个或多个用户中的任何一个提供,将提供所述口头话语的用户识别为所述访客用户。
3.根据权利要求2所述的方法,其中,确定所述口头话语是否由向所述计算设备注册的所述一个或多个用户中的任何一个提供包括:确定所述音频数据是否与向所述计算设备注册的所述一个或多个用户中的给定一个用户的声纹匹配。
4.根据权利要求3所述的方法,其中,所述音频数据还包括在所述口头话语之前的触发短语的表示。
5.根据权利要求1所述的方法,其中,所述特定自动化设备是恒温器。
6.根据权利要求5所述的方法,其中,所述附加自动化动作是温度调整动作。
7.根据权利要求6所述的方法,其中,所述自动化动作是湿度调整动作。
8.根据权利要求6所述的方法,其中,所述自动化动作是风扇停用动作。
9.一种计算系统,包括:
通信模块;
至少一个处理器;以及
包括指令的至少一个存储器,所述指令在被执行时,致使所述至少一个处理器提供助理,所述助理被配置为:
经由所述通信模块,接收由计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;
获得访客用户提供所述口头话语的指示;
基于所述音频数据,识别特定自动化设备的特定自动化动作,所述特定自动化动作对应于所述口头话语;
响应于确定所述访客用户未被授权致使所述特定自动化设备的所述特定自动化动作的执行,避免发起所述特定自动化动作的执行;
接收由所述计算设备的所述一个或多个麦克风生成的附加音频数据,所述附加音频数据表示附加口头话语;
获得所述访客用户提供所述附加口头话语的附加指示;
基于所述附加音频数据,识别所述特定自动化设备的附加自动化动作,所述附加自动化动作对应于所述附加口头话语;
确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行;和
响应于确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行:
致使所述特定自动化设备执行所述附加自动化动作。
10.根据权利要求9所述的系统,其中,所述访客用户提供所述口头话语的所述指示是基于所述音频数据来确定的,并且其中,所述访客用户提供所述附加口头话语的所述指示是基于所述附加音频数据来确定的。
11.根据权利要求10所述的系统,其中,所述音频数据还包括在所述口头话语之前的触发短语的表示。
12.根据权利要求9所述的系统,其中,所述特定自动化设备是恒温器。
13.根据权利要求12所述的系统,其中,所述附加自动化动作是温度调整动作。
14.根据权利要求13所述的系统,其中,所述自动化动作是湿度调整动作。
15.根据权利要求13所述的系统,其中,所述自动化动作是风扇停用动作。
16.根据权利要求9所述的系统,其中,所述访客用户提供所述口头话语的所述指示是基于将所述音频数据与一个或多个注册用户的一个或多个声纹进行比较来确定的。
17.至少一个包括指令的非暂时性计算机可读存储介质,所述指令在被执行时,致使至少一个计算设备执行以下操作:
接收由一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;
基于所述音频数据,识别访客用户提供所述口头话语;
基于所述音频数据,识别特定自动化设备的特定自动化动作,所述特定自动化动作对应于所述口头话语;
确定所述访客用户未被授权致使所述特定自动化设备的所述特定自动化动作的执行;
响应于确定所述访客用户未被授权致使所述特定自动化设备的所述特定自动化动作的执行,避免发起所述特定自动化动作的执行;
接收由所述一个或多个麦克风生成的附加音频数据,所述附加音频数据表示附加口头话语;
基于所述附加音频数据,识别所述访客用户提供所述附加口头话语;
基于所述附加音频数据,识别所述特定自动化设备的附加自动化动作,所述附加自动化动作对应于所述附加口头话语;
确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行;和
响应于确定所述访客用户被授权致使所述特定自动化设备的所述附加自动化动作的执行:
致使所述特定自动化设备执行所述附加自动化动作。
18.根据权利要求17所述的非暂时性计算机可读存储介质,其中,所述特定自动化设备是门锁。
19.根据权利要求17所述的非暂时性计算机可读存储介质,其中,所述附加自动化动作是锁定动作。
20.根据权利要求19所述的非暂时性计算机可读存储介质,其中所述特定自动化动作是解锁动作。
21.一种由一个或多个处理器实现的方法,所述方法包括:
在配置特定自动化设备的同时在计算设备处接收用户输入,所述用户输入定义至少与所述特定自动化设备相关联的许可设置;
在配置所述特定自动化设备之后:
接收由所述计算设备或附加计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;
基于所述音频数据,识别所述特定自动化设备的特定自动化动作,所述特定自动化动作对应于所述口头话语;
基于所述许可设置并且基于所述特定自动化设备或所述特定自动化设备的所述特定自动化动作,确定提供所述口头话语的用户是否被授权致使所述特定自动化设备的所述特定自动化动作的执行;和
响应于确定所述用户被授权致使所述特定自动化设备的所述特定自动化动作的执行:
致使所述特定自动化设备执行所述特定自动化动作。
22.根据权利要求21所述的方法,其中,与至少所述特定自动化设备相关联的所述许可设置指示所述用户仅被授权致使所述特定自动化设备的所述特定自动化动作的执行。
23.根据权利要求21所述的方法,其中,至少与所述特定自动化设备相关联的所述许可设置指示所述用户被授权致使所述特定自动化设备的任何一个自动化动作的执行。
24.根据权利要求21所述的方法,还包括:
响应于接收到所述口头话语:
确定提供所述口头话语的所述用户是否是一个或多个注册用户中的向所述特定自动化设备所位于的环境背景所注册的用户。
25.根据权利要求24所述的方法,还包括:
响应于确定提供所述口头话语的所述用户是向所述环境背景所注册的用户:
访问与所述特定自动化设备相关联的所述许可设置,以确定提供所述口头话语的所述用户是否被授权致使所述特定自动化设备的所述特定自动化动作的执行。
26.根据权利要求25所述的方法,其中,确定提供所述口头话语的所述用户是向所述环境背景所注册的用户包括:
将所述音频数据与所述一个或多个注册用户的一个或多个对应的声纹进行比较;和
确定所述音频数据与所述一个或多个对应的声纹中的所注册的用户的给定声纹匹配。
27.根据权利要求24所述的方法,还包括:
响应于确定提供所述口头话语的所述用户不是向所述环境背景所注册的用户:
访问与所述特定自动化设备相关联的默认许可设置,以确定提供所述口头话语的所述用户是否被授权致使所述特定自动化设备的所述特定自动化动作的执行。
28.根据权利要求27所述的方法,还包括:
致使所述特定自动化设备避免执行所述特定自动化动作。
29.一种计算设备,包括:
至少一个处理器;和
至少一个包括指令的存储器,所述指令在被执行时,使所述至少一个处理器:
在配置特定自动化设备的同时经由所述计算设备接收用户输入,所述用户输入定义至少与所述特定自动化设备相关联的许可设置;
在配置所述特定自动化设备之后:
接收由所述计算设备或附加计算设备的一个或多个麦克风生成的音频数据,所述音频数据表示口头话语;
基于所述音频数据,识别所述特定自动化设备的特定自动化动作,所述特定自动化动作对应于所述口头话语;
基于所述许可设置并且基于所述特定自动化设备或所述特定自动化设备的所述特定自动化动作,确定提供所述口头话语的用户是否被授权致使所述特定自动化设备的所述特定自动化动作的执行;和
响应于确定所述用户被授权致使所述特定自动化设备的所述特定自动化动作的执行:
致使所述特定自动化设备执行所述特定自动化动作。
CN202110944409.9A 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手 Active CN113836507B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110944409.9A CN113836507B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/481,948 2017-04-07
US15/481,948 US10438584B2 (en) 2017-04-07 2017-04-07 Multi-user virtual assistant for verbal device control
PCT/US2018/025302 WO2018187169A1 (en) 2017-04-07 2018-03-29 Multi-user virtual assistant for verbal device control
CN201880029263.1A CN110914822B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手
CN202110944409.9A CN113836507B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201880029263.1A Division CN110914822B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手

Publications (2)

Publication Number Publication Date
CN113836507A true CN113836507A (zh) 2021-12-24
CN113836507B CN113836507B (zh) 2024-04-02

Family

ID=62063185

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201880029263.1A Active CN110914822B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手
CN202110944409.9A Active CN113836507B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201880029263.1A Active CN110914822B (zh) 2017-04-07 2018-03-29 用于言语设备控制的多用户虚拟助手

Country Status (4)

Country Link
US (4) US10438584B2 (zh)
EP (2) EP3596644B1 (zh)
CN (2) CN110914822B (zh)
WO (1) WO2018187169A1 (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11592723B2 (en) 2009-12-22 2023-02-28 View, Inc. Automated commissioning of controllers in a window network
US11054792B2 (en) 2012-04-13 2021-07-06 View, Inc. Monitoring sites containing switchable optical devices and controllers
US10964320B2 (en) * 2012-04-13 2021-03-30 View, Inc. Controlling optically-switchable devices
KR102336168B1 (ko) 2014-03-05 2021-12-07 뷰, 인크. 스위칭가능한 광 디바이스들 및 제어기들을 포함하는 사이트들 모니터링
CN106302330B (zh) * 2015-05-21 2021-01-05 腾讯科技(深圳)有限公司 身份验证方法、装置和系统
US10438584B2 (en) * 2017-04-07 2019-10-08 Google Llc Multi-user virtual assistant for verbal device control
US20180316634A1 (en) * 2017-04-26 2018-11-01 Microsoft Technology Licensing, Llc Extending application functionality via conversational interfaces
US10887423B2 (en) * 2017-05-09 2021-01-05 Microsoft Technology Licensing, Llc Personalization of virtual assistant skills based on user profile information
US10902533B2 (en) * 2017-06-12 2021-01-26 Microsoft Technology Licensing, Llc Dynamic event processing
US10417039B2 (en) 2017-06-12 2019-09-17 Microsoft Technology Licensing, Llc Event processing using a scorable tree
US11263300B2 (en) * 2017-07-25 2022-03-01 Samsung Electronics Co., Ltd. Voice activation method for service provisioning on smart assistant devices
KR102489914B1 (ko) * 2017-09-15 2023-01-20 삼성전자주식회사 전자 장치 및 이의 제어 방법
JP6984380B2 (ja) 2017-12-14 2021-12-17 トヨタ自動車株式会社 音響出力制御装置、音響出力制御方法、車両、および施解錠システム
US11113595B2 (en) * 2018-05-21 2021-09-07 The Travelers Indemnify Company On-demand intelligent assistant
US10929097B2 (en) * 2018-06-26 2021-02-23 ROVl GUIDES, INC. Systems and methods for switching operational modes based on audio triggers
RU2763392C1 (ru) * 2018-06-29 2021-12-28 Хуавэй Текнолоджиз Ко., Лтд. Способ голосового управления, носимое устройство и терминал
US11308939B1 (en) * 2018-09-25 2022-04-19 Amazon Technologies, Inc. Wakeword detection using multi-word model
WO2020062175A1 (en) * 2018-09-29 2020-04-02 Orange Discovery of internet-of-things resources
US20200220869A1 (en) * 2019-01-08 2020-07-09 Fidelity Information Services, Llc Systems and methods for contactless authentication using voice recognition
JP2022519901A (ja) * 2019-02-27 2022-03-25 ザ プロクター アンド ギャンブル カンパニー 電動歯ブラシにおける音声アシスタント
US11170783B2 (en) 2019-04-16 2021-11-09 At&T Intellectual Property I, L.P. Multi-agent input coordination
WO2020213116A1 (ja) * 2019-04-18 2020-10-22 マクセル株式会社 情報処理装置およびデジタルアシスタントシステム
US11200898B2 (en) * 2019-05-31 2021-12-14 Google Llc Dynamically assigning multi-modality circumstantial data to assistant action requests for correlating with subsequent requests
CN114303132B (zh) * 2019-08-22 2024-03-01 三星电子株式会社 在虚拟个人助手中使用唤醒词进行上下文关联和个性化的方法和系统
KR20210089295A (ko) * 2020-01-07 2021-07-16 엘지전자 주식회사 인공지능 기반의 정보 처리 방법
US20210217438A1 (en) * 2020-01-13 2021-07-15 Alarm.Com Incorporated Door knock access control
CN113555021A (zh) 2020-04-06 2021-10-26 三星电子株式会社 用于对IoT设备执行动作的设备、方法及计算机程序
US11721338B2 (en) 2020-08-26 2023-08-08 International Business Machines Corporation Context-based dynamic tolerance of virtual assistant
US11837238B2 (en) * 2020-10-21 2023-12-05 Google Llc Assessing speaker recognition performance
CN112530438B (zh) * 2020-11-27 2023-04-07 贵州电网有限责任公司 一种基于知识图谱辅助声纹识别的身份认证方法
US20230037961A1 (en) * 2021-08-05 2023-02-09 Lenovo (Singapore) Pte. Ltd. Second trigger phrase use for digital assistant based on name of person and/or topic of discussion
CN116597839B (zh) * 2023-07-17 2023-09-19 山东唐和智能科技有限公司 一种智能语音交互系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104541325A (zh) * 2012-06-26 2015-04-22 谷歌公司 混合模型语音识别
CN106062734A (zh) * 2013-12-02 2016-10-26 亚马逊技术股份有限公司 二级装置的自然语言控制

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590536B2 (en) * 2005-10-07 2009-09-15 Nuance Communications, Inc. Voice language model adjustment based on user affinity
KR101268432B1 (ko) * 2006-01-09 2013-05-28 삼성전자주식회사 스마트 커뮤니케이터를 이용한 지능형 출입 인증 시스템 및방법
US9401058B2 (en) * 2012-01-30 2016-07-26 International Business Machines Corporation Zone based presence determination via voiceprint location awareness
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10229676B2 (en) * 2012-10-05 2019-03-12 Avaya Inc. Phrase spotting systems and methods
US9189196B2 (en) 2013-03-14 2015-11-17 Google Inc. Compartmentalized self registration of external devices
US9129478B2 (en) * 2013-05-20 2015-09-08 Microsoft Corporation Attributing user action based on biometric identity
US9607137B2 (en) 2013-12-17 2017-03-28 Lenovo (Singapore) Pte. Ltd. Verbal command processing based on speaker recognition
EP3158427B1 (en) 2014-06-19 2022-12-28 Robert Bosch GmbH System and method for speech-enabled personalized operation of devices and services in multiple operating environments
US20160014103A1 (en) 2014-07-10 2016-01-14 Schweitzer Engineering Laboratories, Inc. Physical access control authentication
US10262655B2 (en) 2014-11-03 2019-04-16 Microsoft Technology Licensing, Llc Augmentation of key phrase user recognition
US10476872B2 (en) 2015-02-20 2019-11-12 Sri International Joint speaker authentication and key phrase identification
US20160262017A1 (en) 2015-03-04 2016-09-08 Microsoft Technology Licensing, Llc Personal assistant authentication
CN107408027B (zh) * 2015-03-31 2020-07-28 索尼公司 信息处理设备、控制方法及程序
US10824932B2 (en) * 2016-04-29 2020-11-03 Microsoft Technology Licensing, Llc Context-aware digital personal assistant supporting multiple accounts
CN106506442B (zh) * 2016-09-14 2018-03-30 上海百芝龙网络科技有限公司 一种智能家居多用户身份识别及其权限管理系统
US10332523B2 (en) * 2016-11-18 2019-06-25 Google Llc Virtual assistant identification of nearby computing devices
US10438584B2 (en) * 2017-04-07 2019-10-08 Google Llc Multi-user virtual assistant for verbal device control
DK179560B1 (en) * 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US20190235831A1 (en) * 2018-01-31 2019-08-01 Amazon Technologies, Inc. User input processing restriction in a speech processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104541325A (zh) * 2012-06-26 2015-04-22 谷歌公司 混合模型语音识别
CN106062734A (zh) * 2013-12-02 2016-10-26 亚马逊技术股份有限公司 二级装置的自然语言控制

Also Published As

Publication number Publication date
EP3596644A1 (en) 2020-01-22
CN110914822B (zh) 2021-08-31
US20210082436A1 (en) 2021-03-18
US10891957B2 (en) 2021-01-12
US20240029735A1 (en) 2024-01-25
US11817092B2 (en) 2023-11-14
US20200035239A1 (en) 2020-01-30
CN110914822A (zh) 2020-03-24
EP3596644B1 (en) 2021-05-05
EP3913510A1 (en) 2021-11-24
WO2018187169A1 (en) 2018-10-11
US20180293981A1 (en) 2018-10-11
US10438584B2 (en) 2019-10-08
CN113836507B (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
CN110914822B (zh) 用于言语设备控制的多用户虚拟助手
US11087765B2 (en) Virtual assistant identification of nearby computing devices
US11790207B2 (en) Delayed responses by computational assistant
JP7108122B2 (ja) コンピュータによるエージェントのための合成音声の選択
US20180096072A1 (en) Personalization of a virtual assistant
CN107957776A (zh) 主动虚拟助理
US20160350383A1 (en) Predicting user needs for a particular context
US20230419951A1 (en) Simultaneous acoustic event detection across multiple assistant devices
US11886510B2 (en) Inferring semantic label(s) for assistant device(s) based on device-specific signal(s)

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
GR01 Patent grant
GR01 Patent grant