CN107870977B - 基于用户状态形成聊天机器人输出的方法、系统和介质 - Google Patents

基于用户状态形成聊天机器人输出的方法、系统和介质 Download PDF

Info

Publication number
CN107870977B
CN107870977B CN201710880196.1A CN201710880196A CN107870977B CN 107870977 B CN107870977 B CN 107870977B CN 201710880196 A CN201710880196 A CN 201710880196A CN 107870977 B CN107870977 B CN 107870977B
Authority
CN
China
Prior art keywords
user
chat robot
input
chat
session
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.)
Active
Application number
CN201710880196.1A
Other languages
English (en)
Other versions
CN107870977A (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 CN202110896567.1A priority Critical patent/CN113779378B/zh
Publication of CN107870977A publication Critical patent/CN107870977A/zh
Application granted granted Critical
Publication of CN107870977B publication Critical patent/CN107870977B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • 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/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • 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/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Machine Translation (AREA)

Abstract

本申请涉及基于用户状态形成聊天机器人输出。这里描述了用于聊天机器人通过跟踪用户的状态并提供对应的对话来实现更好的社交礼仪的技术。在各种实施方式中,例如在用户和聊天机器人之间的第一会话期间,可以在操作聊天机器人的客户端设备处从用户接收输入。可以语义地处理输入以确定用户向聊天机器人表达的状态。由用户表达的状态的指示可以存储在存储器中以供将来由聊天机器人使用。然后可以例如由聊天机器人基于各种信号来确定用户和聊天机器人之间的第二会话正在进行中。在各种实施方式中,聊天机器人可以基于由用户表达的状态的存储的指示来输出由多个候选词、短语和/或语句形成的语句作为第二会话的一部分。

Description

基于用户状态形成聊天机器人输出的方法、系统和介质
技术领域
本申请涉及基于用户状态形成聊天机器人输出。
背景技术
聊天机器人(chatbot),也称为“交互式助理模块”,“虚拟助理”和/或“移动助理”,可以被设计为模仿人类对话。例如,聊天机器人可以使用诸如“hello(你好)”和“how areyou today?(今天怎么样)”的对话语句来问候用户。甚至可以将一些聊天机器人配置成识别与用户语句相关联的状态并作出相应的响应。假设用户高速聊天机器人“I feel lousytoday(我今天感觉不好)”。聊天机器人可以检测到该用户表达的消极状态并且可以选择输出合适的响应,诸如“I’m sorry to hear that.(我很抱歉听到这个。)”尽管努力使得聊天机器人看起来更“人类”,然而,聊天机器人可能仍然表现不自然或笨拙,因为例如,它们不能随时跟踪用户的情感。
发明内容
本说明书通常涉及用于将聊天机器人输出剪裁到用户状态的各种技术,以便为用户实现更易于理解的自然对话如本文所使用的,用户的“状态”可以指用户(在那个时间或在之前的时间)或另一个存在(例如,用户的朋友/家庭成员/宠物)的特定状况,例如情绪和/或身体状况(例如,用户的情感)。在各种实施方式中,诸如智能电话、智能手表、独立语音激活产品或操作聊天机器人的车辆计算系统(例如,车辆导航或媒体管理系统)的客户端设备可以从用户接收输入。输入可以在用户和聊天机器人之间的第一“会话”期间以各种形式到达,包括但不限于口头或语音输入、键入的输入、手势输入、眼动输入、面部表情输入等等。聊天机器人可以语义地处理输入以确定由用户表达的用户的状态(例如,情感),并且可以存储用户的状态的指示以备以后使用。例如,假设在第一次会话期间,用户指示消极状态,例如通过说“I feel lousy,(我觉得很糟糕)”,或者通过做出与消极性相关的面部表情(例如皱眉、苦着脸等)来表示。聊天机器人可以检测并在存储器中保留用户的消极状态的指示,诸如用户的实际语句和/或感情度量。在与用户的后续会话期间,聊天机器人可以形成例如一个或多个候选词、短语或语句、一个或多个语句(例如,同感的语句,诸如“I hopeyou’re feeling better,(我希望你感觉好一些了)”,“I hope your dog is feelingbetter(我希望你的狗感觉好一些了)”或者诸如“are you feeling better?(你感觉好些了吗?)”等的询问),以根据存储的用户状态指示输出给用户。以这种方式,聊天机器人能够随着时间的推移保留用户状态的知识,并且能够以更易于理解的方式和有效的方式来参与到用户。
“会话”可以包括用户和聊天机器人之间的一个或多个消息的逻辑和/或时间上自包含的交换。聊天机器人可以基于一个或多个信号来区分与用户的多个会话,诸如会话之间的时间流逝(例如,预定的时间间隔)、会话之间用户语境的变化(例如,位置、在预定会议之前/期间/之后等等)、除了用户和聊天机器人之间的对话之外检测到用户和客户端设备之间的一个或多个干涉交互(例如,用户切换应用了一段时间,用户走开然后返回到独立的语音激活设备)、在会话之间锁定/休眠客户端设备等等。在一些实施方式中,聊天机器人可以在超过两个会话上跟踪用户的状态。例如,聊天机器人可以了解到在每周(或月或年)的特定日期的特定时间用户倾向于具有特定的用户状态。聊天机器人可以主动输出针对这些学习用户状态的语句,给予聊天机器人好似具有同感心。
本文所述的技术可以产生各种技术效果和优点。例如,聊天机器人看起来越具有同感心(并且因此,更“人类”),用户将来可能会与之进行交谈的可能性更大。用户利用聊天机器人越多,聊天机器人可能更能够了解用户和用户的生活方式/交互。因此,聊天机器人可能能够在将来提供更智能的推荐和更有用的帮助,增加了聊天机器人的整体效率并节省了诸如内存、电力、处理器周期、和/或网络带宽的计算资源。此外,跟踪用户的状态可以在用户和聊天机器人之间产生更有效的对话,同样减少计算资源的消耗。例如,如果聊天机器人发出反映用户先前状态的语句,则用户可以立即向聊天机器人发出定向请求,而不需要用户向聊天机器人提醒用户的状态。
聊天机器人可以输出从各种源获得的语句。在一些实施方式中,聊天机器人可以访问从多个参与者之间的先前消息交换话题提取的语句库(当然,假定先前消息交换话题被授权用于此类使用)。在一些实施方式中,聊天机器人可以将一个或多个用户状态(例如情感)映射到来自库的语句组,例如使用启发式方法。在一些实施方式中,聊天机器人可以利用机器学习分类器,该机器学习分类器至少部分地基于对从先前的消息交换话题提取的表达情感的参与者语句和对那些情感语句的参与者响应的对进行训练。
因此,在一些实施方式中,方法可以包括:在操作聊天机器人的客户端设备处,接收来自用户的输入,其中,所述输入在所述用户和所述聊天机器人之间的第一会话期间被接收,并且所述输入基于由所述用户经由所述客户端设备的一个或多个输入设备生成的用户界面输入;由所述聊天机器人,在语义上处理来自所述用户的所述输入,以确定由所述用户向所述聊天机器人表达的状态;由所述聊天机器人,在存储器中存储由所述用户表达的所述状态的指示,以供将来由所述聊天机器人使用;由所述聊天机器人,基于一个或多个信号,确定所述用户和所述聊天机器人之间的第二会话正在进行中;和由所述聊天机器人,基于由所述用户表达的所述状态的所存储的指示,输出从多个候选词、短语或语句形成的语句作为所述第二会话的一部分,其中,所述语句经由所述客户端设备的一个或多个输出设备输出到所述用户。
在各种实施方式中,确定可以包括确定所述第二会话已经开始。在各种实施方式中,从多个候选词、短语或语句形成的语句可以是从多个候选问候中选择的问候。在各种实施方式中,由用户表达的状态可以是消极情感,并且由所述多个候选词、短语或语句形成的所述语句可以包括对所述用户或其他个体是否有所改善的询问,关于所述用户或其他个体表达了所述状态。
在各种实施方式中,该方法还可以包括:在所述客户端设备处,接收来自所述用户的语音输入;和将所述语音输入转换为文本输入。在各种实施方式中,语句可以远离客户端设备形成,或者由聊天机器人在本地形成。在各种实施方式中,该方法还可以包括:由所述聊天机器人在所述第一会话期间响应于来自所述用户的所述输入,输出基于由所述用户表达的所述状态从多个候选响应中选择的响应。在各种实施方式中,由用户表达的状态可能是消极情感,并且从多个候选响应中选择的响应可以包括同感的语句。
在各种实施方式中,除了所述用户和所述聊天机器人之间的对话之外,一个或多个信号可以包括检测到所述用户和所述客户端设备之间的一个或多个干涉交互。在各种实施方式中,一个或多个信号可以包括自所述用户和所述聊天机器人之间的最后交互以来经过了预定时间间隔。在各种实施方式中,一个或多个信号可以包括检测自所述用户和所述聊天机器人之间的最后交互以来所述用户的语境中的变化。
在各种实施方式中,聊天机器人可以从在多个个体之间的先前消息交换话题获取所述多个候选词、短语或语句。在各种实施方式中,可以基于至少部分地基于先前的消息交换话题训练的机器学习分类器来形成语句。
在各种实施方式中,存储可以包括将文本用户输入存储在包括用户随时间表达的状态的用户输入序列中。在各种实施方式中,可以基于由客户端设备在第一会话和第二会话之间检测到的用户的语境的变化进一步形成语句。在各种实施方式中,由用户表达的状态可以是用户的情感。
此外,一些实施方式包括一种包括存储器和一个或多个可操作以执行存储在存储器中的指令的处理器的装置,其中指令被配置成执行上述任何方法。一些实施方式还包括存储可由一个或多个处理器执行以执行上述任何方法的计算机指令的非暂时计算机可读存储介质。
应当理解,本文更详细地描述的前述概念和附加概念的所有组合都被认为是本文公开的主题的一部分。例如,出现在本公开的最后的要求保护的主题的所有组合都被认为是本文公开的主题的一部分。
附图说明
图1图示出了计算机系统的示例架构。
图2是示例分布式语音输入处理环境的框图。
图3是图示出使用图2的环境处理语音输入的示例方法的流程图。
图4和图5图示出了根据各种实施方式的在示例场景中如何实现公开的技术的示例。
图6是图示出根据各种实施方式的可由聊天机器人执行的和/或可代表聊天机器人执行的示例方法的流程图。
图7是根据各种实施方式的用户状态如何映射到语句组的示例。
具体实施方式
本说明书通常涉及用于将聊天机器人输出裁剪到用户状态以实现更加自然对话的各种技术。在各种实施方式中,诸如智能电话、智能手表、独立语音激活产品或操作聊天机器人的车辆计算系统(例如,车辆导航或媒体管理系统)的客户端设备可以从用户接收输入。输入可以采用使用诸如说出或键入输入、手势输入、用户面部表情、眼睛运动等各种模态的各种形式,在用户和聊天机器人之间的第一“会话”期间到达。如果输入被接收为语音输入,则可以首先将其解析并令牌化为文本令牌,如下所述。因此,如本文所使用的,“文本输入”包括语音输入(最终转换为文本)和用户使用虚拟或物理键盘输入的输入二者。聊天机器人可以在语义上处理文本输入以确定由用户表达的状态(例如,情感)(其可以与用户或其他人(诸如用户的家庭成员/朋友/宠物/同事)相关),并且可以存储状态的指示供以后使用。例如,如果在第一会话期间,用户说“I feel lousy(我感觉很糟糕),”,聊天机器人可以在存储器中保留用户的情感的指示,例如用户的语句本身。在与用户的后续会话中,聊天机器人可能会形成一个或多个语句(例如,诸如“I hope you’re feeling better”、“Ihope your family is feeling better(我希望你的家人感觉好一些了)”的同感的语句,或者是诸如“are you feeling better?”的询问,等)以通过一个或多个输出设备输出给用户。以这种方式,聊天机器人能够保留用户随时间表达的状态的知识(关于用户和/或其他人),并且能够以更社交可理解的方式接洽用户。
“会话”可以包括用户和聊天机器人之间的一个或多个消息的逻辑和/或时间上自包含的交换。聊天机器人可以基于一个或多个信号来区分用户的多个会话,诸如会话之间的时间流逝、用户语境的改变(例如,位置、在排程的会议之前/期间/之后等)、除了用户和聊天机器人之间的对话之外检测到用户和客户端设备之间的一个或多个干涉交互(例如,用户切换应用程序一段时间,用户离开然后返回到独立的语音激活产品)、在会话之间锁定/休眠客户端设备,等等。
在一些实施方式中,聊天机器人可以在超过两个会话中跟踪用户表达的状态。例如,聊天机器人可以学习在每周(或月或年)的特定时间段内用户(或者用户知道的人)倾向于具有特定状态。聊天机器人可以主动输出针对学习的状态的语句,给予聊天机器人看似具有同感。例如,假设用户每年围绕用户的结婚周年纪念指示浪漫的情感。聊天机器人可以主动发布指向用户周年纪念的语句,使用户心灵处于浪漫状态(例如,“Remember howsmitten you were this time last year?(记得去年这个时候你多么神魂颠倒么?)”)。
关于所选择的实施方式的进一步细节将在下文中讨论然而,应当理解,考虑其他实施方式,因此本文公开的实施方式不是排他性的。
现在转向附图,其中相似的附图标记在整个几个视图中表示相似的部件,图1是示例计算机系统10中的电子组件的框图。系统10通常包括至少一个处理器12,其经由总线子系统14与这些外围设备通信。外围设备可以包括存储子系统16,其包括例如存储器子系统18和文件存储子系统20、用户接口输入设备22、用户接口输出设备24、和网络接口26。输入和输出设备允许用户与系统10进行交互。网络接口26提供到外部网络的接口,并且耦合到其他计算机系统中的对应接口设备。
在一些实施方式中,用户界面输入设备22可以包括键盘、诸如鼠标、轨迹球、触摸板或图形输入板的指示设备、扫描仪、结合到显示器中的触摸屏、诸如语音识别系统的音频输入设备、麦克风、和/或其他类型的输入设备。通常,术语“输入设备”的使用旨在包括将信息输入计算机系统10或通信网络的所有可能类型的设备和方式。
用户接口输出设备24可以包括显示子系统、打印机、传真机或诸如音频输出设备的非视觉显示器。显示子系统可以包括阴极射线管(CRT)、诸如液晶显示器(LCD)的平板设备、投影设备、或用于创建可见图像的一些其它机构。显示子系统还可以提供诸如音频输出的非视觉输出。通常,术语“输出设备”的使用旨在包括从计算机系统10向用户或另一机器或计算机系统输出信息的所有可能类型的设备和方法。
存储子系统16存储提供本文描述的部分或全部模块的功能的编程和数据结构。例如,存储子系统16可以包括用于执行下文所公开的方法的选择的方面的逻辑。
这些软件模块通常由处理器12单独执行或与其他处理器组合执行。在存储子系统16中使用的存储器子系统18可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(RAM)28和存储固定指令的只读存储器(ROM)30。文件存储子系统20可以为程序和数据文件提供持久存储器,并且可以包括硬盘驱动器、软盘驱动器以及关联的可移动介质、CD-ROM驱动器、光学驱动器、或可移动介质盒。实现某些实施方式的功能的模块可以由文件存储子系统20存储在存储子系统16中,或者在由处理器12可访问的其他机器中。
总线子系统14提供用于允许系统10的各个组件和子系统按预期彼此通信的机制。虽然总线子系统14被示意性地示出为单个总线,总线子系统的替选实施方式可以使用多个总线。
系统10可以是变化的类型,包括移动设备、便携式电子设备、嵌入式设备、独立语音激活产品、车载计算系统(例如,车载导航或媒体管理系统)台式计算机、膝上型计算机、平板电脑、可穿戴设备、工作站、服务器、计算群集、刀片服务器、服务器场或任何其他数据处理系统或计算设备。此外,由系统10实施的功能可以分布在通过一个或多个网络彼此互连的多个系统中,例如在客户端-服务器,对等或其他联网布置中。由于计算机和网络的不断变化的性质,图1所示的系统10的描述仅旨在作为为了说明一些实施方式目的的特定示例。系统10的许多其他配置可能具有比图1所示的计算机系统更多或更少的组件。
下面讨论的实施方式可以包括实现本文公开的功能的各种组合的一个或多个方法。其他实施方式可以包括存储可由处理器执行的指令以执行诸如本文所述的一种或多种方法的方法的非暂时计算机可读存储介质。再其他实施方式可以包括包含存储器和可操作以执行存储在存储器中的指令以执行诸如本文所述的一种或多种方法的方法的一个或多个处理器的装置。
可以基于在特定实施方式中实现的应用来识别下面描述的各种程序代码。然而,应当理解,以下的任何特定程序命名仅用于方便。此外,考虑到计算机程序可以被组织到例程、规程、方法、模块、对象等中的无限次的方式,以及可以在位于典型的计算机内的各种软件层(例如,操作系统、库、API、应用、小应用等)之间分配程序功能的各种方式,应当理解,一些实施方式可以不限于本文所描述的程序功能的特定组织和分配。
此外,应当理解,可以由任何程序代码执行或在任何例程、工作流等中执行的本文描述的各种操作可以被组合、拆分、重新排序、省略、顺序或并列执行、和/或补充其他技术,因此,一些实施方式不限于本文描述的特定操作序列。
图2图示出了示例分布式语音输入处理环境50,例如用于与诸如在线语义处理器54的在线服务通信的语音使能设备52(或更一般地,“客户端设备”)一起使用。在下文讨论的实施方式中,例如,将语音使能设备52描述为诸如蜂窝电话或平板计算机的移动设备。然而,其他实施方式可以使用各种其他语音使能设备,因此下文中对移动设备的引用仅仅是为了简化下面的讨论的目的。无数其他类型的语音使能设备可以使用本文描述的功能,包括例如膝上型计算机、手表、头戴式设备、虚拟或增强现实设备、其他可穿戴设备、音频/视频系统、导航系统、汽车以及其他车辆系统、独立的语音激活设备等。此外,许多这样的语音使能设备可以被认为是资源约束的,因为特别是当与可以将几乎无限的计算资源用于个别任务的在线或基于云的服务的能力相比时,基于技术或其他原因,这些设备的存储器和/或处理能力可以是受约束的。
在一些实施方式中,语义处理器54可以被实现为采用云基础设施的基于云的服务,例如,使用运行适合于处理来自多个用户的大量请求的软件的高性能计算机的服务器场或群集。在线语义处理器54可以不限于基于语音的请求,并且还可以能够处理其他类型的请求,例如基于文本的请求、基于图像的请求等。在一些实施方式中,在线语义处理器54可以处理基于语音的请求,例如设置警报或提醒,管理列表,经由电话、文本、电子邮件等发起与其他用户的通信,或执行可以通过语音输入发起的其他动作。在其他实施方式中,在线语义处理器54可以处理其他类型的语音输入,例如来自表达用户状态(例如情感)的用户的对话语句。
在图2的实施方式中,由语音使能设备52接收的语音输入由语音使能应用(或“app”)处理,其在图2中采用聊天机器人56的形式。在其他实施方式中,语音输入可以在语音使能设备52的操作系统或固件内处理。在所图示实施方式中,聊天机器人56包括语音动作模块58、在线接口模块60、和渲染/同步模块62。语音动作模块58接收定向到聊天机器人56的语音输入,并且协调对语音使能设备52的用户的语音输入的分析和一个或多个动作的执行。在线接口模块60提供与语义处理器的接口,包括将语音输入转发到在线语义处理器54并接收对其的响应。渲染/同步模块62例如经由视觉显示、说出的音频、或适合于特定的语音使能设备的其他反馈接口,来管理对用户的响应的渲染。此外,在一些实施方式中,渲染/同步模块62还处理与语义处理器54的同步,例如,每当响应或动作影响在基于在线搜索服务中为用户维护的数据(例如,其中语音输入请求创建维护在基于云的日历中的约会)时。
聊天机器人56可以依靠各种中间件、框架、操作系统和/或固件模块来处理语音输入,包括例如流式传输语音到文本模块64,和包括解析器模块68、对话管理器模块70和动作构建器模块72的语义处理器模块66。
流式传输语音到文本模块64接收语音输入的音频记录,例如以数字音频数据的形式,并将数字音频数据转换为一个或多个文本词或短语(在本文中也称为“令牌”)。在所图示实施方式中,流式传输语音到文本模块64也是流式传输模块,使得语音输入在逐个令牌的基础上以实时或接近实时的方式转换为文本,使得令牌可以有效地与用户的讲话同时地、并因此在用户发出完整的说出的请求之前从流式传输语音到文本模块64输出。流式传输语音到文本模块64可以依赖于一个或多个本地存储的离线声学和/或语言模型74,其一起对在语言中的音频信号和语音单元之间的关系以及语言中的词序列进行建模。在一些实施方式中,可以使用单个模型74,而在其他实施方式中,可以支持多个模型,例如支持多种语言、多个扬声器等。
尽管流式传输语音到文本模块64将话音转换为文本,但是为了该目的或制定适当的可理解的响应,语义处理器模块66尝试辨别流式传输语音到文本模块64输出的(或由用户作为键入文本初始提供的)文本的语义或意义。例如,解析器模块68依赖于一个或多个离线语法模型76将文本映射到特定动作,并且识别约束这些动作的执行的属性,例如这些动作的输入变量。在一些实施方式中,可以使用单个模型76,而在其他实施方式中,可以支持多个模型,例如,以支持不同的动作或动作域(即,诸如通信相关动作、搜索相关动作、音频/视频相关动作、日历相关动作、设备控制相关动作等的相关动作的合集)。
作为示例,离线语法模型76可以支持诸如具有提醒类型参数的“设置提醒”的动作,所述提醒类型参数指定要设置的提醒的类型、指定与提醒相关联的一个或多个物品的物品参数、以及指定激活提醒并通知用户的时间的时间参数。解析器模块68可以接收令牌的序列,诸如“remind me to(提醒我)”,“pick up(取)”,“bread(面包)”和“after work(在工作之后)”,并将令牌序列映射到利用被设置为“shopping reminder(购物提醒”)的提醒类型参数、被设置为“bread”的物品参数、被设置为“5:00pm”的时间参数来设置提醒的动作,使得当天下午5:00,用户收到“buy bread(购买面包)”的通知。
解析器模块68还可以与管理与用户对话的对话管理器模块70一起操作。这种语境下的对话是指与两个人之间的对话相似的语音输入和响应的集合。因此,模块70保持对话“状态”,以实现在形成未来输出时使用在先前的语音输入中从用户获得的信息。因此,例如,如果用户说“I’m stressed,(我很紧张)”,可以产生响应来说“maybe it’s time for abreak.(可能是休息的时间了)”。在一些实施方式中,对话管理器模块70可以整体或部分地被实现为聊天机器人56的一部分。
动作构建器模块72从解析器模块68接收表示语音输入解释的解析文本,并且生成一个或多个响应动作或“任务”连同任何相关联的参数用于由聊天机器人56的模块62进行处理。动作构建器模块72可以依赖于一个或多个离线动作模型78,其中并入用于从解析文本创建动作的各种规则。应当理解,一些参数可以作为语音输入被直接接收,而一些参数可以以其他方式确定,例如基于用户的位置、人口统计信息,或者基于用户特有的其他信息。例如,如果用户说“remind me to pick up bread at the grocery store(提醒我在杂货店取面包)”,在没有诸如用户的当前位置、用户在他/她的办公室和家庭之间的已知路线、用户的常规杂货店等的附加信息的情况下,位置参数可能是不可确定的。
应当理解,在一些实施方式中,模型74、76和78可以组合成更少的模型或分成附加的模型,如模块64、68、70和72的功能。此外,模型74-78在本文中被称为离线模型,只要模型本地存储在语音使能设备52上,并且由此当设备52不与在线语义处理器54通信时可以离线访问。此外,尽管模块56在此被描述为是聊天机器人,这并不意味着限制。在各种实施方式中,在语音使能设备52上操作的任何类型的app可以执行本文所描述的技术,以如本文所述裁剪对用户的状态的输出。
在各种实施方式中,在线语义处理器54可以包括用于处理语音输入的补充功能,例如,使用基于语音的查询处理器80,其依赖于各种声学/语言、语法和/或动作模型82。应当理解,在一些实施方式中,特别是当语音使能设备52是资源约束设备时,基于语音的查询处理器80和由此使用的模型82可以实现比语音使能设备52本地更复杂和计算资源密集型语音处理功能。
在一些实施方式中,可以采用多个基于语音的查询处理器80,每个基于语音的查询处理器80充当用于一个或多个聊天机器人56的基于执行对应物。例如,在一些实施方式中,用户的客户端设备生态系统中的每个客户端设备可以被配置成操作与用户相关联的聊天机器人56的实例(例如,配置有用户偏好、与相同的交互历史相关联等)。取决于用户当时正在操作的客户端设备,基于语音的查询处理器80的单个以用户为中心的在线实例可以对于聊天机器人56的这些多个实例中的每一个可访问。
在一些实施方式中,可以支持在线功能和离线功能二者,例如,使得当客户端设备与在线服务通信时使用在线功能,而当没有连接存在时使用离线功能。在其他实施方式中,可以将不同的动作或动作域分配给在线功能和离线功能,并且在其它实施方式中,仅当离线功能不能充分地处理特定语音输入时,才可以使用在线功能。然而,在其他实施方式中,不能使用互补的在线功能。
例如,图3图示出了可由语音使能设备52执行以处理语音输入的语音处理例程100。例程100通过接收语音输入(例如,以数字音频信号的形式)开始于块102。在该实施方式中,做出初始尝试将语音输入转发到在线搜索服务(块104)。如果不成功,例如,由于缺乏连接或缺乏来自在线搜索服务的响应,块106将控制传递给块108以将语音输入转换为文本令牌(块108,例如,使用图2的流式传输语音到文本模块64)、解析文本令牌(块110,例如,使用图2的模块68)、并且从经解析的文本构建动作(块112,例如,使用图2的动作构建器模块72)。然后将所得到的动作用于执行客户端渲染和同步(块114,例如使用图2的渲染/同步模块62),并且语音输入的处理完成。
返回到块106,如果将语音输入转发到在线搜索服务的尝试成功,则块106绕过块108-112,并将控制直接传递到块114以执行客户端侧渲染和同步。然后完成语音输入的处理。应当理解,在其他实施方式中,如上所述,可以在在线处理之前尝试离线处理,例如,当语音输入可以在本地处理时避免不必要的数据通信。
图4和图5示意性地示出了示例场景,其中聊天机器人56可以跨多个会话跟踪用户的状态(例如情感),并输出基于用户的最后已知状态形成的语句。在图4中,语音使能设备152采用具有触摸屏显示器154的智能电话或平板计算机的形式,触摸屏显示器154用于渲染用户(图4和图5中的“YOU”)和聊天机器人(图2中的56)之间的文字记录。图4描绘了在8月1日晚上发生的用户和聊天机器人之间的第一会话。用户已经提供了文本输入(原始是说出或者键入的),指示用户觉得糟糕。聊天机器人已经检测到消极的用户状态,并提供了合适的响应,诸如“I’m sorry to hear that.(我很抱歉听到这些)”。聊天机器人还将用户表达的状态的指示存储在例如语音使能设备152的存储器中。例如,在一些实施方式中,聊天机器人可以将用户的语句逐字地存储在存储器中。在其他实施方式中,聊天机器人可以确定从用户的语句确定的通用用户状态(例如,数值情感度量或枚举的情感等级),诸如“生病”、“悲伤”、“沮丧”等,并且可以存储该通用用户状态的指示。
图5描绘了在8月2日的第二天早上发生的用户和聊天机器人之间的第二会话。用户通过询问“What’s the weather today?(今天天气怎么样)”来发起第二会话。聊天机器人首先通过回复“80degrees and sunny.(80度且晴天)”来响应用户的询问。然后,在没有来自用户的任何提示的情况下,并且基于用户在前一天晚上表达的消极状态,聊天机器人问“Are you feeling better?(你感觉好些了吗?)”虽然图5所示的第二会话在图4所示的第一会话的一天之后发生,但这并不意味着是限制。如上所述,在各种实施方式中,可以基于其他信号来区分用户和聊天机器人之间的单独会话,其他信号诸如用户和语音使能设备152之间的干涉交互、用户的语境的改变(例如,其可以基于来自与语音使能设备152相关联的诸如加速度计、GPS等的一个或多个传感器的一个或多个信号等来检测)等等。
图6图示出了适于由聊天机器人56执行以便以更自然(即,“人类”、“优雅的”)的方式与用户通信的例程660。例程660可以由处理基于语音查询的相同服务、或者可以是完全不同的服务执行。
在块662,在第一会话期间从用户接收输入。如上所述,输入可以采取各种形式和/或使用各种输入模式来接收。在一些实施方式中,输入可以采取数字音频信号或用户在物理或虚拟键盘上键入的文本的形式。在其他实施方式中,输入可以采取其他形式,诸如手势(例如,摇动电话可能指示兴奋或沮丧)、眼睛运动(例如,大量眼睛运动可能指示压力或兴奋)等等。假定输入是文本输入(原始说出或键入的),则在块664,用户输入可以被语义地在线或离线处理以确定用户的状态。在一些实施方式中,文本输入可被转换为文本令牌(例如,使用图2的流式传输语音到文本模块64和/或模型82),然后在块664进行语义处理。
在块666,聊天机器人56可以例如在本地存储器和/或在一个或多个远程计算设备(例如,托管在云端)上存储用户状态的指示。在一些实施方式中,指示可以逐字地包括用户的语句。在其他实施方式中,指示可以包括用户状态的一般化的标签(例如,“快乐”、“悲伤”、“生病”、“激动”、“紧张”等)。在其他实施方式中,指示可以被存储为数值状态(或“情感”)度量。在一些实施方式中,用户输入可以被存储为用于表达用户随时间的状态(例如,跨越多个不同会话)的用户输入序列的一部分。在块668,聊天机器人56可以基于一个或多个信号确定随后的会话已经开始和/或正在进行中。之前描述了在多个不同会话之间进行区分时可由聊天机器人56考虑的信号的示例。
在块670,聊天机器人56可以从多个候选词、短语和/或语句输出例如通过聊天机器人56或远程处理器形成的一个或多个语句。在一些实施方式中,可以从多个个体之间的先前消息交换话题获取/提取多个候选词、短语和/或语句。例如,可以授权先前的消息交换话题的语料库用于训练诸如机器学习分类器或神经网络的人造智能方案。表达用户的状态(例如,用户情感)的消息交换话题中的用户词、短语和/或语句可以用作经标记的输入。消息交换话题中来自其他用户的对这些语句的响应可以被提供为经标记的输出。例如,同感、恭喜、鼓励等的响应可能被识别为对表达情感的用户语句的响应。可以使用这些经标记的对来训练机器学习分类器、神经网络或其他人工智能模型,来识别响应于用户的情感语句由聊天机器人56形成和提供的未来的词、短语和/或语句。
在其他实施方式中,可以采用较不复杂的技术来识别用于聊天机器人56在随后会话中输出的适当语句。例如,在一些实施方式中,可以针对枚举的用户状态集合(例如,情感)中的每一个提供多个候选语句。每当聊天机器人56和用户之间开始新的会话时,可以使用用户的最后已知状态(或多个先前状态的组合)来识别用户的潜在的当前情感。然后,可以从与该情感相关联的多个候选语句中选择语句。
图7示意性地描绘了如何将各种等级的用户状态——尤其是用户情感——映射到要由聊天机器人输出的多个候选语句的非限制性示例。在左边是从强消极到强积极的一系列情感,其间的中间值可以由聊天机器人在第一会话期间基于用户输入确定。在右边是候选语句,可以由聊天机器人在与用户的后续会话期间基于先前确定的情感来选择和输出。在其他实施方式中,除了或替代选择候选语句以输出之外,聊天机器人可以形成(例如,组合)来自多个候选词、短语和/或完整语句的语句。
在图7所示的实施方式中,每个等级的情感可以映射到多个候选语句。例如,强消极和消极两者映射到四个候选语句的相同组(“I’m sorry for your loss(我很抱歉你的损失)”、“Is there anything I can do to help?(有什么可以帮助吗?)”、“I hope you’re feeling better,”(我希望你赶紧好些了)、“How are you feeling?(你感觉怎么样了?)”)。中性映射到采取普通问候的形式的三个相对通用的候选语句(“Good morning(早上好)”、“Good Afternoon(下午好)”、“How are you?(你好吗?)”)。积极和强积极都映射到另一组四个候选语句(“Still glowing?(仍然兴高采烈?)”、“Still in a happy mood?(仍然保持愉快的心情?)”、“Wonderful to see you so happy<insert previous time>(很高兴看到你这么开心<插入上一次时间>)”、“Congratulations(恭喜)”)。当然,图7所示的情感水平和候选语句仅用于说明的目的,并不意味着限制。针对任何数量的情感等级,可能会提供任何数量的候选语句。
在各种实施方式中,如果聊天机器人(例如,56)在与用户的第一会话期间确定用户具有特定情感,则聊天机器人可以在后续会话——诸如,下一个会话——期间输出与在先会话对应的语句。例如,如果用户在第一次会话期间表达消极的情感,则聊天机器人可以选择并输出顶部语句组中的四个语句之一。如上所述,在其他实施方式中,聊天机器人可以形成(例如,组合)语句以从多个候选词、短语和/或语句中输出。附加地或替选地,在一些实施方式中,聊天机器人可以选择并输出一个或多个图像、符号和/或表意文字(诸如一个或多个所谓的“表情符号”)以表达同感或以其他方式响应于用户表达的情感。
返回参考图7,聊天机器人可以以各种方式从映射到一个或多个情感等级的一组候选语句中选择特定语句。在一些实施方式中,如果聊天机器人没有关于用户的语境等的附加信息,则聊天机器人可以仅选择最广泛适用(即,通用的)的语句。例如,如果聊天机器人只知道用户的最后情感是消极的,它可能会选择相对通用的同感响应,诸如“I hopeyou’re feeling better(我希望你感觉好些了)”或者“How are you feeling?(你感觉怎么样)”在某些实施方式中,如果两个或更多的候选语句同样适用于用户的最后已知的情感,则聊天机器人可以从两个或多个语句中随机选择。
在其他实施方式中,聊天机器人可以分析用户对候选语句的先前响应,并且可以选择过去用户主要积极响应的候选语句。例如,假设在过去的多个情况下,当用户最后已知的情感是消极的时候,聊天机器人会输出“I hope you’re feeling better(我希望你感觉好些了)”(声明性语句)和“How are you feeling?(你感觉怎么样)”(用户状态的征求)两者。进一步假设用户忽略了前者,但对后者做出响应(例如,“Yes,I am feeling better,thank you for asking.(是的,我感觉好点了,谢谢你问我。)”)。当选择在以后的会话中输出这两个短语中的哪一个时,聊天机器人可以考虑这一点。为此,在一些实施方式中,聊天机器人可以与每个候选语句相关联地创建和维护分数、统计信息和/或其他度量,以便更频繁地使用引起积极响应的那些语句。
在一些实施方式中,候选语句(或词、或短语)可以从已经被授权用作例如用于机器学习分类器的训练例的多个(人类)参与者之间的先前消息交换中获取。例如,可以采用被训练来识别表达情感的用户语句的所谓“情感分类器”来识别表达各种情感的消息交换话题参与者的词、短语和/或语句。然后可以识别来自其他参与者的响应和/或回复。
在一些实施方式中,可以将语句对——一个表达情感且另一个同感地对其做出响应——作为所谓的“情感响应分类器”的积极训练例。另外或者替选地,在一些实施方式中,可以将语句三元组——例如,表达情感的第一语句、同感地响应于第一语句的第二语句、以及积极地肯定应答第二语句的第三语句——用作积极训练例。同样地,在一些实施方式中,可以将语句三元组——例如,表达情感的第一语句、同感地响应于第一语句的第二语句、以及拒绝或以其他方式校正第二语句的第三语句——用作消极训练例。一旦已经以这种方式分析了足够的先前消息交换话题,则情感响应分类器可以由聊天机器人使用以选择候选词、短语和/或语句以用作响应于先前确定的用户情感的输出。
在另外的实施方式中,可以基于一个或多个可用于聊天机器人的信号来形成语句,而不是在用户情感之前的一般指示。例如,假设表达消极情感的用户输入也提供了其他细节,诸如“I’m sad because my friend moved away(我很伤心,因为我的朋友搬走了)”。关于搬走的朋友的附加信息可以例如由聊天机器人进行语义处理,并且可以用于从图7的顶部框中选择“I’m sorry for your loss(我跟抱歉你的损失)”。
作为另一示例,假设在第一会话期间,用户向聊天机器人表达积极的情感,但没有详细说明为什么他们是快乐的。然而,假设聊天机器人具有对与用户相关联的个人数据的访问,诸如描述用户将要获奖的仪式、指示用户已经参与的社交网络状态更新、或者通知用户该用户已经获得了免费假期的电子邮件。基于任何这些数据点(或可能需要表示祝贺的其他相似类型的数据点),聊天机器人可以在随后的会话中选择“Congratulations(祝贺)”输出给用户,而不是更通用的语句,诸如“Still in a happy mood?(仍然保持愉快的心情?)”。
上面结合图7描述的示例包括维护或跟踪用户情感会话间(即,跨越多个会话)。然而,这并不意味着限制。在一些实施方式中,可以在会话内(即在单个会话内)使用类似的技术。例如,如果用户提供表达消极/积极情感的输入,则聊天机器人可以立即用从图7所示的候选语句中选择的语句进行响应(或者在其他实施方式中,可以使用候选词、短语和/或语句组合/形成这样的语句)。聊天机器人也可以基于用户的即时响应或缺乏用户的即时响应,对该候选语句进行评分或排名,例如以供将来参考。在一些实施方式中,用户可以在给定的会话期间表达先前的状态(例如,“I felt sick last night(我昨晚感到不舒服)”)。响应于关于先前状态的这种语句,聊天机器人可以在相同的给定会话期间形成来自多个候选词、短语和/或语句的响应(例如,“are you feeling better this morning?(今天早上你感觉好一些了吗?)”)。
在一些实施方式中,可以在不了解用户的在先状态(例如情感)的情况下使用本文所描述的技术。例如,如果聊天机器人在每次在用户和聊天机器人之间开始新会话时向用户输出通用问候语(例如“Hello(你好)”、“How are you(你怎么样)”等),则用户可能会变得恼火,特别是如果在相对较短的时间段(例如,几分钟、几个小时等)内存在多个会话的情况下。例如,如果聊天机器人已经向用户输出问候语“Good morning(早上好)”,那么即使用户与聊天机器人进行多个不同的会话,聊天机器人在这个早晨稍后输出相同的问候语是没有意义的。
因此,与图6的块668相关联的技术类似的技术可以被用于确定在会话开始时聊天机器人是否将社交合理第向用户发出问候。在上述示例中,例如,聊天机器人可以例如在语音使能设备52的存储器中维护今天已经输出问候“Good morning(早上好)”的指示。用户和聊天机器人之间的早晨会话应该停止,并且用户在这个早晨稍后应该发起新的会话,聊天机器人可以确定它已经问候了用户,并且可以不再发出相同或相似的问候。在一些实施方式中,聊天机器人可以被配置成每天仅输出单个问候。在其他实施方式中,聊天机器人可以被配置成如果自上一次输出问候以来已经过了一段阈值时间则输出问候。
尽管本文已经描述和示出了几种实施方式,但是可以使用用于执行功能和/或获得结果的各种其他手段和/或结构和/或本文所述的一个或多个优点,并且每个这样的变化和/或修改被认为在本文描述的实施方式的范围内。更一般来说,本文描述的所有参数、尺寸、材料和配置旨在是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用教导的具体应用。本领域技术人员将认识到或者能够使用不超过常规实验来确定本文所述的具体实施方式的许多等同物。因此,应当理解,前述实施方式仅以举例的方式呈现,并且在所附权利要求及其等同物的范围内,可以以除了与具体描述和权利要求相同的方式之外的方式实践实施方式。本公开的实施方式涉及本文所述的每个单独特征、系统、制品、材料、工具包和/或方法。此外,如果这些特征、系统、制品、材料、工具包和/或方法不相互矛盾,则两个或更多个这样的特征、系统、制品、材料、工具包和/或方法的任何组合都包括在本公开的范围内。

Claims (21)

1.一种基于用户状态形成聊天机器人输出的方法,包括:
在操作聊天机器人的客户端设备处,接收来自用户的输入,其中,所述输入在所述用户和所述聊天机器人之间的第一会话期间被接收,并且所述输入基于由所述用户经由所述客户端设备的一个或多个输入设备生成的用户界面输入;
由所述聊天机器人,在语义上处理来自所述用户的所述输入,以确定由所述用户向所述聊天机器人表达的状态;
由所述聊天机器人,在存储器中存储由所述用户表达的所述状态的指示,以供将来由所述聊天机器人使用;
由所述聊天机器人,基于一个或多个信号,确定所述用户和所述聊天机器人之间的第二会话正在进行中;和
由所述聊天机器人,基于由所述用户表达的所述状态的所存储的指示,输出从多个候选词、候选短语或候选语句形成的语句作为所述第二会话的一部分,其中,所述语句经由所述客户端设备的一个或多个输出设备输出到所述用户。
2.根据权利要求1所述的方法,其中,所述确定包括确定所述第二会话已经开始。
3.根据权利要求2所述的方法,其中,所述语句包括从多个候选问候中选择的问候。
4.根据权利要求1所述的方法,其中,由所述用户表达的所述状态是消极情感,并且所述语句包括对所述用户或其他个体是否有所改善的询问,关于所述用户或其他个体表达过所述状态。
5.根据权利要求1所述的方法,还包括:
在所述客户端设备处,接收来自所述用户的语音输入;和
将所述语音输入转换为文本输入。
6.根据权利要求1所述的方法,其中,所述语句远离所述客户端设备形成。
7.根据权利要求1所述的方法,其中,所述语句由所述聊天机器人形成。
8.根据权利要求1所述的方法,还包括:由所述聊天机器人在所述第一会话期间响应于来自所述用户的所述输入,输出基于由所述用户表达的所述状态从多个候选响应中选择的响应。
9.根据权利要求8所述的方法,其中,由所述用户表达的所述状态是消极情感,并且从所述多个候选响应中选择的所述响应包括同感语句。
10.根据权利要求1-9中任一项所述的方法,其中,所述一个或多个信号包括检测到除了所述用户和所述聊天机器人之间的对话之外的所述用户和所述客户端设备之间的一个或多个干涉交互。
11.根据权利要求1-9中任一项所述的方法,其中,所述一个或多个信号包括自所述用户和所述聊天机器人之间的最后交互以来经过了预定时间间隔。
12.根据权利要求1-9中任一项所述的方法,其中,所述一个或多个信号包括检测到自所述用户和所述聊天机器人之间的最后交互以来所述用户的语境中的变化。
13.根据权利要求1-9中任一项所述的方法,其中,所述聊天机器人从在多个个体之间的先前消息交换话题获取所述多个候选词、候选短语或候选语句。
14.根据权利要求13所述的方法,其中,所述语句是基于至少部分地基于所述先前消息交换话题训练的机器学习分类器形成的。
15.根据权利要求13所述的方法,其中,所述多个候选词、候选短语或候选语句包括特定于所述用户的方言的词。
16.根据权利要求5所述的方法,其中,所述存储包括将所述文本用户输入存储在包括随时间推移的由所述用户表达的状态的用户输入序列中。
17.根据权利要求14所述的方法,其中,所述语句进一步基于由所述客户端设备在所述第一会话和所述第二会话之间检测到的所述用户的语境的变化而形成。
18.根据权利要求1所述的方法,其中,由所述用户表达的所述状态是所述用户的情感。
19.一种基于用户状态形成聊天机器人输出的系统,包括一个或多个处理器和与所述一个或多个处理器可操作地耦合的存储器,其中,所述存储器存储指令,所述指令在由所述一个或多个处理器执行时使得所述一个或多个处理器:
在所述系统的一个或多个输入设备处,接收来自用户的语音输入,其中,所述语音输入在所述用户和由所述一个或多个处理器操作的聊天机器人之间的第一会话期间被接收;
由所述聊天机器人,在语义上处理来自所述用户的所述语音输入,以确定由所述用户向所述聊天机器人表达的状态;
由所述聊天机器人,在所述存储器中存储由所述用户表达的所述状态的指示,以供将来由所述聊天机器人使用;
由所述聊天机器人基于一个或多个信号,确定所述用户和所述聊天机器人之间的第二会话正在进行中;和
由所述聊天机器人,基于所存储的由所述用户表达的所述状态的指示,输出从多个候选词、候选短语或候选语句形成的语句作为所述第二会话的一部分,其中,所述语句经由所述系统的一个或多个输出设备输出到所述用户。
20.根据权利要求19所述的系统,其中所述一个或多个信号包括以下中的至少一个:
检测到除了所述用户和所述聊天机器人之间的对话之外的所述用户和所述系统之间的一个或多个干涉交互;
自所述用户和所述聊天机器人之间的最后交互以来经过了预定时间间隔;或
检测到自所述用户和所述聊天机器人之间的最后交互以来所述用户的语境中的变化。
21.包括指令的至少一个非暂时计算机可读存储介质,所述指令在由客户端设备的一个或多个处理器执行时使得所述一个或多个处理器执行以下操作:
接收来自用户的输入,其中,所述输入在所述用户和由所述客户端设备操作的聊天机器人之间的第一会话期间被接收,并且所述输入基于由所述用户经由所述客户端设备的一个或多个输入设备生成的用户界面输入;
由所述聊天机器人,在语义上处理来自所述用户的所述输入,以确定由所述用户向所述聊天机器人表达的状态;
由所述聊天机器人,在存储器中存储由所述用户表达的所述状态的指示,以供将来由所述聊天机器人使用;
由所述聊天机器人,基于一个或多个信号,确定所述用户和所述聊天机器人之间的第二会话正在进行中;和
由所述聊天机器人,基于所存储的由所述用户表达的所述状态的指示,输出从多个候选词、候选短语或候选语句形成的语句作为所述第二会话的一部分,其中,所述语句经由所述客户端设备的一个或多个输出设备输出到所述用户。
CN201710880196.1A 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质 Active CN107870977B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110896567.1A CN113779378B (zh) 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/277,954 2016-09-27
US15/277,954 US9947319B1 (en) 2016-09-27 2016-09-27 Forming chatbot output based on user state

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110896567.1A Division CN113779378B (zh) 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质

Publications (2)

Publication Number Publication Date
CN107870977A CN107870977A (zh) 2018-04-03
CN107870977B true CN107870977B (zh) 2021-08-20

Family

ID=59930774

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710880196.1A Active CN107870977B (zh) 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质
CN202110896567.1A Active CN113779378B (zh) 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202110896567.1A Active CN113779378B (zh) 2016-09-27 2017-09-26 基于用户状态形成聊天机器人输出的方法、系统和介质

Country Status (6)

Country Link
US (4) US9947319B1 (zh)
EP (1) EP3510497A1 (zh)
CN (2) CN107870977B (zh)
DE (2) DE202017105815U1 (zh)
GB (1) GB2555922A (zh)
WO (1) WO2018063758A1 (zh)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6612707B2 (ja) * 2016-09-30 2019-11-27 本田技研工業株式会社 情報提供装置
US10250532B2 (en) * 2017-04-28 2019-04-02 Microsoft Technology Licensing, Llc Systems and methods for a personality consistent chat bot
US10600409B2 (en) * 2017-06-09 2020-03-24 Google Llc Balance modifications of audio-based computer program output including a chatbot selected based on semantic processing of audio
US10652170B2 (en) * 2017-06-09 2020-05-12 Google Llc Modification of audio-based computer program output
US10657173B2 (en) * 2017-06-09 2020-05-19 Google Llc Validate modification of audio-based computer program output
US10614122B2 (en) * 2017-06-09 2020-04-07 Google Llc Balance modifications of audio-based computer program output using a placeholder field based on content
US20180364798A1 (en) * 2017-06-16 2018-12-20 Lenovo (Singapore) Pte. Ltd. Interactive sessions
US10446147B1 (en) * 2017-06-27 2019-10-15 Amazon Technologies, Inc. Contextual voice user interface
KR101999657B1 (ko) * 2017-09-22 2019-07-16 주식회사 원더풀플랫폼 챗봇을 이용한 사용자 케어 시스템
US11386171B1 (en) * 2017-10-30 2022-07-12 Wells Fargo Bank, N.A. Data collection and filtering for virtual assistants
KR102169868B1 (ko) * 2017-11-27 2020-10-26 한국전자통신연구원 채팅로봇 시스템 및 서비스방법
US10810322B2 (en) * 2017-12-05 2020-10-20 Microsoft Technology Licensing, Llc Sharing user information with and between bots
JP2019106054A (ja) * 2017-12-13 2019-06-27 株式会社東芝 対話システム
CN116541498A (zh) 2018-01-04 2023-08-04 微软技术许可有限责任公司 在会话中提供情感关怀
CN108521366A (zh) * 2018-03-27 2018-09-11 联想(北京)有限公司 表情推送方法和电子设备
US10594635B2 (en) * 2018-04-20 2020-03-17 Oracle International Corporation Managing customer relationship using multiple chat servers designed to interface with service applications
CN108877792B (zh) * 2018-05-30 2023-10-24 北京百度网讯科技有限公司 用于处理语音对话的方法、装置、电子设备以及计算机可读存储介质
US11132681B2 (en) 2018-07-06 2021-09-28 At&T Intellectual Property I, L.P. Services for entity trust conveyances
CN108809817A (zh) * 2018-07-06 2018-11-13 上海博泰悦臻电子设备制造有限公司 车载即时聊天的车辆、车机设备、云服务器及通信方法
DE102018212503A1 (de) * 2018-07-26 2020-01-30 Krones Aktiengesellschaft Kommunikations- und Steuerungs-/Regelungssytem für eine Abfüllanlage
CN109243438B (zh) * 2018-08-24 2023-09-26 上海擎感智能科技有限公司 一种车主情绪调节方法、系统及存储介质
JP2020042074A (ja) * 2018-09-06 2020-03-19 トヨタ自動車株式会社 音声対話装置、音声対話方法および音声対話プログラム
US10802872B2 (en) 2018-09-12 2020-10-13 At&T Intellectual Property I, L.P. Task delegation and cooperation for automated assistants
CA3018060C (en) 2018-09-20 2023-03-14 The Toronto-Dominion Bank Chat bot conversation manager
WO2020067710A1 (ko) * 2018-09-27 2020-04-02 삼성전자 주식회사 대화형 인터페이스를 제공하는 방법 및 시스템
US11037048B2 (en) 2018-10-22 2021-06-15 Moveworks, Inc. Virtual conversation method or system
US11481186B2 (en) 2018-10-25 2022-10-25 At&T Intellectual Property I, L.P. Automated assistant context and protocol
US20200142719A1 (en) * 2018-11-02 2020-05-07 International Business Machines Corporation Automatic generation of chatbot meta communication
US10942941B2 (en) 2018-11-12 2021-03-09 International Business Machines Corporation Natural language processor for cognitively generating contextual filler designed to keep users engaged
US11037576B2 (en) 2018-11-15 2021-06-15 International Business Machines Corporation Distributed machine-learned emphatic communication for machine-to-human and machine-to-machine interactions
US10594634B1 (en) 2018-12-05 2020-03-17 Soo Chuan Teng Electronic mail generation device and method of use
DE102018133149A1 (de) 2018-12-20 2020-06-25 Bayerische Motoren Werke Aktiengesellschaft Multimodale Mehrstufeninteraktion
US11188548B2 (en) * 2019-01-14 2021-11-30 Microsoft Technology Licensing, Llc Profile data store automation via bots
US11183186B2 (en) 2019-01-16 2021-11-23 International Business Machines Corporation Operating a voice response system
JP7135887B2 (ja) * 2019-01-24 2022-09-13 トヨタ自動車株式会社 促し発話装置、促し発話方法及びプログラム
US20200279553A1 (en) * 2019-02-28 2020-09-03 Microsoft Technology Licensing, Llc Linguistic style matching agent
DE102019105590B3 (de) 2019-03-05 2020-08-06 Bayerische Motoren Werke Aktiengesellschaft Cross-Platform Messaging in Fahrzeugen
US20220147944A1 (en) * 2019-03-18 2022-05-12 Cognitive Industries Pty Ltd A method of identifying and addressing client problems
US11163960B2 (en) * 2019-04-18 2021-11-02 International Business Machines Corporation Automatic semantic analysis and comparison of chatbot capabilities
US11206229B2 (en) * 2019-04-26 2021-12-21 Oracle International Corporation Directed acyclic graph based framework for training models
US11106874B2 (en) * 2019-05-08 2021-08-31 Sap Se Automated chatbot linguistic expression generation
US11146501B2 (en) * 2019-06-21 2021-10-12 International Business Machines Corporation Decision based resource allocation in response systems
US11669435B2 (en) * 2019-06-26 2023-06-06 Microsoft Technology Licensing, Llc Chat bot diagnostic visualization
US11227592B1 (en) * 2019-06-27 2022-01-18 Amazon Technologies, Inc. Contextual content for voice user interfaces
US20210065019A1 (en) * 2019-08-28 2021-03-04 International Business Machines Corporation Using a dialog system for learning and inferring judgment reasoning knowledge
KR20210028380A (ko) 2019-09-04 2021-03-12 삼성전자주식회사 음성 인식 기능을 이용한 동작을 수행하는 전자 장치 및 이를 이용한 동작과 관련된 알림을 제공하는 방법
CN114586323B (zh) * 2019-10-28 2024-05-17 利维帕尔森有限公司 到不同终结点的动态通信路由
CN112750430A (zh) * 2019-10-29 2021-05-04 微软技术许可有限责任公司 在自动聊天中提供响应
US11227583B2 (en) 2019-11-05 2022-01-18 International Business Machines Corporation Artificial intelligence voice response system having variable modes for interaction with user
ES2847588A1 (es) * 2020-02-03 2021-08-03 Univ Vigo Sistema para mejorar la experiencia de usuario sin capacidades de abstracción en la consulta de información
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
JP7248615B2 (ja) * 2020-03-19 2023-03-29 ヤフー株式会社 出力装置、出力方法及び出力プログラム
US11735206B2 (en) * 2020-03-27 2023-08-22 Harman International Industries, Incorporated Emotionally responsive virtual personal assistant
US10798031B1 (en) 2020-04-13 2020-10-06 Moveworks, Inc. Generic disambiguation
US11580977B2 (en) 2020-09-29 2023-02-14 Salesforce, Inc. Configurable conversation engine for executing customizable chatbots
US11972636B2 (en) * 2020-09-30 2024-04-30 Ringcentral, Inc. System and method of determining an emotional state of a user
JP2022059868A (ja) * 2020-10-02 2022-04-14 シャープ株式会社 画像処理システム
US11675820B2 (en) 2020-10-27 2023-06-13 International Business Machines Corporation Building and modifying conversational user journeys
CN112307188B (zh) * 2020-12-30 2021-06-11 北京百度网讯科技有限公司 对话生成方法、系统、电子设备和可读存储介质
WO2022240918A1 (en) * 2021-05-11 2022-11-17 AskWisy, Inc. Intelligent training and education bot
US11881216B2 (en) 2021-06-08 2024-01-23 Bank Of America Corporation System and method for conversation agent selection based on processing contextual data from speech
US20230298580A1 (en) * 2022-03-18 2023-09-21 Google Llc Emotionally Intelligent Responses to Information Seeking Questions
CN114363280B (zh) * 2022-03-18 2022-06-17 深圳市欧乐智能实业有限公司 基于多段语音汇总式传输的手机聊天辅助系统
US11977779B2 (en) 2022-05-11 2024-05-07 Bank Of America Corporation Smart queue for distributing user requests to automated response generating systems
US11889153B2 (en) 2022-05-11 2024-01-30 Bank Of America Corporation System and method for integration of automatic response generating systems with non-API applications
WO2024025178A1 (en) * 2022-07-25 2024-02-01 Samsung Electronics Co., Ltd. A system to provide natural utterance by a voice assistant and method thereof

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1735027A (zh) * 2004-08-13 2006-02-15 上海赢思软件技术有限公司 一种聊天机器人系统
CN103390047A (zh) * 2013-07-18 2013-11-13 天格科技(杭州)有限公司 聊天机器人知识库及其构建方法
CN105068661A (zh) * 2015-09-07 2015-11-18 百度在线网络技术(北京)有限公司 基于人工智能的人机交互方法和系统
CN105183848A (zh) * 2015-09-07 2015-12-23 百度在线网络技术(北京)有限公司 基于人工智能的人机聊天方法和装置
CN105426436A (zh) * 2015-11-05 2016-03-23 百度在线网络技术(北京)有限公司 基于人工智能机器人的信息提供方法和装置
CN105868188A (zh) * 2016-03-25 2016-08-17 海信集团有限公司 人机交互方法及系统
CN105930374A (zh) * 2016-04-12 2016-09-07 华南师范大学 基于最近反馈的情感机器人对话方法、系统以及机器人
CN105938484A (zh) * 2016-04-12 2016-09-14 华南师范大学 基于用户反馈知识库的机器人交互方法和系统
CN105960674A (zh) * 2014-02-18 2016-09-21 夏普株式会社 信息处理装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6757362B1 (en) 2000-03-06 2004-06-29 Avaya Technology Corp. Personal virtual assistant
US7346492B2 (en) * 2001-01-24 2008-03-18 Shaw Stroz Llc System and method for computerized psychological content analysis of computer and media generated communications to produce communications management support, indications, and warnings of dangerous behavior, assessment of media images, and personnel selection support
US7058566B2 (en) * 2001-01-24 2006-06-06 Consulting & Clinical Psychology, Ltd. System and method for computer analysis of computer generated communications to produce indications and warning of dangerous behavior
US20080096533A1 (en) 2006-10-24 2008-04-24 Kallideas Spa Virtual Assistant With Real-Time Emotions
US8000969B2 (en) 2006-12-19 2011-08-16 Nuance Communications, Inc. Inferring switching conditions for switching between modalities in a speech application environment extended for interactive text exchanges
US20140279050A1 (en) 2008-05-21 2014-09-18 The Delfin Project, Inc. Dynamic chatbot
CN101604204B (zh) * 2009-07-09 2011-01-05 北京科技大学 智能情感机器人分布式认知系统
US20150206000A1 (en) * 2010-06-07 2015-07-23 Affectiva, Inc. Background analysis of mental state expressions
US9342501B2 (en) * 2013-10-30 2016-05-17 Lenovo (Singapore) Pte. Ltd. Preserving emotion of user input
US10120955B2 (en) * 2014-07-18 2018-11-06 Nuance Communications, Inc. State tracking over machine-learned relational trees in a dialog system
CN104615646A (zh) * 2014-12-25 2015-05-13 上海科阅信息技术有限公司 智能聊天机器人系统
US20170046496A1 (en) * 2015-08-10 2017-02-16 Social Health Innovations, Inc. Methods for tracking and responding to mental health changes in a user
US9723149B2 (en) * 2015-08-21 2017-08-01 Samsung Electronics Co., Ltd. Assistant redirection for customer service agent processing
CN105206284B (zh) * 2015-09-11 2019-06-18 清华大学 疏导青少年心理压力的虚拟聊天方法与系统
CN105138710B (zh) * 2015-10-12 2019-02-19 金耀星 一种聊天代理系统及方法
CN105893344A (zh) * 2016-03-28 2016-08-24 北京京东尚科信息技术有限公司 基于用户语义情感分析的应答方法和装置
US10419375B1 (en) * 2016-06-14 2019-09-17 Symantec Corporation Systems and methods for analyzing emotional responses to online interactions

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1735027A (zh) * 2004-08-13 2006-02-15 上海赢思软件技术有限公司 一种聊天机器人系统
CN103390047A (zh) * 2013-07-18 2013-11-13 天格科技(杭州)有限公司 聊天机器人知识库及其构建方法
CN105960674A (zh) * 2014-02-18 2016-09-21 夏普株式会社 信息处理装置
CN105068661A (zh) * 2015-09-07 2015-11-18 百度在线网络技术(北京)有限公司 基于人工智能的人机交互方法和系统
CN105183848A (zh) * 2015-09-07 2015-12-23 百度在线网络技术(北京)有限公司 基于人工智能的人机聊天方法和装置
CN105426436A (zh) * 2015-11-05 2016-03-23 百度在线网络技术(北京)有限公司 基于人工智能机器人的信息提供方法和装置
CN105868188A (zh) * 2016-03-25 2016-08-17 海信集团有限公司 人机交互方法及系统
CN105930374A (zh) * 2016-04-12 2016-09-07 华南师范大学 基于最近反馈的情感机器人对话方法、系统以及机器人
CN105938484A (zh) * 2016-04-12 2016-09-14 华南师范大学 基于用户反馈知识库的机器人交互方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Four Types Of Bots;Alex Bunardzic;《Chatbots Magazine》;20160317;第5-7页 *
How To Build A Stateful Bot;Alex Bunardzic;《Medium》;20160713;第4-6页 *

Also Published As

Publication number Publication date
WO2018063758A1 (en) 2018-04-05
DE102017122200A1 (de) 2018-03-29
US20200118567A1 (en) 2020-04-16
US20180090137A1 (en) 2018-03-29
US20190074010A1 (en) 2019-03-07
GB2555922A (en) 2018-05-16
GB201713939D0 (en) 2017-10-18
CN107870977A (zh) 2018-04-03
US9947319B1 (en) 2018-04-17
DE202017105815U1 (de) 2017-12-18
CN113779378B (zh) 2022-12-13
US10515635B2 (en) 2019-12-24
EP3510497A1 (en) 2019-07-17
US11322143B2 (en) 2022-05-03
US10157615B2 (en) 2018-12-18
CN113779378A (zh) 2021-12-10
US20180197542A1 (en) 2018-07-12

Similar Documents

Publication Publication Date Title
CN107870977B (zh) 基于用户状态形成聊天机器人输出的方法、系统和介质
JP7032504B2 (ja) 会議能力を有する自動アシスタント
US11887594B2 (en) Proactive incorporation of unsolicited content into human-to-computer dialogs
CN108205627B (zh) 交互式助理模块对访问的有条件提供
EP3510593B1 (en) Task initiation using long-tail voice commands
US11727220B2 (en) Transitioning between prior dialog contexts with automated assistants
CN109983430B (zh) 确定包括在电子通信中的图形元素
US20230394049A1 (en) Automatically augmenting message exchange threads based on tone of message
JP2022539674A (ja) 特定話者スピーチモデルを使用した話者認識

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
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant