将非请求内容主动并入到人机对话中的制作方法

文档序号:15615627发布日期:2018-10-09 21:18阅读:121来源:国知局

本申请涉及将非请求内容主动并入到人机对话中。



背景技术:

人类可以通过本文中称为“自动化助手”(也称为“聊天室”、“交互式个人助手”、“智能个人助手”、“会话代理”等),加入人机对话。例如,人类(当与自动化助手交互时,可以被称为“用户”)可以使用在一些情况下被转换为文本然后被处理的口语自然语言输入(即话语),和/或通过提供文本(例如,键入)自然语言输入,提供命令和/或请求。自动化助手通常是被动的,而不是主动的。例如,在用户和自动化助手之间的人机对话会话开始时(例如,当没有当前适用的会话语境)时,自动化助手最多可以提供一般的问候语,例如“嘿”、“早上好”等。自动化助手不能主动获取和提供用户可能感兴趣的具体信息。因此,用户必须在自动化助手回复实质性信息和/或代表用户启动一个或多个任务之前,提供初始自然语言输入(例如,口语或键入)。



技术实现要素:

本文描述了用于配置自动化助手以主动将用户可能感兴趣的非请求内容并入到现有或新启动的人机对话会话中的技术。在一些实施方式中,当配置有本公开的选定方面——和/或与自动化助手协作起作用的一个或多个其他组件——的自动化助手确定在现有的人机对话会话中,自动化助手已经有效地履行了其对用户的义务(例如,自动化助手正在等待进一步指示)时,它可以执行这种协作。这能与用户说出“早上好”并且自动化助手提供常见的回应“早上好”一样简单。在这种情况下,用户可能仍然(至少简短地)加入人机对话会话(例如,显示人机对话的正在进行的转录(transcript)的聊天机器人屏幕可能仍然是打开,用户可能仍然在实现人机对话的音频输入/输出设备的可听距离内等)。因此,并入到人机对话会话中的任何非请求内容很可能被用户消费(例如,听到、看到、感知、理解等)。

将用户可能感兴趣的非请求内容并入到人机对话会话中可能具有若干技术优点。用户可以放心地请求这些内容,这可以节省将用来处理用户的自然语言输入的计算资源,和/或可以有助于缺少提供输入的能力(例如,正在驾驶、身体限制等)的用户。另外,用户可以接收用户不会想到请求的可能有用的内容。作为另一示例,并入非请求内容可以为用户提供用户可能通过提交附加请求寻找的信息。避免这些附加请求可以节省解析和/或解释这些请求所需的计算资源(例如,网络带宽、处理周期、电池电量)。

在一些实施方式中,响应各种事件,自动化助手可以启动人机对话(用于并入非请求内容)和/或将非请求内容并入到现有的人机对话中。在一些实施方式中,事件可以包括用户在自动化助手的可听距离内的确定。例如,操作自动化助手的独立的交互式扬声器可以例如使用各种类型的传感器(例如,ip网络摄像机,或者并入到诸如智能恒温器、烟雾探测器、一氧化碳检测器的仪器中的运动传感器/相机等),或者通过检测用户携带的另一计算设备的共存,检测该用户在附近。作为回应,自动化助手可以向用户提供非请求内容,例如“今天不要忘记你的雨伞,预计下雨”、“今天不要忘记你姐姐的生日”、“你听说昨晚<运动队的>的大前锋受伤了吗?”或“过去几个小时内<股票>已经上涨了8%”。

在一些实施方式中,在与用户相关联的计算设备的协作生态系统的第一计算设备上操作的自动化助手可以从生态系统的另一计算设备接收一个或多个信号。这些信号可以包括用户的计算交互(例如,用户正在执行搜索、研究主题、阅读特定的文章)、在另一计算设备上操作的应用的状态(例如,消费媒体、玩游戏等)等。例如,假设用户正在独立的交互式扬声器(可以或可以不操作自动化助手的实例)上收听特定的音乐艺术家。用户智能电话上的自动化助手可以可听地检测音乐和/或从独立的交互式扬声器接收一个或多个信号,并且作为响应,在新启动的或预先存在的人机对话中并入非请求内容,诸如有关艺术家(或歌曲)的附加信息、有关其他类似的艺术家/歌曲的建议、即将到来的旅游日期或其他艺术家相关事件的通知等。

并入到人机对话中的非请求内容可以包括用户可能感兴趣的信息(例如,天气、比分、交通信息、问题的答案、提醒等)和/或用户可能感兴趣的动作(例如,播放音乐、创建提醒、将物品添加到购物清单、创建等)。基于各种信号来选择可能感兴趣的信息和/或动作。在一些实施方式中,这些信号可以包括用户和自动化助手之间的过去的人机对话。假设在第一人机会话期间,用户研究到特定目的地的航班,但不购买任何票。进一步假设触发自动化助手和用户之间的随后的人机对话,并且自动化助手确定它已经响应来自用户的所有自然语言输入。在这种情况下,用户尚未向自动化助手提供任何额外的自然语言输入。因此,自动化助手可以采取主动来并入非请求内容,包括与用户之前的航班搜索有关的信息,例如“你是否购买过到您的目的地的票”或“我不知道你是否仍在寻找航班,但是我在<网站>上找到了划算的”。

可以被用来选择将被作为非请求内容并入到人机对话中的信息和/或动作的其他信号包括但不限于用户位置(例如,这可以提示自动化助手主动建议特定的菜单项、特价等)、日历条目(例如“不要忘记你的周年纪念日是下星期一”)、约会(例如,即将到来的航班可以促使自动化助手主动提醒用户执行在线办理登机和/或开始打包行李)、提醒、搜索历史、浏览历史、感兴趣的主题(例如,对特定运动队的兴趣会使得自动化助手主动地询问用户“你看到昨晚的比分了吗?”)、文档(例如,包括对即将到来的事件的邀请的电子邮件会促使自动化助手主动地提醒用户即将到来的事件)、应用程序状态(例如,“我已经执行了这三个应用程序的更新”、”我看到你仍然打开了几个应用,这会耗尽你的设备的资源”、“我看到你目前正将<电影>流传送到你的电视,你知道<关于电影的琐事>吗?”等)、新近可用的功能部件(例如“欢迎回来。当你离开时,我学会了打电话叫出租车。只要你需要,请告诉我”)、天气(例如,“我看外面很好。你想让我去搜索户外用餐的餐馆吗”)等。

在一些实施方式中,提供一种由一个或多个处理器执行的方法,包括:由一个或多个处理器确定在用户和自动化助手之间的现有的人机对话会话中,所述自动化助手已经响应了在所述人机对话会话期间从所述用户接收的所有自然语言输入;由所述一个或多个处理器基于所述用户的一个或多个特性来识别所述用户可能感兴趣的信息或所述用户可能感兴趣的一个或多个动作;由所述一个或多个处理器生成表示所述用户可能感兴趣的信息或可能感兴趣的一个或多个动作的非请求内容;以及由所述自动化助手将所述非请求内容并入到所述现有的人机对话会话中。在各个实施方式中,至少所述并入是响应于确定所述自动化助手已经响应了在所述人机对话会话期间从所述用户接收的所有自然语言输入而被执行的。

本文公开的技术的这些和其他实施方式可选地包括一个或多个下述特征。

在各个实施方式中,所述非请求内容包括非请求自然语言内容。在整个实施方式中,所述识别至少部分地基于从由所述用户操作的一个或多个计算设备获得的一个或多个信号。在各个实施方式中,由所述用户操作的一个或多个计算设备可以包括当前由所述用户操作的指定计算设备。

在各个实施方式中,从不同于当前由所述用户操作的指定计算设备的、由所述用户操作的一个或多个计算设备中的另一计算设备接收所述一个或多个信号。在各个实施方式中,所述一个或多个信号可以包括在所述另一计算设备上执行的应用的状态的指示。在各个实施方式中,所述应用的状态的指示可以包括所述应用正在提供媒体回放的指示。在各个实施方式中,所述应用的状态的指示可以包括所述应用已经从所述用户接收搜索查询或向所述用户提供搜索结果的指示。

在各个实施方式中,该方法可以进一步包括由一个或多个所述处理器确定表示所述用户想要接收非请求内容的愿望度量,其中,基于一个或多个信号,确定所述愿望度量,并且其中,至少所述并入是响应于确定所述愿望度量满足一个或多个阈值而被执行的。在各个实施方式中,所述非请求内容可以包括一个或多个用户接口元素,每个用户接口元素可由用户选择,以使所述自动化助手提供所述用户可能感兴趣的信息或触发所述用户可能感兴趣的一个或多个动作。

在另一方面中,一种方法可以包括基于一个或多个信号,确定用户位于所述一个或多个音频输出设备的可听距离内;至少部分地基于所述用户的一个或多个特性,识别所述用户可能感兴趣的信息或所述用户可能感兴趣一个或多个动作;生成表示可能感兴趣的信息或可能感兴趣的一个或多个动作的非请求内容;以及将所述非请求内容并入到所述自动化助手和所述用户之间的可听人机对话会话中。在各个实施方式中,至少所述并入可以是响应于确定所述用户在所述一个或多个音频输出设备的可听距离内而由所述自动助手执行的。

此外,一些实施方式包括一个或多个计算设备的一个或多个处理器,其中,一个或多个处理器可操作以执行在相关联的存储器中存储的指令,以及其中,配置该指令以使得执行上述方法的任何一个。一些实施方式还包括一个或多个非瞬时计算机可读存储介质,其存储可由一个或多个处理器执行来实现上述方法的任何一个的计算机指令。

应当认识到,上述概念和本文更详细所述的附加概念的所有组合被设想为本文公开的主题的一部分。例如,出现在本公开结尾的所要求的主题的所有组合设想为本文公开的主题的一部分。

附图说明

图1是可以实现本文公开的实施方式的示例性环境的框图。

图2,3,4,5,6和7根据各个实施方式,图示各个用户和自动化助手之间的示例性对话。

图8和图9是示出根据本文公开的实施方式的示例性方法的流程图。

图10示出计算设备的示例性架构。

具体实施方式

现在转到图1,示出可以实现本文所述的技术的示例性环境。示例性环境包括多个客户端计算设备1061-n和自动化助手120。尽管在图1中,将自动化助手120示为与客户端计算设备1061-n分开,但在一些实施方式中,可以由客户端计算设备1061-n中的一个或多个,实现自动化助手120的所有或方面。例如,客户端设备1061可以实现自动化助手120的一个或多个方面的一个示例,以及客户端设备106n还可以实现自动化助手120的那些一个或多个方面的单独的示例。在由远离客户端计算设备1061-n的一个或多个计算设备实现自动化助手120的一个或多个方面的实施方式中,客户端计算设备1061-n和自动化助手120的那些方面可以经由一个或多个网络,诸如局域网(lan)和/或广域网(wan)(例如互联网)通信。

客户端设备1061-n可以包括例如下述的一个或多个:台式计算设备、手提计算设备、平板计算设备、移动电话计算设备、用户的车辆的计算设备(例如车载通信系统、车载娱乐系统、车载导航系统)、独立交互式扬声器,和/或包括计算设备的用户的可穿戴设备(例如,具有计算设备的用户的手表、具有计算设备的用户的眼镜、虚拟或增强现实计算设备)。可以提供附加和/或替选客户端计算设备。在一些实施方式中,指定用户可以利用总体形成计算设备的协调“生态系统”的用户的多个客户端计算设备,与自动化助手120通信。在一些这样的实施方式中,自动化助手120可以被认为是“服务于”该特定用户,例如,赋予自动化助手120对由“服务的”用户控制其访问的资源(例如,内容、文档等)的增强的访问权限。然而,为了简化,本说明书中所述的一些示例将集中在操作单个客户端计算设备106的用户上。

客户端计算设备1061-n的每一个可以操作多个不同的应用,诸如消息交换客户端1071-n中的相应一个。消息交换客户端1071-n可以以各种形式出现并且形式可以在客户端计算设备1061-n上改变和/或多个形式可以被操作在客户端计算设备1061-n的单独一个上。在一些实施方式中,消息交换客户端1071-n中的一个或多个可以以短消息服务(“sms”)/多媒体消息服务(“mms”)客户端、在线聊天客户端(例如即时消息器、互联网中继聊天,或“irc”等)、与社交网络相关联的消息应用、专用于与自动化助手120的会话的个人助手消息服务等的形式出现。在一些实施方式中,可以经由网页或由web浏览器(未示出)或客户端计算设备106的其他应用渲染的其他资源,实现消息交换客户端1071-n中的一个或多个。

除了消息交换客户端107之外,客户端计算设备1061-n中的每一个还可以操作各种其他应用(图1中的“misc.app”1091-n)。这些其他应用可以包括但不限于游戏应用、媒体播放应用(例如音乐播放器、视频播放器等)、生产力应用(例如文字处理程序、电子表格应用等)、web浏览器、地图应用、提醒应用、云存储应用、照相应用等。如将在下文更详细所述,在一些实施例中,可以将这些其他应用1091-n的各种状态用作促使自动化助手120将非请求内容并入到人机对话中的信号。

如本文更详细所述,自动化助手120经由一个或多个客户端设备1061-n的用户接口输入和输出设备,加入与一个或多个用户的人机对话会话。在一些实施方式中,响应用户经由客户端设备1061-n中的一个的一个或多个用户接口输入设备提供的用户接口输入,自动化助手120可以加入与用户的人机对话会话。在这些实施方式中的一些实施方式中,用户接口输入被明确地指向到自动化助手120。例如,消息交换客户端1071-n中的一个可以是专用于与自动化助手120进行会话的个人助手消息服务以及经由该个人助手消息服务提供的用户接口输入可以被自动地提供给自动化助手120。此外,例如,基于表示将被调用的自动化助手120的特定用户接口输入,使用户接口输入明确地指向到一个或多个消息交换客户端1071-n中的自动化助手120。例如,特定的用户接口输入可以是一个或多个类型字符(例如,@automatedassistant)、与硬件按钮和/或虚拟按钮的用户交互(例如,轻击、长轻击)、口令(例如,“嘿,自动化助手”)和/或其他特定用户接口输入。在一些实施方式中,即使当该用户接口输入没有被明确地指向自动化助手120时,自动化助手120也可以响应该用户接口输入加入对话会话。例如,自动化助手120可以检查用户接口输入的内容并且响应某些词项存在于用户接口输入中和/或基于其他提示,而加入对话会话。在许多实施方式中,自动化助手120可以使用交互式语音响应(“ivr”),使得用户可以发出命令、搜索等,并且自动化助手可以利用自然语言处理和/或一个或多个语法来将话语转换成文字,并且相应地回复该文字。

客户端计算设备1061-n和自动化助手120中的每一个可以包括用于存储数据和软件应用的一个或多个存储器、用于访问数据和执行应用的一个或多个处理器,以及便于网络上通信的其他组件。可以将由一个或多个客户端计算设备1061-n和/或由自动化助手120执行的操作分布在多个计算机系统上。自动化助手120可以被实现为例如在通过网络彼此耦合的一个或多个位置中的一个或多个计算机上运行的计算机程序。

自动化助手120可以包括自然语言处理器122和响应内容引擎130。在一些实施方式中,自动化助手120的引擎和/或模块中的一个或多个可以被省略、组合和/或实现在与自动化助手120分离的组件中。自动化助手120可以经由客户端设备1061-n,加入与一个或多个用户的人机对话会话,以提供由响应内容引擎130生成和/或维护的响应内容。

在一些实施方式中,响应内容引擎130响应在与自动化助手120的人机对话会话期间,由客户端设备1061-n中的一个的用户生成的各种输入来生成响应内容。响应内容引擎130提供响应内容(例如,当与用户的客户端设备分离时,在一个或多个网络上),以作为对话会话的一部分呈现给用户。例如,响应内容引擎130可以响应经由客户端设备1061-n中的一个提供的自由形式的自然语言输入来生成响应内容。如本文所使用的,自由形式输入是由用户制定并且不限于由用户选择以呈现的一组选项的输入。

如本文所使用的,“对话会话”可以包括在用户和自动化助手120之间的一个或多个消息的逻辑上自包含的交换。自动化助手120可以基于各种信号,诸如会话之间的时间流逝、会话之间的用户场境(例如,位置,预定会议之前/之中/期间/之后)的变化、除用户和自动化助手之间的对话外,检测到用户和客户端设备之间的一个或多个干预交互(例如,用户切换应用一段时间、用户离开,然后再返回到独立的语音激活的产品)、在会话之间锁定/休眠客户端设备、变更被用来与自动化助手120的一个或多个实例接口的客户端设备等,区分与用户的不同对话会话。

在一些实施方式中,当自动化助手120提供请求用户反馈的提示时,自动化助手120可以抢先激活被配置为处理响应该提示接收到的用户接口输入的客户端设备(经由其提供提示)的一个或多个组件。例如,在经由客户端设备1061的麦克风提供用户接口输入的情况下,自动化助手120可以提供一个或多个命令,以使得:麦克风被抢先地“打开”(从而避免命中接口元素或者说“热词”来打开麦克风的需要)、客户端设备1061的本地语音到文本处理器被抢先激活、客户端设备1061和远程语音到文本处理器之间的通信会话被抢先建立,和/或图形用户界面将被渲染在客户端设备1061上(例如,包括可被选择以提供反馈的一个或多个可选元素的界面)。这可以使得与未抢先地激活组件相比,更快速地提供和/或处理用户接口输入。

自动化助手120的自然语言处理器122处理由用户经由客户端设备1061-n生成的自然语言输入,并且可以生成注释输出以由自动化助手120的一个或多个其它组件使用,诸如响应内容引擎130。例如,自然语言处理器122可以处理由用户经由客户端设备1061的一个或多个用户接口输入设备生成的自然语言自由形式输入。所生成的注释输出包括自然语言输入的一个或多个注释,以及可选地,自然语言输入的一个或多个(例如,全部)词项。

在一些实施方式中,自然语言处理器122被配置成在自然语言输入中,识别和注释各种语法信息。例如,自然语言处理器122可以包括词性标签器,其被配置为利用词项的语法角色来对其进行注释。例如,词性标签器可以通过每一词项的词性,诸如“名词”、“动词”、“形容词”、“代词”等来标记该词项。同时,例如,在一些实施方式中,自然语言处理器122可以附加和/或替选地包括相关性解析器,其被配置为确定自然语言输入中的词项之间的句法关系。例如,相关性解析器可以确定哪些词项修改了句子的哪些词项、主题和动词等(例如,解析树)——并且可以做出这些相关性的注释。

在一些实施方式中,自然语言处理器122可以附加和/或替选地包括实体标签器,其被配置为在一个或多个段中注释实体参引,诸如人(包括例如文学人物)、组织、位置(真实和虚拟)等的参引。实体标签器可以以高颗粒度级(例如实现识别对实体类,诸如人的所有参引)和/或较低颗粒度级(例如实现识别对特定实体,诸如特定人的参引),注释对实体的参引。实体标签器可以依赖于自然语言输入的内容来解读特定实体和/或可以可选地与知识图或其他实体数据库通信以解读特定实体。

在一些实施方式中,自然语言处理器122可以附加和/或替选地包括指代解读器,其被配置为基于一个或多个上下文线索,来聚组或“聚合”对同一实体的参引。例如,指代解读器可以被利用来将自然语言输入“我喜欢上次去过那儿的hypotheticalcafé”中,将词项“那儿”解读成“hypotheticalcafé”。

在一些实施方式中,自然语言处理器122的一个或多个组件可以依赖于来自自然语言处理器122的一个或多个其他组件的注释。例如,在一些实施方式中,指定的实体标签器在注释对特定实体的所有记载中,依赖于来自指代解读器和/或相关性解析器的注释。同时,例如,在一些实施方式中,指代解读器在聚合对同一实体的参引时,依赖于来自相关性解析器的注释。在一些实施方式中,在处理特定自然语言输入中,自然语言处理器122的一个或多个组件可以使用相关的先前输入和/或除特定自然语言输入外的其他相关数据来确定一个或多个注释。

如上所述,响应内容引擎130将一个或多个资源用在生成建议和/或其他内容中以在与客户端设备1061-n中的一个的用户的对话会话期间提供。在各种实施方式中,响应内容引擎130可以包括动作模块132、实体模块134和内容模块136。

响应内容引擎130的动作模块132利用从客户端计算设备1061-n接收的自然语言输入和/或由自然语言处理器122提供的自然语言输入的注释来确定响应自然语言输入的至少一个动作。在一些实施方式中,动作模块132可以基于包括在自然语言输入中的一个或多个词项来确定动作。例如,动作模块132可以基于映射到在一个或多个计算机可读介质中的、被包括在自然语言输入中的一个或多个词项的动作来确定动作。例如,“将<物品>添加到我的购物清单”的动作可以被映射到一个或多个词项,诸如“我需要市场上的<物品>…”、“我需要得到<物品>”、“我们用光了<物品>”等。

实体模块134基于在用户和自动化助手120之间的对话会话期间,经由用户接口输入设备,由一个或多个用户提供的输入来确定候选实体。实体模块134将一个或多个资源用在确定候选实体中和/或提炼这些候选实体中。例如,实体模块134可以利用自然语言输入本身和/或由自然语言处理器122提供的注释。

主动内容模块136可以被配置为在现有或新启动的人机对话会话中,主动地并入用户的可能感兴趣的非请求内容。例如,在一些实施方式中,主动内容模块136可以确定——例如,基于从诸如自然语言处理器122、动作模块132和/或实体模块134的其他模块接收的数据——在用户与自动化助手120之间的现有的人机对话会话中,自动化助手120已经响应在人机对话会话期间,从用户接收的所有自然语言输入。假设用户操作客户端设备106来请求搜索特定信息,并且该自动化助手120执行搜索(或使得搜索被执行)并且作为人机对话的一部分返回响应信息。此时,除非用户还请求了其他信息,否则自动化助手120已完全响应用户的请求。在一些实施方式中,主动内容模块136可以等待自动化助手120一些预定时间间隔(例如,两秒、五秒等)以接收额外的用户输入。如果在该时间间隔期间没有接收到任何输入,则主动内容模块136可以确定其已经响应在该人机对话会话期间,从用户接收的所有自然语言输入。

主动内容模块136可以进一步被配置为基于用户的一个或多个特性来识别用户可能感兴趣的信息或用户可能感兴趣的一个或多个动作(本文统称为用户可能感兴趣“内容”)。在一些实施方式中,用户可能感兴趣的内容的这种识别可以由主动内容模块136以各种时间间隔(例如,定期、连续、周期性等)来执行。因此,在一些这样的实施方式中,可以连续地(或至少周期性地)“刺激”主动内容模块136以提供用户可能感兴趣的非请求内容。附加地或替代地,在一些实施方式中,可以由主动内容模块136响应各种事件来执行可能感兴趣的内容的识别。一种这样的事件可以确定自动化助手120已经响应在人机对话期间,从用户接收的所有自然语言输入,并且在上述时间间隔届满之前,没有接收到额外的用户输入。可以触发主动内容模块136以识别用户可能感兴趣的内容的其他事件可以包括例如用户使用客户端设备106执行搜索、用户操作在客户端设备106上的特定应用、用户行进到新位置(例如,如由客户端设备的位置坐标传感器检测的或通过用户在社交媒体上“签到”的位置)、在自动化助手的控制下在扬声器的可听距离内检测到用户等。

可以例如由主动内容模块136使用来确定用户可能感兴趣的内容的用户特性可以是各种形式,并且可以由各种来源确定。例如,用户感兴趣的主题可以由来源,诸如用户的搜索历史、浏览历史、用户设置偏好、位置、媒体播放历史、旅行历史、用户和自动化助手120之间的过去人机对话会话等来确定。因此,在一些实施方式中,主动内容模块136可以访问来自由用户操作的一个或多个客户端设备106,例如,直接来自客户端设备106和/或间接经由操作为所谓的“云”的一个或多个计算系统的各种信号或其他数据。用户感兴趣的主题可以包括例如特定的兴趣(例如,高尔夫、滑雪、游戏、绘画等)、文学、电影、音乐流派、特定实体(例如,艺术家、运动员、运动队、公司)等。用户的其他特性可以包括例如年龄、位置(例如,从客户端设备106的位置坐标传感器,诸如全球定位系统(“gps”)传感器或其他基于三角测量的位置坐标传感器确定)、用户设置偏好、用户当前是否在移动车辆中(例如,如由客户端设备106的加速度计确定的)、用户的计划事件(例如,如由一个或多个日历条目确定的)等。

在各种实施方式中,主动内容模块136可以被配置为生成表示用户可能感兴趣的信息和/或可能感兴趣的一个或多个动作的非请求内容,并且将非请求内容并入人机对话中。该非请求内容可以以可被并入到现有的人机对话会话中的各种形式出现。例如,在用户正在使用基于文本的消息交换客户端107与自动化助手120交互的一些实施方式中,由主动内容模块136生成的非请求内容可以采用文本、图像、视频或其任何组合的形式,其可以被并入到由消息交换客户端107渲染的人机对话的转录中。在一些实施方式中,非请求内容可以包括或采用所谓的“深链接”的形式,所述“深链接”可以由用户选择以向用户公开不同的应用程序接口。例如,深链接当由用户选择时,可以使客户端设备106在特定状态下启动特定应用109(或使其活动)。在用户正在使用语音接口与自动化助手120交互(例如,当自动化助手120在独立交互式扬声器上或在车载系统上操作时)的其他实施方式中,非请求内容可以采用可听地提供给用户的自然语言输出的形式。

在一些实施方式中,可以响应例如由主动内容模块136确定自动化助手120已经响应在人机对话会话期间,从用户接收的所有自然语言,执行非请求内容的并入。在一些实施方式中,上述关于主动内容模块136描述的其它操作中的一个或多个还可以响应这种事件来执行。或者,如上所述,这些操作可以由主动内容模块136周期地或连续地执行,使得主动内容模块136(并且因此,自动化助手120)保持“刺激”,以将用户可能感兴趣的非请求内容快速并入到现有的人机对话会话中。

在一些实施方式中,即使在由用户启动人机对话会话之前,自动化助手120也可以提供非请求输出。例如,在一些实施方式中,主动内容模块136被配置为基于一个或多个信号来确定用户在一个或多个音频输出设备(例如,与操作自动化助手120的所有或一部分的客户端设备106可操作地耦合的独立交互式扬声器或无源扬声器)的可听距离内。这些信号可以包括例如由用户携带的一个或多个客户端设备106与音频输出设备的共存、检测到物理用户存在(例如,使用被动红外线、声音检测(例如,检测用户的语音)等)等。

