CN112801626B 自动化助理实现的方法和相关存储介质 (谷歌有限责任公司)_第1页
CN112801626B 自动化助理实现的方法和相关存储介质 (谷歌有限责任公司)_第2页
CN112801626B 自动化助理实现的方法和相关存储介质 (谷歌有限责任公司)_第3页
CN112801626B 自动化助理实现的方法和相关存储介质 (谷歌有限责任公司)_第4页
CN112801626B 自动化助理实现的方法和相关存储介质 (谷歌有限责任公司)_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

201880039314.92018.10.02本公开涉及自动化助理实现的方法和相关从用户接收第一自由形式自然语言输入—其识别要映射到任务的命令和被要求用值填充以履且所述对话例程接受用于填充所述槽位的值作语言输入以(i)基于所述映射调用所述对话例向远程计算设备发送指示至少所述值的数据以2在计算设备的一个或多个输入组件处从用户接收一个或多个语语音输入定义定制话音命令并识别要响应于所述自动化助理接收到所述定制话音命令而执行的任务以及被要求用值填充以便履行所述任务的一基于从所述一个或多个语音输入生成的语音辨识输出来识别创建和存储定制对话例程,所述定制对话例程基于在所述后续语音输入中识别所述定制命令并且基于所述映射来使所述自动化助生成的附加后续语音辨识输出来识别要用于填充所述一个或多个槽位的所述一个或多个6.根据权利要求5所述的方法,还包括:将所述自然9.一种包括一个或多个处理器和存储指令的存储器的在计算设备的一个或多个输入组件处从用户接收一个或多个语语音输入定义定制话音命令并识别要响应于所述自动化助理接收到所述定制话音命令而执行的任务以及被要求用值填充以便履行所述任务的一基于从所述一个或多个语音输入生成的语音辨识输出来识别所3创建和存储定制对话例程,所述定制对话例程基于在所述后续语音输入中识别所述定制命令并且基于所述映射来使所述自动化助音输入或附加后续语音输入生成的附加后续语音辨识输出来识别要用于填充所述一个或以填充所述槽位中的一个或多个槽位的一个或多17.至少一种包括指令的非暂时性计算机可读介质,所述指令响应于由一个或多个处在计算设备的一个或多个输入组件处从用户接收一个或多个语语音输入定义定制话音命令并识别要响应于所述自动化助理接收到所述定制话音命令而执行的任务以及被要求用值填充以便履行所述任务的一基于从所述一个或多个语音输入生成的语音辨识输出来识别创建和存储定制对话例程,所述定制对话例程18.根据权利要求17所述的至少一种非暂时性计算机可读介质,还包括用于执行以下4基于在所述后续语音输入中识别所述定制命令并且基于所述映射来使所述自动化助19.根据权利要求18所述的至少一种非暂时性计算机可读介质,还包括用于执行以下5[0002]本申请属于申请日为2018年10月2日的中国发明专利申请201880039314.9的分案的交互式软件应用来参与人机对成文本并然后处理的口头话语的自由形式自然语言输入和/或键入的自由形式自然语言输一个或多个槽位的一个或多个值作为输入。用户可以稍后使用包括命令或其某种语法/语6计算系统例如向另一人输出自然语言输出或指示值/槽位/命令/任务的其它数据。可以以各种方式(其可能不要求通过其他人安装或者配置它自己的第三方软件代理来处理请求)[0012]用户:“toorderapizza,youneedtoknowthetypeofcrustand有番茄顶料的薄外皮比萨)”求填充以便履行任务的用户定义的槽位包括外等被自动地选择)提供自然语言输出来完成。比萨店的雇员可以经由一个或多个计算设备自然语言输出可以说像“<User>wouldliketoordera<crust_style>pizzawith<7种形式将指示槽位/值的信息提供给第三方软件代理。假定所有必需的槽位都被填充有适所请求的附加信息提示用户。务的用户(诸如肢体残疾的用户和/或从事其它定制命令来调用的对话例程,用户更可能记住命令并且/或者能够经由自动化助理成功地及向远程计算设备发送指示要用于填充所述一个或多个槽位的至少一个或多个值的数据,[0025]本文公开的技术的这些和其它实施方式可以可选地包括以下特征中的一个或多8充以便履行所述任务的所述一个或多个槽位与和所述多个候选任务中的每一个相关联的自由形式自然语言输入可以包括用于填充所述槽位中的一个或多个槽位的可能值的用户至少所述一个或多个值的所述数据可以采取请求基于所述一个或多个值执行所述任务的言输入来识别要用于填充被要求用值填充以便履行所述任务的所述一个或多个槽位的一[0033]图2示意性地描绘依照各种实施方式的在对话例程的调用期间生成的数据如何可[0034]图3示意性地演示依照各种实施方式的如何可以在调用对话例程时在各种组件之9[0038]在一些实施方式中,自动化助理客户端118的实例通过其与一个或多个基于云的自动化助理组件119的交互,可以形成从用户的角度来看似乎是用户可以在人机对话中与之接涉的自动化助理120的逻辑实例的东西。在图1中描绘了这样的自动化助理120的两个实例。通过虚线所包含的第一自动化助理120A为操作第一客户端设备1061的第一用户(未过双点划线所包含的第二自动化助理120B为操作另一客户端设备106N的第二用户(未描的每个用户实际上可以与他或她自己的自动化助理120的逻辑实例接涉。为了简洁和简单的客户端设备106上执行的自动化助理客户端118和一个或多个基于云的自动化助理组件[0040]在各种实施方式中,客户端计算设备1061-N中的每一个均可以操作各种不同的应出现并且这些形式可以跨越客户端计算设备1061-N而变化并且/或者可以在客户端计算设备1061-N中的单个客户端计算设备上操作多种形式。在一些实施方式中,消息交换客户端交网络相关联的消息传递应用、专用于与自动化助理120的谈话的个人助理消息传递服务用所呈现的网页或其它资源来实现消息交换客户端1071-N中的用户接口输入和输出设备来参与与一个或多个用户的人机对话会话。在一些实施方式中,自动化助理120可以响应于由用户经由客户端设备1061-N中的一个的一个或多个用户接口输入设备提供的用户接口输入而参与与用户的人机对话会话。在那些实施方式中的一些以是专用于与自动化助理120的谈话的个人助理消息传递服务并且经由该个人助理消息传示自动化助理120将被调用的特定用户接口输入来将用户接口输入显式地导向消息交换客个键入的字符(例如,@AutomatedAssistant)、用户用户接口输入的内容并且响应于在用户接口输入中存在某些项和/或基于其它线索来参与音输入转换成嵌入,转换成实体表示(其指示存在于输入转换的文本来操作的实施方式可以附加地和/或替换地直接地对话音输入和/或话音[0043]客户端计算设备1061-N和操作基于云的自动化助理组件119的计算设备中的每一一个或多个处理器以及便于通过网络进行通信的其它组件。由客户端计算设备1061-N中的120可以作为例如在一个或多个位置中的通过网络彼此耦合的一个或多个计算机上运行的118分开地实现语音捕获/TTS/STT模块114的一[0045]每个语音捕获/TTS/STT模块114可以被配置成执行一个或多个功能:例如经由麦克风(其在一些情况下可以包括存在传感器1的不同的口语短语—特别是调用自动化助理120的短语—转换为文本(或者转换为其它形包括基于云的TTS模块116和/或基于云的S[0046]基于云的STT模块117可以被配置成利用云的实际上无限的资源来将由语音捕获/TTS/STT模块114捕获的音频数据转换成文本(其然后可以被提供给自然语言处理器122)。基于云的TTS模块116可以被配置成利用云的实际上无限的资源来将文本数据(例如,由自模块116可以将计算机生成的语音输出提供给客户端设备106以例如使用一个或多个扬声[0047]自动化助理120(以及特别是基于云的自动化助理组件119)可以包括自然语言处输入是由用户制定并且不局限于被呈现以供由用户选择的一组对一个或多个响应动作的执行。自动助理120可以基于各种信号来区分与用户的多个对话会议之前/期间/之后等)的改变、对用户与客户端设备之间的一个或多个中间交互而不是[0050]自动化助理120的自然语言处理器122处理由用户经由客户端设备1061-N生成的自由形式自然语言输入并且在一些实施方式中可以生成带注释的输出以供由自动化助理120的一个或多个其它组件使用。例如,自然语言处理器122可以处理由用户经由客户端设备[0051]在一些实施方式中,自然语言处理器122被配置成识别并注释自然语言输入中的标记器被配置成用其语法角色来注释项。例如,词性标记器可以用诸如“noun(名词)”、例如,在一些实施方式中自然语言处理器122可以附加地和/或替换地包括依赖性解析器 对这样的依赖性进行注释。如人们这样的实体类的所有引用)和/或较低粒度水平(例如,以使得能够识别对诸如特定人员这样的特定实体的所有引用)注释对实体的引用。实体标记器可以依靠自然语言输入的内容来解析特定实体并且/或者可以可选地与知识图或其它实体数据库进行通信以解析[0055]在一些实施方式中,自然语言处理器122的一个或多个组件可以依靠来自自然语个或多个组件可以使用除了特定自然语言输入之外的相关在先输入和/或其它相关数据来[0056]在面向任务对话的上下文中,自然语言处理器122可以被配置成将由用户在对话可能正在尝试经由自动化助理120执行的某些动作或任务的参数的一个或多个槽位/值对。122可以将该用户输入映射到对话行为,所述对话行为包括例如诸如下列的参数:intent闭对话会话并且/或者被用作肯定反馈和/或指示应该提供肯定奖励值)。这些只是示例而义一组槽位以及与那些槽位相关联的值的集合。附加地或替换地可以为个别槽位和/或域[0059]对话管理器126可以被配置成将例如由对话状态跟踪器124提供的当前对话状态射到包括自动化助理120输出附加自然语言对话的各种响应动作。此响应对话可以包括例如用户为对话状态跟踪器124认为用户打算执行的某个动作(即,填充槽位)提供参数的请在一些这样的实施方式中,神经网络可以采取例如具有后面为softmax层的两个隐藏层的在对话管理器126采用神经网络的一些实施方式中,神经网络的输入可以包括但不限于用由对话状态跟踪器124提供的指示哪些槽位已被填充的二进制矢量器126可以以语义对话框架(其可以包括例如由自然语言处理器122提供的对话行为和/或由对话状态跟踪器124提供的对话状态)的形式接收新的观察结果并且从多个候选响应动应动作映射到例如在对话会话的每轮结束时作为输出提供给用户的然语言话语或降低维数嵌入、键入的自由形式自然语言输入等)与将全部地或部分地由自与对话例程相关联的一个或多个槽位还可以包括可以用于填充槽位的一个或多个用户枚能为至少一个必需的槽位提供值,则自动化助理120可以自动地提供为必需的可是未填充[0064]在一些实施方式中,每个客户端设备106可以包括被配置成存储由一个或多个用个本地对话例程索引113可以存储由任何用户在对应的客户端设备106处创建的对话例程。话例程可以被传播到形成客户端设备106的同一协调生态系统的一部分的其它客户端设备述其它客户端设备106的本地对话例程索引1处创建的对话例程可以被存储在全局对话例程索引132中,并且此后可以被该特定用户在存储在本地对话例程索引113中的本地可用对话例例程稍后被调用时,自动化助理120可以将说话者的话音与和该对话例程相关联的话音简话音与对话例程的创建者的话音简档相匹配来确定)的情况下才响应于规范命令而执行用用户所操作的客户端设备106的一个或多个音频和/或视觉输出设备提供给用户。聊天机器人的情况下,第三方代理可以例如通过自动化助理120和/或任务切换台134直接可用于填充新的对话例程的槽位的一个或多个用户枚举值与可用于填充与所述多个候选的对话例程。进一步假设此新的对话例程意在向待确定的墨可以将新的玉米饼订购对话例程(包括其关联的槽位)与第一软件代理和第二软件代理相因为此对话例程具有被要求填充的槽位,所以自动化助理120可以通过针对要在任何遗漏何可以用于调用对话例程并且由自动化助理120作为实现该对话例程的一部分所聚集的数的话语向自动化助理120提供(在人机对话会话的一轮或多轮期间)FFNLI。自动化助理120例如通过自然语言处理器122(在图2中未描绘)和/或对话状态跟踪器124(同样在图2中未[0074]自动化助理120例如通过对话管理器126(在图2中未描绘)可以向对话例程引擎一些实施方式中对话例程引擎130可以向由用户操作的计算设备的本地对话例程索引113或全局对话例程索引132中的一个或两个咨询。一旦自动化助理120选择匹配对话例程(例自动化助理120就可以针对用于为对话例程填充所有未填充和必需的槽位的值提[0075]一旦所有必要的槽位都被填充,自动化助理120就可以将指示至少用于填充槽位到用户的命令的一个或多个任务。任务切换台134然后可以选择将在本文中被称为用于便户端设备248可以采取被配置成接收电话呼叫的计算设备的形式,诸如蜂窝电话、常规电提供给这样的第三方客户端设备248的信息可以包括自然语言输出,所述自然语言输出例言输出可以包括例如传达要执行的任务的计算机生成的话语和与该任务相关联的参数134)针对对话例程所识别的任务是为了向缺少它自己的第三方软件代理的特定比萨店提以发起通知比萨店雇员用户希望订购具有由用户在该用户调用对话例程时指定的外皮类切换台134来给SMS/MMS服务242提供指示调用的对话例程的数据,诸如一个或多个槽位/操作第三方设备248的第二用户异步地交换数据,以便第二用户可帮助履行与所调用的对SMTP等)来生成和/或与第三方计算设备248交换电子邮件之外,电子邮件服务244可以像构建第三方软件代理246和/或具有构建第三方软件代理246的能力,所述第三方软件代理246被配置成自动地(例如,通过由那些远程用户所接涉的自动化助理120)与远程用户交120和/或任务切换台134交互,使得用户能够创建可与这些第三方代理246匹配的对话例方软件代理246可以向自动化助理120提供使得自动化助理120能够例如通过自然语言生成动化助理120进而将所述自然语言输出输出给个服务240_244,并且这些服务进而可以将此数据[0083]按本公开的所选方面而配置的对话例程不限于从客户端设备106远程地执行/履给我订购手工比萨)”)之外,用户可像平常一样调用对话例程。如果用户简单地说“Hey[0085]图3描绘依照各种实现方式的当用户调用比萨订购对话例程时可能发生的一个示决于用户如何创建对话例程和/或对话例程是否与特定任务(例如,特定第三方软件代理中的自动化助理客户端118,但是它可能是诸如一个或多个CBAAC119这样的另一组件)一端118可以与CBAAC119的一个或多个组件接涉以生成被呈现给用户以针对遗漏槽位值提[0088]尽管为了简洁和完整性在图3中未示出,但是可以将用户提供的槽位值返回给任CBAAC119可以将用户的话语(或其降低维数嵌入)与一个或多个规范命令、各种词典等相词性等。在步骤406处,系统可以基于块404的语义处理来确定自动化助理120不能解释命[0092]在块410处,系统可以在输入组件中的一个或多个处从用户接收第二自由形式自120能够确定哪一个槽位将被用特定值填充并且/或者确定提供的槽位值是无效的。例如,具有厚外皮、西红柿和轮胎的比萨)”而调用对话例程。自动化助理120可以基于“thick括可以由自动化助理120使用(例如,作为要在对话例程的将来调用期间提供给用户的建议)的非限制性潜在槽位值。这在诸如可能的比萨顶料的列表可能很大的比萨订购这样的上下文中可以是有益的,并且可以跨越比萨公司和/或随着时间的推移而大大地变化(例[0094]继续工作示例,自动化助理120可能问诸如“whatarethepossiblepizza助理120不受约束并且可用用户提供的任[0095]返回到图4,一旦用户已完成定义任何必需的/可选的槽位并且/或者枚举潜在槽[0096]在一些实施方式中,特别是在用户显式地请求自动化助理120生成对话例程而不解释的命令或请求时自动化助理120通过如上面关于块402_408所描述的过程来指导用户[0098]在块416处,系统可以基于后续自由形式自然语言输入或附加自由形式自然语言中的一个或多个可以例如向诸如第三方客户端设备248这样的远程计算设备和/或向第三方软件代理246发送指示要用于填充一个或多个槽位的至少一个或多个值的数据。在各种代理246,则例如从任务切换台134接收数据可以触发第三方软件代理246使用用户提供的的对话例程。用户可以在单个对话例程中定义程的每个任务的所有必需的槽位的槽位值,自动化助理120就可以将数据发送到如先前所可以缩小潜在槽位值的列表的范围然后才将它们呈现给用120可以例如向第三方软件代理246提供的用户提供的支付信息(例如,一张或多张信用以针对支付信息和/或针对使用已经与用户的简档相关联的支付信息的许可来提示用户。在指示调用的对话例程的数据(包括一个或多个槽位值)被提供给第三方计算设备(例[0103]在一些实施方式中,自动化助理120可以通过分析用户与在一个或多个客户端计或者作为问用户他们是否愿意将通常执行的动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论