对中断进行上下文相关处理的制作方法_2

文档序号:9422730阅读:来源:国知局
波技术、接近传感器阵列等。可将一个或多个其他输入控制器244 禪接到其他输入/控制设备248,诸如一个或多个按钮、摇臂开关、拇指滚轮、红外端口、USB 端口和/或指针设备诸如触笔。
[0044] 在一些实施例中,存储器接口 202禪接到存储器250。存储器250可包括高速随机 存取存储器和/或非易失性存储器,诸如一个或多个磁盘存储设备、一个或多个光学存储 设备,和/或闪存存储器(如NAND、NOR)。
[0045] 在一些实施例中,存储器250存储操作系统252、通信模块254、用户界面模块256、 传感器处理模块258、电话模块260和应用程序262。操作系统252包括用于处理基础系统 服务W及用于执行硬件相关任务的指令。通信模块254促进与一个或多个附加设备、一个 或多个计算机和/或一个或多个服务器进行通信。用户界面模块256使用其他输出信道 (例如,扬声器)来促进图形用户界面处理和输出处理。传感器处理模块258促进与传感器 有关的处理和功能。电话模块260促进与电话有关的过程和功能。应用程序模块262促进 用户应用程序的各种功能,诸如电子消息传送、网页浏览、媒体处理、导航、成像和/或其他 过程和功能。
[0046] 如本说明书中所述的,存储器250还存储客户端数字助理指令(例如,在数字助理 客户端模块264中)W及各种用户数据266 (例如,特定于用户的词汇数据、偏好数据、和/ 或其他数据,诸如用户的电子通讯录、待办事项列表、购物清单等)W提供数字助理的客户 端功能。
[0047] 在各种实施例中,数字助理客户端模块264能够通过用户设备104的各种用户界 面(例如,I/O子系统244)接受语音输入(例如言语输入)、文本输入、触摸输入和/或手 势输入。数字助理客户端模块264还能够提供音频(例如语音输出)、视频和/或触觉形式 的输出。例如,可将输出提供为语音、声音、警示、文本消息、菜单、图形、视频、动画、振动、和 /或W上两者或更多者的组合。在操作期间,数字助理客户端模块264使用通信子系统224 来与数字助理服务器进行通信。
[0048] 在一些实施例中,数字助理客户端模块264利用各种传感器、子系统和外围设备 来从用户设备104的周围环境采集附加信息W建立与用户、当前用户交互和/或当前用户 输入相关联的上下文。在一些实施例中,数字助理客户端模块264将上下文信息或其子集 与用户输入一起提供给数字助理服务器,W帮助推断用户的意图。在一些实施例中,数字助 理还使用上下文信息来确定如何准备并向用户递送输出。
[0049] 在一些实施例中,可伴随用户输入的上下文信息包括传感器信息,例如照明、环境 噪声、环境溫度、周围环境的图像或视频等。在一些实施例中,上下文信息还包括设备的物 理状态,例如设备取向、设备位置、设备溫度、功率电平、速度、加速度、运动模式、蜂窝信号 强度等。在一些实施例中,还将与用户设备104的软件状态相关的信息例如用户设备104 的运行过程、已安装程序、过去和当前的网络活动、后台服务、错误日志、资源使用等作为与 用户输入相关联的上下文信息提供到数字助理服务器。
[0050] 在一些实施例中,DA客户端模块264响应于来自数字助理服务器的请求而选择性 地提供存储在用户设备104上的信息(例如,用户数据266)。在一些实施例中,数字助理客 户端模块264还在数字助理服务器106进行请求时引出来自用户的经由自然语言对话或其 他用户界面的附加输入。数字助理客户端模块264将附加输入传送至数字助理服务器106, W帮助数字助理服务器106进行意图推断和/或满足在用户请求中所表达的用户意图。
[0051] 在各种实施例中,存储器250包括附加指令或更少的指令。此外,可在硬件和/或 包括在一个或多个信号处理电路和/或专用集成电路中的固件中实施用户设备104的各种 功能。
[0052] 图3A是根据一些实施例的示例性数字助理系统300的框图。在一些实施例中,数 字助理系统300在独立计算机系统上实施。在一些实施例中,数字助理系统300跨多个计 算机分布。在一些实施例中,数字助理的一些模块和功能被划分成服务器部分和客户端部 分,其中客户端部分驻留在用户设备(例如,用户设备104)上并通过一个或多个网络与服 务器部分(例如,服务器系统108)进行通信,例如如图1中所示的。在一些实施例中,数字 助理系统300为图1中所示的服务器系统108(和/或数字助理服务器106)的实施例。应 当指出,数字助理系统300仅为数字助理系统的一个实例,并且数字助理系统300可具有比 所示更多或更少的部件,可组合两个或更多个部件,或可具有部件的不同配置或布置。图3A 中所示的各种部件可W硬件、软件指令实施,W用于由一个或多个处理器、固件(包括一个 或多个信号处理电路和/或专用集成电路)、或它们的组合来执行。
[0053] 数字助理系统300包括存储器302、一个或多个处理器304、输入/输出(I/O)接口 306,W及网络通信接口 308。运些部件通过一条或多条通信总线或信号线310彼此通信。
[0054] 在一些实施例中,存储器302包括非暂态计算机可读介质,诸如高速随机存取存 储器和/或非易失性计算机可读存储介质(例如,一个或多个磁盘存储设备、闪存存储器设 备、或其他非易失性固态存储器设备)。
[0055] 在一些实施例中,I/O接口 306将数字助理系统300的输入/输出设备316诸如显 示器、键盘、触摸屏和麦克风禪接到用户界面模块322。与用户界面模块322结合的I/O接 口 306接收用户输入(例如语音输入、键盘输入、触摸输入等)并相应地对运些输入进行处 理。在一些实施例中,例如当数字助理在独立用户设备上实施时,数字助理系统300包括相 对于图2中的用户设备104所述的部件和I/O及通信接口中的任一者。在一些实施例中, 数字助理系统300表示数字助理具体实施的服务器部分,并且通过驻留在用户设备(例如, 图2中所示的用户设备104)上的客户端部分与用户进行交互。
[0056] 在一些实施例中,网络通信接口 308包括一个或多个有线通信端口 312和/或无 线发射和接收电路314。有线通信端口经由一个或多个有线接口例如W太网、通用串行总 线扣SB)、火线等来接收和发射通信信号。无线电路314从通信网络和其他通信设备接收 RF信号和/或光学信号并且将RF信号和/或光学信号发送至通信网络和其他通信设备。 无线通信可使用多种通信标准、协议和技术中的任一者,诸如GSM、邸GE、CDMA、TDMA、蓝牙、 Wi-Fi、VoIP、Wi-MAX、或任何其他合适的通信协议。网络通信接口 308使得在数字助理系统 300与网络诸如互联网、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和 /或城域网(MN))W及其他设备之间能够进行通信。
[0057] 在一些实施例中,存储器302或存储器302的计算机可读存储介质存储包括W下 各项中的全部或其子集的程序、模块、指令和数据结构:操作系统318、通信模块320、用户 界面模块322、一个或多个应用程序324和数字助理模块326。一个或多个处理器304执行 运些程序、模块和指令,并从数据结构读取或向数据结构写入。
[0058] 操作系统 318 (例如Darwin、RTXC、LINUX、UNIX、OSX、WINDOWS、或嵌入式操作系 统诸如VxWorks)包括用于控制和管理一般系统任务(例如存储器管理、存储设备控制、功 率管理等)的各种软件部件和/或驱动器,并促进各种硬件、固件与软件部件之间的通信。
[0059] 通信模块320促进在数字助理系统300与其他设备之间通过网络通信接口 308进 行通信。例如,通信模块320可与图2中所示的设备104的通信接口 254进行通信。通信 模块320还包括用于处理由无线电路314和/或有线通信端口 312所接收的数据的各种部 件。 W60] 用户界面模块322经由I/O接口 306(例如来自键盘、触摸屏、指向设备、控制器和 /或麦克风)从用户接收命令和/或输入,并在显示器生成用户界面对象。用户界面模块 322还准备并经由I/O接口 306(例如,通过显示器、音频信道、扬声器和触摸板等)向用户 递送输出(例如语音、声音、动画、文本、图标、振动、触觉反馈和光等)。
[0061] 应用程序324包括被配置为由一个或多个处理器304执行的程序和/或模块。例 如,如果数字助理系统在独立用户设备上实施,则应用程序324可包括用户应用程序,诸如 游戏、日历应用程序、导航应用程序或电子邮件应用程序。如果数字助理系统300在服务 器场上实施,则应用程序324可包括例如资源管理应用程序、诊断应用程序、或调度应用程 序。
[0062] 存储器302还存储数字助理模块(或数字助理的服务器部分)326。在一些实施 例中,数字助理模块326包括W下子模块或其子集或超集:输入/输出处理模块328、语音 转文本(STT)处理模块330、自然语言处理模块332、对话流处理模块334、任务流处理模块 336、服务处理模块338和中断处理模块340。运些处理模块中的每一者具有对数字助理 326的W下数据和模型中的一者或多者或其子集或超集的访问权限:知识本体360、词汇索 引344、用户数据348、任务流模型354、服务模型356和优先级参数数据库358。
[0063] 在一些实施例中,使用在数字助理模块326中实现的处理模块、数据和模型,该数 字助理执行W下操作中的至少一些操作:识别从用户所接收的W自然语言输入表达的用户 意图;主动引出并获得完整推断用户意图所需的信息(例如,通过消除词汇、姓名、意图等 的歧义);确定满足所推断的意图的任务流;W及执行任务流W满足所推断的意图。在本说 明书中,稍后提供关于中断处理模块及其优先级参数使用的更多细节。
[0064] 在一些实施例中,如图3B中所示,I/O处理模块328通过图3A中的I/O设备316 与用户进行交互或通过图3A中的网络通信接口 308与用户设备(例如,图1中的用户设备 104)交互W获得用户输入(例如,语音输入)W及提供对用户输入的响应(例如,作为语 音输出)。I/O处理模块328随同接收到用户输入一起或在接收到用户输入之后不久任选 地获得与来自用户设备的用户输入相关联的上下文信息。上下文信息包括特定于用户的数 据、词汇、和/或与用户输入有关的偏好。在一些实施例中,上下文信息还包括在接收到用 户请求时该设备(例如,图1中的用户设备104)的软件和硬件状态,和/或在接收到用户 请求时与用户的周围环境相关的信息。在一些实施例中,I/O处理模块328还向用户发送 关于用户请求的跟进问题,并从用户接收应答。当用户请求被I/O处理模块328接收到并 且用户请求包含语音输入时,I/O处理模块328将语音输入转发到语音转文本(STT)处理 模块330W用于语音转文本转换。 阳0化]语音转文本处理模块330通过I/O处理模块328接收语音输入(例如,在语音记 录中捕获的用户话语)。在一些实施例中,语音转文本处理模块330使用各种声音和语言模 型来将语音输入识别为音素的序列,并最终将其识别为W-种或多种语言书写的字词或符 号的序列。语音转文本处理模块330可使用任何合适的语音识别技术、声音模型W及语言 模型诸如隐马尔可夫模型、基于动态时间规整值TW)的语音识别W及其他统计和/或分析 技术来加W实施。在一些实施例中,语音转文本处理可至少部分地由第=方服务执行或在 用户的设备上执行。一旦语音转文本处理模块330获得语音转文本处理的结果(例如,字 词或符号的序列),其便将结果传送至自然语言处理模块332W用于意图推断。
[0066] 数字助理的自然语言处理模块332("自然语言处理器")采取由语音转文本处理 模块330生成的字词或符号的序列("符号序列"),并尝试将该符号序列与由数字助理所 识别的一个或多个"可执行意图"相关联。"可执行意图"表示可由数字助理执行并且具有 在任务流模型354中实施的相关联的任务流的任务。相关联的任务流是数字助理系统为了 执行任务而采取的一系列经编程的动作和步骤。数字助理的能力范围取决于已在任务流模 型354中实施并存储的任务流的数量和种类,或换言之,取决于数字助理所识别的"可执行 意图"的数量和种类。然而,数字助理的有效性还取决于数字助理的从W自然语言表达的用 户请求中推断出正确的"一种或多种可执行意图"的能力。
[0067] 在一些实施例中,除从语音转文本处理模块330获得的字词或符号的序列之外, 自然语言处理器332还接收与用户请求相关联的上下文信息(例如,来自I/O处理模块 328)。自然语言处理器332任选地使用上下文信息来阐明、补充和/或进一步限定在从语音 转文本处理模块330所接收的符号序列中所包含的信息。上下文信息包括例如用户偏好、 用户设备的硬件和/或软件状态,在用户请求之前、期间或之后不久收集的传感器信息,数 字助理与用户之间的先前交互(例如,对话),等等。如本说明书中所述的,上下文信息是动 态的,并且可能随着时间、位置、对话内容和其他因素而变化。
[0068] 在一些实施例中,自然语言处理基于例如知识本体360。知识本体360为包含许多 节点的分级结构,每个节点表示"可执行意图"或与"可执行意图"或其他"属性"中的一者 或多者相关的"属性"。如上所述,"可执行意图"表示数字助理能够执行的任务即,其为"可 执行的"或可被执行。"属性"表示与可执行意图或另一属性的子方面相关联的参数。知识 本体360中可的执行意图节点与属性节点之间的链接限定由属性节点所表示的参数如何 从属于由可执行意图节点所表示的任务。
[0069] 在一些实施例中,知识本体360由可执行意图节点和属性节点组成。在知识本体 360内,每个可执行意图节点直接链接到一个或多个属性节点或通过一个或多个中间属性 节点链接到一个或多个属性节点。类似地,每个属性节点直接链接到一个或多个可执行意 图节点或通过一个或多个中间属性节点链接到一个或多个可执行意图节点。例如,如图3C 中所示,知识本体360可包括"餐厅预订"节点(即,可执行意图节点)。属性节点"餐厅"、 "日期/时间"(针对预订)和"同行人数"各自直接链接到可执行意图节点(即,"餐厅预 订"节点)。此外,属性节点"菜系"、"价格范围"、"电话号码"和"位置"是属性节点"餐厅" 的子节点,并且各自通过中间属性节点"餐厅"链接到"餐厅预订"节点(即,可执行意图节 点)。作为另一个实例,如图3C中所示,知识本体360还可包括"设置提醒"节点(即,另一 个可执行意图节点)。属性节点"日期/时间"(针对设置提醒)和"主题"(针对提醒)各 自链接到"设置提醒"节点。由于属性"日期/时间"与进行餐厅预订的任务和设置提醒的 任务两者相关,因此属性节点"日期/时间"链接到知识本体360中的"餐厅预订"节点和 "设置提醒"节点两者。
[0070] 可将可执行意图节点连同其所链接的概念节点描述为"域"。在本论述中,每个域 与相应的可执行意图相关联,并设及与特定可执行意图相关联的一组节点(W及其间的关 系)。例如,图3C中示出的知识本体360包括在知识本体360内的餐厅预订域362的实例 和提醒域364的实例。餐厅预订域包括可执行意图节点"餐厅预订"、属性节点"餐厅"、"日 期/时间"和"同行人数"W及子属性节点"菜系"、"价格范围"、"电话号码"和"位置"。提 醒域364包括可执行意图节点"设置提醒"和属性节点"主体"和"日期/时间"。在一些实 施例中,知识本体360由多个域组成。每个域可与一个或多个其他域共享一
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1