只要主动内容模块136已经确定用户在一个或多个音频输出设备的可听距离内,则主动内容模块136可以:至少部分地基于用户的一个或多个特性,识别用户可能感兴趣的信息或用户可能感兴趣的一个或多个动作(如上所述);生成表示可能感兴趣的信息或可能感兴趣的一个或多个行为的非请求内容;和/或将非请求内容并入自动化助手120与用户之间的可听人机对话会话中。如上所述,可以响应确定用户在音频输出设备的可听距离内,执行这些附加操作中的一个或多个。附加地或替代地,可以周期地或连续地执行这些操作中的一个或多个,使得总是(或至少通常)“刺激”主动内容模块136以将非请求内容并入人机对话中。

图2示出用户101与自动化助手的实例(图1中的120,图2中未示出)之间的人机对话会话的示例。图2示出根据本文所述的实施方式,在计算设备210的用户101(被描述为独立的交互式扬声器但是并不限于此)和自动化助手120之间,经由麦克风和扬声器发生的对话会话的示例。自动化助手120的一个或多个方面可以在计算设备210上和/或与计算设备210进行网络通信的一个或多个计算设备上实现。

在图2中,用户101提供自然语言输入280“早上好。今天的日程是什么?”以启动用户101和自动化助手120之间的人机对话会话。响应自然语言输入280,自动化助手120提供响应自然语言输出282“你上午9:30预约了牙医,然后在上午11:00在hypotheticalcafé会面”。假设在用户当天行程中只有这两个事件,自动化助手120(例如,通过动作模块132)已经完全响应用户的自然语言输入。然而,不是等待额外的用户输入,而是自动化助手120(例如,通过主动内容模块136)可以将可能感兴趣的附加内容主动地并入图2的人机对话中。例如,自动化助手120可以在牙医和会面的位置之间搜索(或请求另一组件来搜索)一个或多个行进路线,例如,以确定最直接的路线在大型施工中。由于两个约会相对较近,自动化助手120将下述非请求内容(用斜体显示)主动地并入到人机对话框中:“在牙医和hypotheticalcafé之间的直达路线上有大型施工。建议采用<替代路线>?”

图3图示在不同会话期间,在用户101和在计算设备210上操作的自动化助手120之间的另一示例性对话。在380处,用户101说短语“室外温度是多少?”。在由一个或多个来源(例如,天气相关的网络服务)确定室外温度后,在382处,自动化助手120可以回答“75华氏度”。再一次,自动化助手120(例如,通过主动内容模块136)可以确定已经完全响应用户的自然语言输入。因此,基于用户101对特定球队的兴趣以及确定该球队前一晚赢得比赛,自动化助手120可以下述非请求内容主动地将并入到人机对话框中:“你看到了<球队>昨晚赢了二十分了吗?”

图4图示在不同会话期间,在用户101和在计算设备210上操作的自动化助手120之间的另一示例性对话。在该示例中,用户101不提供自然语言输入。相反,自动化助手120或在计算设备210上操作的另一组件例如基于由客户端设备406(在该示例中为智能电话)提供的一个或多个信号来确定该用户101与计算设备210共存,由此在由计算设备210提供的可听输出的可听距离内。因此,在482处,自动化助手120将非请求内容(与图3相同的非请求内容)主动地并入到由自动化助手基于用户101与计算设备210的共存启动的新的人机对话中。由客户端设备406提供给计算设备210的一个或多个信号可以包括例如无线信号(例如,wi-fi、蓝牙)、共享网络(例如,客户端设备406加入与计算设备210相同的wi-fi网络等)。

在一些实施方式中,自动化助手120可以在确定用户101与计算设备210共存时,将用户可能感兴趣的其他内容主动地并入到人机对话中。在一些实施方式中,该其他内容可以例如基于在客户端设备406上运行的应用的状态来确定。假设用户101正在客户端设备406上玩游戏。计算设备210上的自动化助手120可以确定客户端设备406处于特定游戏状态中,并且可以提供用户可能感兴趣的各种非请求内容,诸如提示、技巧、类似游戏的推荐等,作为人机对话的一部分。在计算设备210是独立交互式扬声器的一些实施方式中,计算设备210甚至可以输出与在客户端设备406上玩的游戏相关联的背景音乐(例如,复制或添加背景音乐)和/或音效,至少只要用户101仍然与计算设备210共存。

图5图示用户101与在客户端设备406上操作的自动化助手120的实例之间的示例性人机对话。在该示例中,用户101再次不提供自然语言输入。相反,计算设备210(再次采用独立交互式扬声器的形式)正在播放音乐。在客户端设备406的一个或多个音频传感器(例如,麦克风)处检测该音乐。客户端设备406的一个或多个组件,诸如被配置为分析可听检测的音乐的软件应用,可以识别所检测的音乐的一个或多个属性,诸如艺术家/歌曲等。另一组件,诸如图1中的实体模块134,可以使用这些属性来在一个或多个在线源中搜索有关该实体的信息。然后,在客户端设备406上操作的自动化助手120可以提供(在582处)——例如经由图5中的客户端设备406的一个或多个扬声器大声输出——非请求内容,其将有关该实体的各种信息告知用户。例如,在图5的582中,自动化助手120说出:“看你正在收听<艺术家>。您是否知道<艺术家>在<您的城镇>有旅游行程?”。当客户端设备上操作的自动化助手120的实例(例如智能手机、平板电脑、手提电脑、独立的交互式扬声器)检测(经由声音和/或视觉检测)到在用户的电视机上呈现的视听内容时视听内容(例如,电影、电视节目、体育赛事等)时,该实例可以应用类似的技术。

在图5中,计算设备210可听地输出由客户端设备406“听到”的音乐。然而,假设用户101正在使用客户端设备406而不是计算设备210来收听音乐。进一步假定用户101使用耳塞收听音乐,使得该音乐仅对用户101可听,而不一定是其他计算设备,诸如计算设备210。在各种实施方式中,特别是在客户端设备406和计算设备210是与用户101相关联的计算设备的同一生态系统的一部分的情况下,计算设备210可以确定客户端设备406的音乐回放应用当前处于其正在回放音乐的状态。例如,客户端设备406可以例如使用诸如wi-fi、蓝牙等的无线通信技术,向附近设备(诸如计算设备210)提供音乐回放应用的状态的指示(和/或其他应用人状态的指示)。附加地或替代地,对由用户101操作的计算设备的生态系统,可以(例如,由服务用户101的自动化助手)维护当前执行的应用的全局索引及其各自的状态并且用在生态系统的计算设备之间。无论哪种方式,只要与计算设备210相关联的自动化助手120了解客户端设备406上的音乐回放应用的状态,则自动化助手120可以经由计算设备210(可以由自动化助手120触发),将与图5的582处图示类似的内容主动地并入例如用户101与自动化助手120之间的人机对话中。

图2-5图示用户101使用音频输入/输出,加入自动化助手120的人机对话。然而,这并不意味着限制。如上所述,在各种实施方式中,用户可以使用诸如消息交换客户端107的其他手段加入自动化助手。图6图示以智能电话或平板电脑(但不意味着限制)形式的客户端设备606包括触摸屏640的示例。在触摸屏640上可视地渲染的是客户端设备606的用户(图6中的“您”)和在客户端机设备606上执行的自动化助手120的实例之间的人机对话的转录642。还提供了输入字段644,其中,用户能够提供自然语言内容以及诸如图像、声音等其他类型的输入。

在图6中,用户通过问题“<商店>的营业时间?”启动人机对话会话。自动化助手120(图6中的“aa”)例如通过动作模块132或另一组件,执行对与该商店的营业时间有关的信息的一个或多个搜索,并且回复“<商店>上午10点营业”。此时,自动化助手120已经响应了在当前人机对话会话中,唯一由用户提供的自然语言输入。然而,对该示例,假设用户最近操作了客户端设备606或者在还包括客户端设备606的客户端设备的生态系统中的另一客户端设备以搜索到纽约的飞机票。用户通过web浏览器或其组合,加入与自动化助手120的一个或多个人机对话会话来执行该搜索。

基于该过去的搜索活动,在一些实施方式中,自动化助手120(例如,通过主动内容模块136)可以——周期性/连续地或响应确定自动化助手120已经响应当前的人机对话会话中的所有接收的自然语言输入——在一个或多个在线源中搜索与该搜索相关,由此可能对用户感兴趣的信息。然后,自动化助手120可以将下述非请求内容主动地并入到图6所示的人机对话会话中:“你买了到纽约的机票吗?我找到了直达航班和酒店的交易”。然后,自动化助手120(例如,通过主动内容模块136)可以将以可由用户选择以打开安装在客户端设备606上的旅行应用的用户接口元素(例如,深度链接)646的形式的附加非请求内容并入到人机对话中。如果选择了用户接口元素646,旅行应用可以打开到预定状态,例如,预填充有关预订到纽约的航班的输入,因此用户能够编辑预填充的信息和/或发出相对较少的附加输入命令来购买机票。其他非请求内容也能呈现为可选选项,诸如网页的一个或多个超级链接648,例如用于预订机票或有关目的地的常见信息。

尽管图6中的用户接口元素646是能够通过点击或以其他方式触摸来选择的可视元素,但这并不意味着限制。与图6所示类似的人机对话能可听地发生在用户和音频输出设备(例如,在先前的图中所示的独立交互式扬声器)之间。在一些这样的实施方式中,用户接口元素可以采用可听提示的形式,诸如如果由用户肯定地应答,可以被“选择”的问题或选项。例如,代替呈现可视用户接口元素646,自动化助手120可以可听地输出像“告诉我你是否想让我打开<旅行应用>,以便预订到纽约的机票”。在一些实施方式中,旅行应用本身可以包括其自己的自动化助手,其被专门订制用于加入与用户的人机对话以预订行程安排。在一些这样的实施方式中,用户可以被“转入”到旅行应用特定的自动化助手。在其他实施方式中,自动化助手120可以利用与旅行应用相关联的各种信息和状态来制定使用旅行应用,从用户请求预订机票所需的信息的自然语言输出。然后,自动化助手120可以代表用户与旅行应用交互(例如,响应由用户提供的口头自然语言输入)。

图7再次图示具有触摸屏640和用户输入字段644以及人机对话会话的转录742的客户端设备606。在该示例中,用户(“你”)通过键入和/或说出(可以被识别和转换为文本)自然语言输入“早上好”启动人机对话。自动化助手120(“aa”)回应:“早上好”。此时,没有来自用户的需要完成的进一步未决的自然语言请求。因此,使用本文所述的技术,自动化助手120例如由与用户相关联的日历、用户与其他人交换的对应关系(例如,电子邮件、文本消息)、安装在客户端设备6060上的餐厅应用等,确定用户今晚在<餐厅>有预订。因此,自动化助手120将下述陈述主动地并入人机对话中:“不要忘记你今晚在<餐厅>有预订”。然后,自动化助手120主动并入可由用户选择以打开餐厅应用到用户能够查看和/或编辑/取消预订的状态的用户接口元素746(“我的预订”)。此外,自动化助手120主动地并入用户可能感兴趣的其他内容,诸如到与该餐厅的预订和/或附近的景点相关联的网站的超链接748。在一些实施方式中,只要用户到达餐厅,可以由自动化助手120将不同的非请求内容并入到同一人机对话会话或新的人机对话会话中,诸如先前在餐厅(由用户和/或其他人)拍摄的照片、评论、建议、特价等。

上述主动并入的非请求内容的示例并不意味着限制。可以使用本文所述的技术,将用户可能感兴趣的其他非请求内容主动地并入到人机对话中。例如,在用户具有即将到来的预定航班(或列车出发或其他行程安排)的一些实施方式中,自动化助手120可以将非请求内容主动地并入到与用户的人机对话会话中。该非请求内容可以包括例如用户的航班即将到来的提醒、(通过触摸、语音、手势等)可选择来打开使用户查看或编辑预订的航班的应用的一个或多个用户接口元素、关于(或连接到的可选用户接口元素)前往机场的时间的信息等。或者,如果自动化助手120(例如,基于用户的日程表、位置坐标传感器等)确定用户的航班已经到达其目的地,自动化助手120可以在新的或现有的人机对话会话中主动地并入用户可能感兴趣的各种信息和/或用户接口元素,诸如与叫服务(或运行乘车共享应用)有关的信息/用户接口、获取到酒店或其他景点的方向、附近餐馆等。

作为另一示例,自动化助手120可以确定已经对由用户操作的一个或多个计算设备进行了改变(在一些情况下,可以是与用户相关联的计算设备的协调生态系统的一部分)。例如,自动化助手120可以确定,自与用户的最后一次人机对话会话以来,安装在与用户相关联的一个或多个客户端设备上的一个或多个应用(包括自动化助手120本身)已经更新。因为用户可能对告知这些更新有兴趣,所以自动化助手可以将非请求内容,诸如“欢迎回来。当你离开时,我学会了打电话叫出租车。只要你需要,请告诉我”并入到人机对话中。

作为另一示例,在一些实施方式中,自动化助手120可以在特定时间,(例如,根据用户普遍感兴趣的一个或多个主题、用户浏览历史等)确定用户可能感兴趣的各种信息,并且可以将与这些信息相关的非请求内容主动地并入到与用户的人机对话会话中。例如,假设特定用户对历史和电子产品感兴趣。在各种实施方式中,当自动化助手120确定在现有的人机对话会话期间,已经响应从用户接收的所有自然语言输入时,自动化助手120可以主动地并入例如与当前有关的、用户可能感兴趣的信息。例如,在nicolatesla的生日,可以对历史和电子产品感兴趣的用户呈现可由该用户选择来打开与tesla相关的应用或网页的用户接口元素。作为另一示例,假设今天是用户的结婚纪念日。自动化助手可以在现有的人机对话会话中,主动地并入用户在周年纪念可能感兴趣的图形元素或其他信息,诸如到花卉网站的链接,餐馆中。

作为又一示例,在一些实施方式中,用户的位置(例如,如由用户携带的计算设备的位置坐标传感器确定)可以促使自动化助手120主动地将非请求内容并入到与用户的人机对话会话中。例如,假设用户在杂货店处或附近。自动化助手120可以例如基于与用户相关联的一个或多个购物清单(例如,本地存储在客户端设备或基于云上)来确定用户应该在杂货店得到的物品。然后,自动化助手120可以主动地将非请求内容并入到与用户的人机对话中,其中,非请求内容包括所需物品、关于物品的信息、可用于物品的交易等。

作为又一示例,在一些实施方式中,用户经常请求的信息或动作可以作为非请求内容被主动地并入到人机对话会话中。例如,假设用户正在与自动化助手120谈论各种主题,并且时间接近用户吃晚餐的通常时间。在一些实施方式中,自动化助手120可以将有关吃饭的非请求内容,诸如可由用户选择以定购比萨、打开食谱(从本地存储器或来自经常访问的食谱网页等)等的用户接口元素并入到现有的人机对话会话中。在其他实施方式中,可以被并入到现有的人机对话会话中的非请求内容可以包括但不限于热门新闻故事、热门搜索、更新对由用户先前发出的搜索查询的搜索结果等。

当然,用户可能不总是期望非请求内容。例如,用户可以在繁忙的交通中行驶、可以处于紧急状况、可以以暗示用户不想接收非请求内容(例如,在视频呼叫中)的方式操作计算设备等。因此,在一些实施方式中,自动化助手120可以被配置为确定(例如,基于诸如位置信号、会话的场境、一个或多个应用的状态、加速度计信号等的信号)用户接收非请求内容的愿望度量,只有当该度量满足一个或多个阈值时,才提供非请求内容。

类似地,在一些实施方式中,自动化助手120可以在特定时间段期间,提供非请求内容(作为新的或现有的人机对话会话的一部分)。例如,如果在7:00am和8:00am之间,在操作自动化助手120的客户端设备的可听距离内检测到用户,则自动化助120可以自动输出非请求问候,例如“早上好”、“不要忘记你的雨伞,因为将要下雨了”、“405道上交通繁忙”、“这是今天的头条新闻…”、“这是你今天的日程表......”等。

作为另一示例,在一些实施方式中,自动化助手120可以考虑在特定时间和/或位置的多个用户的活动,以确定特定用户必定想接收非请求内容。在各种实施方式中,自动化助手120可以分析来自多个用户的搜索查询以在与特定位置、特定时刻等相关联的搜索中,识别尖峰、热门和/或其他模式。例如,假设访问地标的许多用户在他们的移动设备上执行类似的网络搜索,例如“它有多少层”、“何时修建”、“多少年了”等。在检测到出现这些搜索中的模式或热门后,当用户到达该地标时,自动化助手120可以主动地向新用户提供非请求内容。

图8是示出根据本文公开的实施方式的示例性方法800的流程图。为了方便起见,参考执行操作的系统来描述流程图的操作。该系统可以包括各种计算机系统的各种组件,诸如自动化助手120的一个或多个组件。此外,尽管以特定顺序示出方法800的操作时,但这并不意味着限制。可以重新排序、省略或添加一个或多个操作。

在框802处,系统可以确定在用户和自动化助手之间的现有的人机对话会话中,自动化助手已经响应了在人机对话会话期间从用户接收的所有自然语言输入。在一些实施方式中,这可以包括在响应了所有自然语言输入之后,等待经过一段预定的时间间隔,尽管这不是必需的。

在一些实施方式中,在框804处,响应于进一步确定用户很可能期望非请求内容(即,如可以由上述“愿望度量”表示),系统可以仅继续执行操作806-810中的一个或多个。该进一步确定可以基于各种来源,诸如人机对话会话的会话场境、由与人机对话会话无关的信号确定的用户场境(例如,位置信号、加速度计信号等)或其组合。例如,如果基于用户的加速度计和/或位置坐标传感器信号确定用户当前正在驾驶(例如,在用户询问交通更新或方向后),则系统可以确定用户将不太希望被非请求内容干扰。作为另一示例,人机对话会话的场境会暗示用户不希望被非请求内容干扰。例如,如果用户询问自动化助手关于最近的急诊室的位置,或询问伤害的治疗,则所确定的愿望度量会相对较低(例如,不能满足阈值),并且自动化助手可以禁止在所请求的信息后提供非请求内容。作为又一例子,如果用户询问自动化助手触发一些可能需要一些时间完成并且需要用户注意的动作(例如,启动视频通话、启动电话呼叫、播放电影等),则用户不太希望被附加非请求内容干扰。

在框806,系统可以基于用户的一个或多个特性来识别用户可能感兴趣的信息或用户可能感兴趣的一个或多个动作。如上所述,框806的操作可以响应于框802-804的确定来执行,或者可以在持续的基础上执行,使得自动化助手被“刺激”以在任何指定时间点提供非请求内容。在各种实施方式中,自动化助手可以基于各种来源,包括但不限于用户的搜索历史、浏览历史、人机对话历史(包括在相同或不同客户端设备上的相同会话和/或先前的会话)、用户的位置(例如,由从用户的日程表、社交网络状态(例如,签到)、位置坐标传感器等确定)、时间表/日历、用户感兴趣的常见主题(其可以由用户手动设置和/或基于用户的活动学习)等来识别用户可能感兴趣的信息或动作。

在框808,系统可以生成表示用户可能感兴趣的信息或可能感兴趣的一个或多个动作的非请求内容。该非请求内容可以包括例如以自然语言格式(例如,可听输出或以视觉形式)、可由用户选择以获得附加信息和/或触发一个或多个任务(例如,设置提醒、创建日历条目、创建预约、以预定状态打开应用等)的接口元素(图形或可听)等,提供用户可能感兴趣的信息的自然语言输出。

在框810,系统可以将在框808处生成的非请求内容并入现有的人机对话会话中。例如,非请求内容可以呈现为来自自动化助手的自动语言输出、诸如卡、超链接、可听提示等用户接口元素等。将非请求内容并入到现有的人机对话中不同于例如简单地向用户呈现信息(例如,作为锁定屏幕上的卡片或下拉菜单)。用户已经加入与自动化助手的人机对话会话,因此非请求内容很可能被用户看到/听到并且被操作,而不是内容被简单地呈现给用户锁定屏幕(用户经常忽略和/或被太多通知淹没用户)。

图9是示出根据本文公开的实施方式的示例性方法900的流程图。为了方便起见,参考执行操作的系统来描述流程图的操作。该系统可以包括各种计算机系统的各种组件,诸如自动化助手120的一个或多个组件。此外,尽管方法900的操作以特定顺序示出,这并不意味着限制。可以重新排序、省略或添加一个或多个操作。

在框902处,系统可以基于一个或多个信号来确定用户在一个或多个音频输出设备(例如,可操作地耦合执行自动化助手的实例的计算设备的一个或多个扬声器、执行自动化助手的实例的独立交互式扬声器等)的可听距离内。这些信号可以采取各种形式。在一些实施方式中,一个或多个信号可由用户操作的、与系统不同的计算设备触发,并且在与一个或多个处理器可操作地耦合的一个或多个通信接口处被接收。例如,一个计算设备可以向其他计算设备推送该用户参与特定活动的通知,诸如驾驶、操作特定应用(例如回放音乐或电影)等。在一些实施方式中,一个或多个信号可以包括检测系统和计算设备的共存。在一些实施方式中,一个或多个信号可以包括在与系统分开的计算设备上执行的应用的状态的表示,诸如用户正在准备文档、执行各种搜索、回放媒体、观看照片、加入电话/视频通话等。在一些实施方式中,可以响应确定用户在一个或多个音频输出设备的可听距离内来启动人机对话,尽管这不是必需的。图9的框904-908可以类似于图8的框804-808。虽然在图9中未示出,但在各种实施方式中,自动化助手可以在提供之前确定用户是否可能期望非请求内容,如上文参考框804所述。

图10是示例性计算设备1010的框图,该计算设备1010可选地被用来执行本文所述的技术的一个或多个方面。在一些实施方式中,客户端计算设备、自动化助手120和/或其他组件中的一个或多个可以包括示例性计算设备1010中的一个或多个组件。

计算设备1010通常包括至少一个处理器1014,其经由总线子系统1012与多个外围设备进行通信。这些外围设备可以包括存储子系统1024,例如包括存储器子系统1025和文件存储子系统1026、用户接口输出设备1020、用户接口输入设备1022和网络接口子系统1016。输入和输出设备允许用户与计算设备1010进行交互。网络接口子系统1016提供了针对外部网络的接口并且耦合至其它计算设备中相对应的接口设备。

用户接口输入设备1022可以包括键盘,诸如鼠标、轨迹球或图形板的指示设备,扫描仪,整合到显示器中的触摸屏,诸如语音识别系统、麦克风的音频输入设备,和/或其它类型的输入设备。通常,使用术语“输入设备”是为了包括向计算设备1010中或者通信网络上输入信息的所有可能类型的设备和方式。

用户接口输出设备1020可以包括显示子系统、打印机、传真机,或者诸如音频输出设备的非视觉显示器。显示子系统可以包括阴极射线管(crt),诸如液晶显示器(lcd)的平板设备,投影设备,或者用于创建可见图像的一些其它机制。该显示子系统还可以经由诸如音频输出设备提供非视觉显示。通常,使用术语“输出设备”是为了包括从计算设备1010向用户或者另一机器或计算设备输出信息的所有可能类型的设备和方式。

存储子系统1024存储提供本文所述的一些或全部模块的功能的程序和数据结构。例如,存储子系统1024可以包括执行图8和图9的方法的被选方面以及实现图1所示的各个组件的逻辑。

这些软件模块通常由处理器1014单独或者结合其它处理器一起来执行。在存储子系统中所使用的存储器1025可以包括多种存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(ram)1030以及在其中存储固定指令的只读存储器(rom)1032。文件存储子系统1026可以为程序和数据文件提供持久性存储,并且可以包括硬盘驱动器、带有相关联的可移除媒体的软盘驱动器、cd-rom驱动器、光学驱动器,或者可移除的媒体卡盒。实施某些实施方式的功能的模块可以被文件存储子系统1026存储在存储子系统1024中,或者存储在处理器1014所能够访问的其它机器中。

总线子系统1012提供了使得计算设备1010的各个组件和子系统如所期望的那样互相通信的机制。虽然总线子系统1012被示意性地示为单个总线,但是总线子系统的可替换实施方式可以使用多个总线。

计算设备1010可以为各种类型,包括工作站、服务器、计算集群、刀锋服务器、服务器群,或者任意其它数据处理系统或计算设备。由于计算机和网络不断变化的属性,图10中所描绘的计算设备1010的描述仅意在作为为了说明一些实施方式的具体示例。计算设备1010的许多其它配置是可能的,它们具有比图10所描绘的计算设备更多或更少的组件。

在本文讨论的某些实现方式可以收集或使用关于用户的个人信息(例如,从其他电子通信提取的用户数据、关于用户的社交网络的信息、用户的位置、用户的时间、用户的生物特征信息以及用户的活动和人口统计信息、用户之间的关系等)的情况下,为用户提供一个或多个机会来控制是否收集信息、是否存储个人信息、是否使用个人信息,以及如何收集、存储和使用关于用户的信息。也就是说,本文讨论的系统和方法仅在接收到相关用户的明确授权后才能收集、存储和/或使用用户个人信息。

例如,向用户提供控制程序或功能部件是否收集关于该特定用户或与该程序或功能部件有关的其他用户的用户信息。对将收集其个人信息的每个用户呈现一个或多个选项以允许控制与该用户相关的信息收集、提供关于是否收集信息以及关于将收集信息的哪些部分的许可或授权。例如,可以在通信网络,向用户提供一个或多个这样的控制选项。此外,某些数据可以在被存储或使用之前,以一种或多种方式被处理,以便删除个人身份信息。作为一个示例,可以对用户的身份进行处理,使得不能确定个人身份信息。作为另一示例,用户的地理位置可以被概括到更大的区域,使得不能确定用户的特定位置。在本公开的上下文中,可以以安全的方式维护由系统捕获的任何关系,例如父子关系,例如使得这些关系不能在自动化助手之外使用这些关系来解析/或解释自然语言输入。

除了上述的益处之外,应当认识到,本文所述的技术可以使自动化助手对于用户显得更“逼真”或“人”,这可能激励增加与自动化助手的交互。

尽管本文已经描述和示出若干实现,但是可以使用用于执行功能和/或获得结果和/或本文所述的一个或多个优点的各种其它装置和/或结构,每一个这样的变化和/或修改被认为在本文所述的实现的范围内。更一般地,本文所述的所有参数、尺寸、材料和构造意在是示例性的,并且实际参数、尺寸、材料和/或构造将取决于使用教导的具体应用或应用。本领域技术人员将认识到或者能够仅使用常规实验来确定本文所述的具体实现的许多等同物。因此,应当理解,前述实现仅以示例的方式给出,并且在所附权利要求及其等同物的范围内,可以以与具体描述和要求保护的方式不同的方式实施实现。本公开的实现涉及本文所述的每个单独的特征、系统、物品、材料、套件和/或方法。此外,如果这些特征、系统、制品、材料、套件和/或方法不相互矛盾,则两个或更多个此类特征、系统、制品、材料、套件和/或方法的任何组合包括在本公开的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1