CN107958001A - 一种智能问答的实现方法及装置 - Google Patents

一种智能问答的实现方法及装置 Download PDF

Info

Publication number
CN107958001A
CN107958001A CN201610900374.8A CN201610900374A CN107958001A CN 107958001 A CN107958001 A CN 107958001A CN 201610900374 A CN201610900374 A CN 201610900374A CN 107958001 A CN107958001 A CN 107958001A
Authority
CN
China
Prior art keywords
answer
condition
predetermined
information
user
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.)
Pending
Application number
CN201610900374.8A
Other languages
English (en)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610900374.8A priority Critical patent/CN107958001A/zh
Publication of CN107958001A publication Critical patent/CN107958001A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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/3325Reformulation based on results of preceding query
    • G06F16/3326Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

本文公开了一种智能问答的实现方法,包括:从输入信息中识别预定信息;通过一次或多次问答,获取预定信息相关的一个或多个条件;根据已获取的预定信息相关的条件,输出结果。上述方案能够提供简单直观的问答方式,从而提高用户体验。

Description

一种智能问答的实现方法及装置
技术领域
本发明涉及人工智能技术领域,尤其涉及一种智能问答的实现方法及装置。
背景技术
随着科技的发展,人工智能技术的应用为人们的日常生活带来了各种便利。比如,当前的智能问答可以实现用户与机器或***之间的交流。然而,当前的智能问答多是一问一答的形式。即,用户向机器或***提出问题,机器或***给出针对该问题的回复。例如,用户说“我买了件衣服,是否可以退?”,针对这个问题的回复是带有条件(比如,是否拆包;是否水洗)的;如果没有“拆包”,则回复是“没有拆包是可以直接申请退货的”,如果“拆包”了,且没有“水洗”,则回复是“拆包了但没有水洗,7天内也是可以直接申请退货的”,如果“拆包”了,而且“水洗”了,则回复是“衣服水洗过是不能退货的”;因此,针对用户的问题,机器或***给出的回复如下:“您好,如您购买的衣服1)没有拆包,请直接申请退货;2)如果拆包了,但没有水洗,7天内也是可以直接申请退货的;3)如果拆包了且水洗了,则不能退货”。
由此可见,在“一问一答”的模式下,针对用户的一个问题,会给出一个答案,并把所有条件下的不同处理方式都一次性回复给用户;上述模式对于用户而言,需要阅读并理解大量内容,然后才能结合实际情况找到所需的答案,繁琐且不直观,导致用户体验不佳。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本申请实施例提供一种智能问答的实现方法及装置,能够提供简单直观的问答方式,从而提高用户体验。
本申请实施例提供一种智能问答的实现方法,包括:从输入信息中识别预定信息;通过一次或多次问答,获取所述预定信息相关的一个或多个条件;根据已获取的所述预定信息相关的条件,输出结果。
其中,所述从输入信息中识别预定信息,包括:
计算所述输入信息与预定文件中的信息之间的语义相似度;
根据所述语义相似度的计算结果,确定所述输入信息中的预定信息。
其中,所述预定文件中包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定信息,值(value)用于存储与预定信息对应的对话标识。
其中,所述通过一次或多次问答,获取所述预定信息相关的一个或多个条件,包括:
在每次问答中,输出对于所述预定信息的一个未知条件的提问,从用户针对所述提问的答复中获取所述预定信息相关的条件。
其中,所述从用户针对所述提问的答复中获取所述预定信息相关的条件,包括:通过预先设置的Java语音文法格式(JSGF)文件、正则表达式或者条件筛选模型,从用户针对所述提问的答复中获取所述预定信息相关的条件。
本申请实施例还提供一种智能问答的实现方法,包括:
获取第一输入信息;对所获取的第一输入信息进行识别,确定预定问题,其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;基于确定的预定问题对用户进行一轮或多轮问答;根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
其中,所述根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案,包括:在每一轮问答中分别进行以下处理:
输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
其中,所述对所获取的第一输入信息进行识别,确定预定问题,包括:
计算所述第一输入信息与预定文件中的每个预定问题之间的语义相似度;确定与所述第一输入信息之间的语义相似度满足预定范围的预定问题。
其中,所述预定文件中包括一个或多个键值对,在每个键值对中,键用于存储预定问题,值用于存储与预定问题对应的对话标识。
其中,所述基于确定的预定问题对用户进行一轮或多轮问答,包括:根据所确定的预定问题对应的对话标识,从预先设置的对话文件中确定所述对话标识对应的对话任务,根据所述对话任务,进行一轮或多轮问答。
其中,所述智能问答的实现方法还包括:通过预先设置的JSGF文件、正则表达式或者条件筛选模型,获取用户答复的条件。
其中,所述智能问答的实现方法还包括:在每一轮问答中,在输出对于所确定的预定问题的一个未知条件的提问之后,若获取到用户输入的无效信息时,输出对于所确定的预定问题的所述未知条件的提问;若获取到用户的输入命中其他预定问题时,则开始进行所述新命中的预定问题的第一轮问答。
其中,所述智能问答的实现方法还包括:在每一轮问答中,在连续N次输出对于所确定的预定问题的同一个未知条件的提问之后,获取到用户输入的无效信息时,输出预定提示信息,其中,N为正整数。
本申请实施例还提供一种智能问答的实现方法,包括:在每次问答中分别进行以下处理:
获取第二输入信息;对所获取的第二输入信息进行识别;当识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
其中,所述对所获取的第二输入信息进行识别,包括以下至少之一:
计算所述第二输入信息与预定文件中的预定信息之间的语义相似度,识别与所述第二输入信息之间的语义相似度满足预定范围的预定信息;
通过预先设置的JSGF文件、正则表达式或者条件筛选模型,在所述第二输入信息中,进行条件识别。
本申请实施例还提供一种智能问答的实现方法,包括:
在接收到用户输入的预定信息后,输出所述预定信息相关的一个未知条件的提问;
在输出所述预定信息相关的一个未知条件的提问后,接收到用户答复的条件后,输出所述预定信息相关的已获取的条件所对应的答案,或者,输出所述预定信息相关的另一个未知条件的提问。
其中,所述智能问答的实现方法还包括:在输出所述预定信息相关的一个未知条件的提问后,接收到用户输入的无效信息后,输出所述预定信息相关的所述未知条件的提问。
其中,所述智能问答的实现方法还包括:在连续N次输出所述预定信息相关的所述未知条件的提问之后,接收到用户输入的无效信息后,输出预定提示信息,其中,N为正整数。
本申请实施例还提供一种智能问答的实现装置,包括:
识别模块,用于从输入信息中识别预定信息;
对话模块,用于通过一次或多次问答,获取所述预定信息相关的一个或多个条件;
结果输出模块,用于根据已获取的所述预定信息相关的条件,输出结果。
本申请实施例还提供一种智能问答的实现装置,包括:
第一获取模块,用于获取第一输入信息;
第一识别模块,用于对所述第一获取模块所获取的第一输入信息进行识别,确定预定问题;其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;
第一对话模块,用于在所述第一识别模块确定预定问题之后,基于确定的预定问题对用户进行一轮或多轮问答;并根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
其中,所述第一对话模块,用于通过以下方式根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案:
在每一轮问答中分别进行以下处理:输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
本申请实施例还提供一种智能问答的实现装置,包括:
第二获取模块,用于在每次问答中获取第二输入信息;
第二识别模块,用于对所述第二获取模块在每次问答中所获取的第二输入信息进行识别;
第二对话模块,用于当所述第二识别模块识别到第二获取模块所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当所述第二识别模块识别到第二获取模块所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
本申请实施例还提供一种智能问答的实现装置,包括:接收模块以及输出模块;所述输出模块,用于在所述接收模块接收到用户输入的预定信息后,输出所述预定信息相关的一个未知条件的提问;在输出所述预定信息相关的一个未知条件的提问后,在所述接收模块接收到用户答复的条件后,输出所述预定信息相关的已获取的条件所对应的答案,或者,输出所述预定信息相关的另一个未知条件的提问。
本申请实施例还提供一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
从输入信息中识别预定信息;通过一次或多次问答,获取所述预定信息相关的一个或多个条件;根据已获取的所述预定信息相关的条件,输出结果。
本申请实施例还提供一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
获取第一输入信息;对所获取的第一输入信息进行识别,确定预定问题,其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;基于确定的预定问题对用户进行一轮或多轮问答;根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
本申请实施例还提供一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:在每次问答中分别进行以下处理:获取第二输入信息;对所获取的第二输入信息进行识别;当识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
本申请实施例还提供一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
在接收到用户输入的预定信息后,输出所述预定信息相关的一个未知条件的提问;在输出所述预定信息相关的一个未知条件的提问后,接收到用户答复的条件后,输出所述预定信息相关的已获取的条件所对应的答案,或者,输出所述预定信息相关的另一个未知条件的提问。
本申请的至少一个实施例中,从输入信息中识别预定信息;通过一次或多次问答,获取所述预定信息相关的一个或多个条件;根据已获取的所述预定信息相关的条件,输出结果。本申请实施例采用一次或多次问答的方式来确定预定信息相关的结果。如此,本申请实施例能够提供简单直观的问答方式,让机器模拟自然人的对话方式,从而提高用户体验。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图说明
图1为本申请实施例一的智能问答的实现方法的流程图;
图2为应用实施例一的智能问答的实现方法的***架构示意图;
图3为本申请实施例一的实例示意图;
图4为本申请实施例二的智能问题的实现装置的示意图;
图5为本申请实施例四的智能问答的实现方法的流程图;
图6为本申请实施例五的智能问答的实现装置的示意图;
图7为本申请实施例七的智能问答的实现方法的流程图;
图8为本申请实施例八的智能问答的实现装置的示意图;
图9为本申请实施例十的智能问答的实现方法的流程图;
图10为本申请实施例十一的智能问答的实现装置的示意图。
具体实施方式
以下结合附图对本申请实施例进行详细说明,应当理解,以下所说明的实施例仅用于说明和解释本申请,并不用于限定本申请。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
需要说明的是,如果不冲突,本申请实施例以及实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
一些实施方式中,执行智能问答的实现方法的计算设备可包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存(memory)。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。内存可能包括模块1,模块2,……,模块N(N为大于2的整数)。
计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM),快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
实施例一、一种智能问答的实现方法,如图1所示,包括:
步骤101:从输入信息中识别预定信息;
步骤102:通过一次或多次问答,获取预定信息相关的一个或多个条件;
步骤103:根据已获取的预定信息相关的条件,输出结果。
本实施例中,输入信息可以包括以下一种或多种:文本信息、语音信息、视频信息。例如,用户可以在客户端进行信息输入。其中,客户端可以指客户端计算设备或者客户端计算设备上的应用程序(APP)。
本实施例中,预定信息可以包括不同条件组合下对应不同结果的信息,其中,每个条件组合中可以包括一个或多个条件。例如,不同条件组合下对应不同答案的问题。比如,以预定信息为“我是否可以退货?”或者“我要退货”为例,对应的条件可以包括:未拆包、已拆包、未水洗、已水洗;不同的条件组合中可以包括这些条件中的一个或多个;例如,在条件组合包括:未拆包时,对应的结果为:没有拆包是可以直接申请退货的;在条件组合包括:已拆包、未水洗时,对应的结果可以为:拆包了但没有水洗,7天内也是可以直接申请退货的;在条件组合包括:已拆包、已水洗时,对应的结果可以为:衣服水洗过是不能退货的。
本实施例中,预定信息可以通过机器学习模型确定,或者,可以预先设置。然而,本申请对此并不限定。例如,通过机器学习模型对相应领域中的用户交流语言进行学习,进而确定在不同相关条件对应不同结果的信息,并将确定的信息作为预定信息。
本实施例中,步骤103中的输出方式可以包括以下一种或多种:保存至数据库、发送给预定设备、显示在预定设备上。预定设备可以是客户端计算设备。
本实施例的方法可以应用于服务端。服务端可以指服务端计算设备(例如,服务器)或者服务端计算设备上运行的虚拟机。本申请对此并不限定。比如,服务端可以从客户端获取输入信息,并将确定的输出内容发送给客户端,由客户端显示或播放给用户。
本实施例中,对于用户而言,一次问答指进行一次用户输入以及得到相应的回复的过程;对于服务端而言,一次问答指获取一次用户输入以及根据此次用户输入提供一次回复的过程。
本实施例中,在识别预定信息之后,通过一次或多次问答,获取预定信息相关的一个或多个条件,并输出已获取的条件所对应的结果。如此,通过让机器模拟自然人的对话方式,提高用户体验。
本实施例中,当用户需要从服务端,例如智能聊天机器人,获取一个服务,例如想要机器人推荐一个餐厅,那么用户可能会通过语音询问机器人,说“我想去一个好吃的餐厅”,此时机器人可以模仿人的行为,通过多问几个问题,并根据用户对问题的回答的内容(及上述的条件)来给用户推荐满足用户需求的餐厅,例如机器人可以问“你想吃什么口味的?”,“吃完要不要看电影?”,“是和男朋友约会吗?”等,从而机器人可根据用户对这些问题的回答,基于回答的内容,可后台计算确定最佳的结果推送给用户。又例如,服务端可以是一个智能客服机器人,用户需要进行客服时,用户购买了一件衣服,用户对这件衣服不满意,想要退货,此时,其可以通过语音向智能客服机器人询问,说“我想退货”,那么智能客服机器人可以根据该用户的一些购物历史行为以及用户的个人信息等,可以给用户一个或多个问题,并基于用户对这些问题的回答来确定是否进行退货,例如,“你是想退货的服装是**月**日购买的**衣服吗?”,“你退货的衣服试穿过吗?”,“试穿过程有没有将名牌拆掉?”,以及“衣服有洗过吗?”,等问题,智能客服机器人可以基于用户对这些问题的回答,以确定用户是否满足退货要求,并可给出满足退货的处理方式,以及不满足退货的处理方式,等等。其中机器人给出的问题,可以是基于机器学习的方式来给出,也可以是根据后台预置的一些信息来给出,不管采用哪种方式,机器人均可以通过根据用户的一次询问,并通过给用户一个或多个问题的方式,来获取一些条件,以便根据这些条件来确定用户最终想要的答案。
应用本实施例方法的一种***架构如图2所示,包括:客户端以及服务端;其中,服务端包括:
识别模块,用于执行上述步骤101;
对话模块,用于执行上述步骤102;
结果输出模块,用于执行上述步骤103。
客户端可以将采集到的输入信息(比如文本信息、语音信息、视频信息)发送给服务端的识别模块,识别模块可以将语音信息或视频信息转换为文本信息。或者,客户端可以将采集到的语音信息或视频信息转换为文本信息之后,发送给识别模块。
服务端的结果输出模块可以将确定的输出内容发送给客户端,客户端可以将确定的输出内容以文字、语音或视频的方式提供给用户。或者,服务端的结果输出模块可以将确定的输出内容转换成音频文件或视频文件之后,发送给客户端,客户端直接播放音频文件或视频文件,以实现和用户的交流。
其中,客户端和服务端可以集成在一个设备上,例如智能机器人;或者,客户端和服务端可以是两个独立的设备,两者之间通过连接线、无线连接等方式实现信息传输,例如可以为移动终端和服务器。
在一些实现方式中,步骤101可以包括:
计算输入信息与预定文件中的信息之间的语义相似度;
根据语义相似度的计算结果,确定输入信息中的预定信息。
其中,预定文件中可以包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定信息,值(value)用于存储与预定信息对应的对话标识。
其中,一个对话标识能够对应预先设置的对话文件中的一个对话任务,每个对话任务中描述相应的预定信息的对话过程以及每次问答中的输出。
其中,输入信息和预定文件中的信息之间的语义相似度计算可以根据相关技术中的文本相似度算法进行。本申请对于采用何种文本相似度算法并不限定,能够实现语义识别的文本相似度算法均可采用。
一些实现方式中,步骤101中可以采用其他释义(paraphrase)技术,进行预定信息的识别。
一些实现方式中,步骤102可以包括:
在每次问答中,输出对于预定信息的一个未知条件的提问,从用户针对提问的答复中获取预定信息相关的条件。
其中,从用户针对提问的答复中获取预定信息相关的条件,可以包括:通过预先设置的Java语音文法格式(JSGF)文件、正则表达式或者条件筛选模型,从用户针对提问的答复中获取预定信息相关的条件。然而,本申请对此并不限定。于其他实现方式中,还可以采用其他文本识别方式,从用户输入的答复内容中获取条件。
其中,JSGF文件中设置一条或多条JSGF上下文无关文法格式语法,每条语法类似于一个条件识别规则。当用户的答复内容命中JSGF文件中的语法时,则可以识别出用户的答复内容为条件。
正则表达式是对字符串操作的一种逻辑公式,采用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,从而根据“规则字符串”来检索符合规则的文本。例如,可以通过判断给定的字符串(如,用户的答复内容)是否匹配正则表达式,来确定用户的答复内容是否为针对未知条件提问的回答;还可以从给定的字符串中获取想要的特定部分。
条件筛选模型例如可以基于序列标注模型进行构建,其中,序列标注模型即为给定文本序列串,为其每个单元标注标签,如词性标注(即为每个词打上词性标签)。
其中,预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件在预先设置时,是基于相同的基础数据进行设置的,从而确保预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件之间的一致性和关联性。其中,基础数据例如为通过机器学习模型对用户语言进行学习后得到的数据。
下面参照图3,通过一个实例对本申请的方法进行说明。本实例中,以智能客服机器人与用户进行交流的场景为例进行说明。其中,智能客服机器人包括客户端和服务端,客户端可以提供用户与智能客服机器人的交互界面,用户可以在交互界面上进行信息输入,智能客服机器人可以提供信息输出。客户端接收到用户输入的信息后可以传输给服务端,服务端根据接收的信息进行处理后,向客户端返回应答信息,客户端再将应答信息输出给用户。
下面以预定信息为“我要退货”为例,说明用户与智能客服机器人的交流过程。关于“我要退货”对应的结果如前所述。
如图3所示,用户在交互界面输入“我要退货”后,客户端将输入信息传输给服务端,服务端识别到输入信息为预定信息后,确定预定信息相关的一个未知条件的提问,例如,“是否已经拆包?”;服务端将确定的提问信息传输给客户端,由客户端在交互界面显示这个提问。
用户在获知交互界面的显示内容后,若继续输入针对提问的答复,例如,“已拆包”或者“是”;客户端将用户对提问的答复传输给服务端;服务端识别用户此次的答复是针对之前提问的回答后,获取答复内容中的条件,例如“已拆包”,判断根据已获知的条件(此时,只有“已拆包”的条件)是否能够确定对应的结果;此时,服务端还无法得到结果,因此,继续提出预定信息相关的另一个未知条件的提问,例如“是否已经水洗?”;服务端将确定的提问信息传输给客户端,由客户端在交互界面显示这个提问。
用户在获知交互界面的显示内容后,若继续输入针对提问的答复,例如,“未水洗”或者“否”;客户端将用户对提问的答复传输给服务端;服务端识别用户此次的答复是针对之前提问的回答后,获取答复内容中的条件,例如,“未水洗”,判断根据已获知的条件(此时,包括两个条件“已拆包”和“未水洗”)是否能够确定对应的结果;此时,服务端可以确定以下结果:“拆包了但没有水洗,7天内也是可以直接申请退货的”;服务端将确定的结果传输给客户端,由客户端在交互界面显示这个结果。
本实例中,上述所提到的用户的输入,以及服务端向用户提出的提问,均可以是通过语音方式来进行。随着语音技术的进步,通过语音来进行交互变得更加便利,而通过本申请实施例,则可以将用户与服务端之间,通过简单的语音对答的方式,就可以给出满足用户需求的答案,提高用户的体验。
对于上述提问的其他回复的处理过程类似,故于此不再一一赘述。根据上述过程可知,用户和智能客服机器人通过多次问答,获知了所需了解的信息。
图3所示仅为举例,本申请对于用户和智能客服机器人之前的问答次数并不限定。
实施例二、一种智能问答的实现装置,如图4所示,包括:
识别模块,用于从输入信息中识别预定信息;
对话模块,用于通过一次或多次问答,获取预定信息相关的一个或多个条件;
结果输出模块,用于根据已获取的预定信息相关的条件,输出结果。
本实施例中,识别模块是上述装置中负责识别预定信息的部分,可以是软件、硬件或两者的结合。
本实施例中,对话模块是上述装置中负责确定对话内容的部分,可以是软件、硬件或两者的结合。
本实施例中,结果输出模块是上述装置中负责进行结果输出的部分,可以是软件、硬件或两者的结合。
一些实现方式中,识别模块可以用于通过以下方式从输入信息中识别预定信息:
计算输入信息与预定文件中的信息之间的语义相似度;
根据语义相似度的计算结果,确定输入信息中的预定信息。
其中,预定文件中包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定信息,值(value)用于存储与预定信息对应的对话标识。
一些实现方式中,对话模块用于通过以下方式通过一次或多次问答,获取预定信息相关的一个或多个条件:
在每次问答中,输出对于预定信息的一个未知条件的提问,从用户针对提问的答复中获取预定信息相关的条件。
在一些实现方式中,对话模块可以用于通过以下方式从用户针对提问的答复中获取预定信息相关的条件:
通过预先设置的JSGF文件、正则表达式或者条件筛选模型,从用户针对提问的答复中获取预定信息相关的条件。
关于本实施例的装置中各个模块所执行的操作的其它细节可以参见实施例一。
实施例三、一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
从输入信息中识别预定信息;通过一次或多次问答,获取预定信息相关的一个或多个条件;根据已获取的预定信息相关的条件,输出结果。
一些实现方式中,从输入信息中识别预定信息,包括:
计算输入信息与预定文件中的信息之间的语义相似度;
根据语义相似度的计算结果,确定输入信息中的预定信息。
其中,预定文件中包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定信息,值(value)用于存储与预定信息对应的对话标识。
一些实现方式中,通过一次或多次问答,获取预定信息相关的一个或多个条件,包括:
在每次问答中,输出对于预定信息的一个未知条件的提问,从用户针对提问的答复中获取预定信息相关的条件。
在一些实现方式中,从用户针对提问的答复中获取预定信息相关的条件,包括:
通过预先设置的JSGF文件、正则表达式或者条件筛选模型,从用户针对提问的答复中获取预定信息相关的条件。
本实施例中,用于进行智能问答的程序在被处理器读取执行时,所执行的操作对应于实施例一中的步骤101至步骤103;该程序所执行的操作的其它细节可参见实施例一。
实施例四、一种智能问答的实现方法,如图5所示,包括:
步骤501:获取第一输入信息;
步骤502:对所获取的第一输入信息进行识别,确定预定问题;
步骤503:基于确定的预定问题对用户进行一轮或多轮问答;
步骤504:根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
本实施例是对实施例一中预定信息为预定问题的具体说明。
本实施例中,预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件。比如,针对一个问题“我买了件衣服,是否可以退?”,对应的条件可以包括:未拆包、已拆包、未水洗、已水洗;不同的条件组合中可以包括这些条件中的一个或多个;例如,在条件组合包括:未拆包时,对应的答案为:没有拆包是可以直接申请退货的;在条件组合包括:已拆包、未水洗时,对应的答案可以为:拆包了但没有水洗,7天内也是可以直接申请退货的;在条件组合包括:已拆包、已水洗时,对应的答案可以为:衣服水洗过是不能退货的。
本实施例中,第一输入信息可以包括以下一种或多种:文本信息、语音信息、视频信息。
本实施例中,步骤504中的输出方式可以包括以下一种或多种:保存至数据库、发送给预定设备、显示在预定设备上。
本实施例的方法可以应用于服务端。服务端可以指服务端计算设备(例如,服务器)或者服务端计算设备上运行的虚拟机。本申请对此并不限定。比如,服务端可以从客户端获取第一输入信息,并将确定的输出内容发送给客户端,由客户端显示或播放给用户。其中,客户端可以指客户端计算设备或者客户端计算设备上的应用程序(APP)。
本实施例中,在根据第一输入信息确定预定问题后,进行针对所确定的预定问题的第一轮问答。通过一轮或多轮问答,输出预定问题的已获取的条件的组合对应的答案。如此,通过让机器模拟自然人的对话方式,提高用户体验。
应用本实施例方法的一种***架构如图2所示,包括:客户端以及服务端;其中,服务端包括:
第一获取模块,用于执行上述步骤501;
第一识别模块,用于执行上述步骤502;
第一对话模块,用于执行上述步骤503和步骤504。
客户端可以将采集到的第一输入信息(比如文本信息、语音信息、视频信息)发送给服务端的第一获取模块,第一获取模块可以将语音信息或视频信息转换为文本信息。或者,客户端可以将采集到的语音信息或视频信息转换为文本信息之后,发送给第一获取模块。
服务端的第一对话模块可以将确定的输出内容发送给客户端,客户端可以将确定的输出内容以文字、语音或视频的方式提供给用户。或者,服务端的第一对话模块可以将确定的输出内容转换成音频文件或视频文件之后,发送给客户端,客户端直接播放音频文件或视频文件,以实现和用户的交流。
其中,客户端和服务端可以集成在一个设备上,例如智能机器人;或者,客户端和服务端可以是两个独立的设备,两者之间通过连接线、无线连接等方式实现信息传输,例如可以为移动终端和服务器。
一些实现方式中,步骤540可以包括:
在每一轮问答中分别进行以下处理:输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
一些实现方式中,步骤502中,对所获取的第一输入信息进行识别,确定预定问题,可以包括:
计算第一输入信息与预定文件中的每个预定问题之间的语义相似度;确定与第一输入信息之间的语义相似度满足预定范围的预定问题。
其中,预定文件需要预先设置。预定文件中可以包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定问题,值(value)用于存储与预定问题对应的对话标识。
其中,一个对话标识能够对应预先设置的对话文件中的一个对话任务,每个对话任务中描述相应的预定问题的对话过程以及每一轮问答中的输出。
其中,第一输入信息和预定文件中的预定问题之间的语义相似度计算可以根据相关技术中的文本相似度算法进行。本申请对于采用何种文本相似度算法并不限定,能够实现语义识别的文本相似度算法均可采用。
其中,预定范围可以为大于或等于阈值,阈值可以根据实际情况进行设置。
一些实现方式中,步骤502中,对所获取的第一输入信息进行识别,确定预定问题,还可以包括:
当确定出与所获取的第一输入信息之间的语义相似度满足预定范围的预定问题为多个时,从所确定出的多个预定问题中,选择与所获取的第一输入信息最匹配的预定问题。
其中,与所获取的第一输入信息最匹配的预定问题是与所获取的第一输入信息之间的语义最相似的预定问题。
一些实现方式中,步骤502中可以采用其他释义(paraphrase)技术,进行预定问题的识别。
一些实现方式中,步骤503中,基于确定的预定问题对用户进行一轮或多轮问答,包括:根据所确定的预定问题对应的对话标识,从预先设置的对话文件中,确定对话标识对应的对话任务,根据对话任务,进行一轮或多轮问答。
一些实现方式中,步骤504中,获取用户答复的条件,包括:通过预先设置的JSGF(Java Speech Grammar Format,Java语音文法格式)文件、正则表达式或者条件筛选模型,获取用户答复的条件。然而,本申请对此并不限定。于其他实现方式中,还可以采用其他文本识别方式,获取用户答复的条件。
其中,JSGF文件中设置一条或多条JSGF上下文无关文法格式语法,每条语法类似于一个条件识别规则。当用户的答复内容命中JSGF文件中的语法时,则可以识别出用户的答复内容为条件。
正则表达式是对字符串操作的一种逻辑公式,采用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,从而根据“规则字符串”来检索符合规则的文本。例如,可以通过判断给定的字符串(如,用户的答复内容)是否匹配正则表达式,来确定用户的答复内容是否为针对未知条件提问的回答;还可以从给定的字符串中获取想要的特定部分。
条件筛选模型例如可以基于序列标注模型进行构建,其中,序列标注模型即为给定文本序列串,为其每个单元标注标签,如词性标注(即为每个词打上词性标签)。
其中,预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件在预先设置时,是基于相同的基础数据进行设置的,从而确保预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件之间的一致性和关联性。
一些实现方式中,本实施例的智能问答的实现方法还包括:在每一轮问答中,在输出对于所确定的预定问题的一个未知条件的提问之后,若获取到用户输入的无效信息时,输出对于所确定的预定问题的这个未知条件的提问;若获取到用户的输入命中其他预定问题时,则开始进行所述新命中的预定问题的第一轮问答。
其中,无效信息可以指除了预定文件中的预定问题和JSGF文件(或者正则表达式,或者条件筛选模型)能够识别的条件以外的信息。
一些实现方式中,本实施例的智能问答的实现方法还包括:在每一轮问答中,在连续N次输出对于所确定的预定问题的同一个未知条件的提问之后,获取到用户输入的无效信息时,输出预定提示信息,其中,N为正整数,例如,N为2或3。
其中,预定提示信息用于提示用户重新输入针对提问的答复,或者,提示用户重新提出问题。
仍以实施例一的实例中的智能客服机器人为例。下面通过一个实例说明本申请的方法。
本实例中,以预定问题为“我要提醒发货”为例说明针对这个问题的问答过程。针对这个问题,在购买途径为普通专场的条件下,对应的答案为:普通专场下单后会在24小时为您发货,建议耐心等候;在购买途径为全球购的条件下,对应的答案为:全球购商品下单后两天内为您发货,建议耐心等候。
下面先说明预先设置的预定文件、JSGF文件以及对话文件。
本实例中,预先设置的预定文件(下面可以记为QA-pairs文件)如表1所示。
表1
Id key value
1 我要提醒发货 {"domain":"QA","intent":"qa-001"}
2 帮我提醒下发货 {"domain":"QA","intent":"qa-001"}
3 我要退货 {"domain":"QA","intent":"qa-002"}
4 买了个东西,想把它给退了 {"domain":"QA","intent":"qa-002"}
QA-pairs文件为键值(key-value)对,key为预定问题,value为对应预定问题的结构化数据,value可以为json string格式,然而,本申请对此并不限定。Id为键值对的标号。
其中,json string格式指JavaScript对象表示法(JavaScript ObjectNotation)的字符串格式。
例如,当用户的输入信息为“要提醒发货”时,根据语义相似度计算过程,可以确定用户的输入信息和表1中的Id1“我要提醒发货”最匹配,则可以得到用户的输入信息对应的value为:
json string{"domain":"QA","intent":"qa-001"};
其中,"domain":"QA"表示问答场景,"intent":"qa-001"表示Id1的预定问题对应的对话标识为qa-001。
比如,表1中Id=1和Id=2都是说提醒发货,它们对应的value的意图(intent)都是qa-001;Id=3和Id=4都是说退货,它们对应的value的intent都是qa-002。可以理解为,提醒发货对应的对话标识为qa-001,退货对应的对话标识为qa-002。qa-001和qa-002分别可以对应到对话文件中不同的对话任务(task)。
本实例中,预先设置的JSGF文件可以定义一条或多条语法。例如:
<purchase_way>=([我买的][是](全球购|普通专场){purchaseWay}商品){Domain.QA};
<order_status>=([我的]订单状态是(等待付款|交易关闭|售后中|售后完成|交易完成|已发货|待仲裁){orderStatus}){Domain.QA};
比如,当用户回答说“我买的是全球购商品”时,JSGF语法引擎会命中<parchase_way>这一条语法,命中后输出的结构化内容如下所示:
{"domain":"QA","slots":{"购买途径":"全球购"}};
其中,"domain":"QA"表示问答场景,"slots":{"购买途径":"全球购"}表示一个条件:购买途径为全球购。
本实例中,预设的对话文件描述多个对话任务指示的对话流(task flow)。每个对话任务可以体现相应的预定问题的条件组合和答案之间的对应关系。其中,预先设置的对话文件可以包括一个或多个对话任务。每个对话任务中可以描述输入满足不同条件时对应的输出。
结合本实例中预先设置的预定文件、JSGF文件以及对话文件,举例说明问答过程。
用户在客户端的交互界面上输入信息为“我要提醒发货”,客户端将输入信息传输给服务端后,服务端可以根据预定文件(表1),通过释义技术对输入信息进行识别,例如,可以得到结果为{"domain":"QA","intent":"qa-001"}。根据识别结果中的对话标识,从对话文件中查找对应的对话任务(如qa-001的对话任务),并从对话任务中确定对应的执行步骤。例如,服务端可以确定输出“你是普通专场下单还是全球购的商品?”,由客户端将服务端确定的输出内容显示在交互界面上。
在一种情况下,针对客户端的交互界面显示的以下内容:“你是普通专场下单还是全球购的商品?”,用户的输入信息可以为“我买的是全球购商品”,客户端将用户的输入信息传输给服务端后,服务端通过JSGF文件对输入信息进行理解,可以得到结果为{"domain":"QA","slots":{"购买途径":"全球购"}},之后,服务端根据前一次的对话确定仍在执行qa-001的对话任务,并确定输出“全球购商品下单后两天内为您发货,建议耐心等候”。由客户端将服务端确定的输出内容显示在交互界面上。
在另一种情况下,针对客户端的交互界面显示的以下内容:“你是普通专场下单还是全球购的商品?”,用户随便输入“哈哈哈哈”,客户端将用户的输入信息传输给服务端后,服务端通过JSGF文件无法理解此时的输入信息,服务端根据前一次问答确定仍在执行qa-001的对话任务,并确定输出“你是普通专场下单还是全球购的商品?”,由客户端将服务端确定的输出内容显示在交互界面上;其中,如果用户继续随便说,则会导致在无法理解信息的停留次数大于或等于3,此时,服务端可以确定输出“真的很抱歉,重头再来吧。”
在另一种情况下,针对客户端的交互界面显示的以下内容:“你是普通专场下单还是全球购的商品?”,用户可以输入“我要退货”,客户端将用户的输入信息传输给服务端后,服务端根据预定文件对输入信息进行识别,可以得到结果为{"domain":"QA","intent":"qa-002"},则会进入到qa-002的对话任务(task)中,从而打断qa-001的对话任务。
上述对话过程仅为举例。于实际应用中,可以根据实际情况设置对话任务和对话文件。
本实施例通过对话管理方式,让机器模拟使用自然人的对话方式,从而提高用户体验。
实施例五、一种智能问答的实现装置,如图6所示,包括:
第一获取模块,用于获取第一输入信息;
第一识别模块,用于对第一获取模块所获取的第一输入信息进行识别,确定预定问题;
第一对话模块,用于在第一识别模块确定预定问题之后,基于确定的预定问题对用户进行一轮或多轮问答;并根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
其中,在每一轮问答中分别进行以下处理:
输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
其中,预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件。
本实施例中,第一获取模块是上述装置中负责信息获取的部分,可以是软件、硬件或两者的结合。
本实施例中,第一识别模块是上述装置中负责识别预定问题的部分,可以是软件、硬件或两者的结合。
本实施例中,第一对话模块是上述装置中负责确定对话内容的部分,可以是软件、硬件或两者的结合。
一些实现方式中,第一识别模块用于通过以下方式对所获取的第一输入信息进行识别,确定预定问题:
计算第一输入信息与预定文件中的每个预定问题之间的语义相似度;确定与第一输入信息之间的语义相似度满足预定范围的预定问题。
一些实现方式中,第一识别模块还用于通过以下方式对所获取的第一输入信息进行识别,确定预定问题:
当确定出与第一输入信息之间的语义相似度满足预定范围的预定问题为多个时,从所确定出的多个预定问题中,选择与第一输入信息最匹配的预定问题。
一些实现方式中,预定文件中包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定问题,值(value)用于存储与预定问题对应的对话标识。
一些实现方式中,第一对话模块,用于通过以下方式基于确定的预定问题对用户进行一轮或多轮问答:根据所确定的预定问题对应的对话标识,从预先设置的对话文件中确定对话标识对应的对话任务,根据对话任务,进行一轮或多轮问答。
一些实现方式中,第一对话模块,用于通过以下方式获取用户答复的条件,包括:通过预先设置的JSGF文件、正则表达式或者条件筛选模型,获取用户答复的条件。
一些实现方式中,第一对话模块,还用于在每一轮问答中,在输出对于所确定的预定问题的一个未知条件的提问之后,获取到用户输入的无效信息时,输出对于所确定的预定问题的所述未知条件的提问。
一些实现方式中,第一对话模块,还用于在每一轮问答中,在连续N次输出对于所确定的预定问题的同一个未知条件的提问之后,获取到用户输入的无效信息时,输出预定提示信息,其中,N为正整数。
关于本实施例的装置中各个模块所执行的操作的其它细节可以参见实施例四。
实施例六、一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
获取第一输入信息;对所获取的第一输入信息进行识别,确定预定问题;基于确定的预定问题对用户进行一轮或多轮问答;根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
其中,在每一轮问答中分别进行以下处理:
输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
其中,预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件。
一些实现方式中,对所获取的第一输入信息进行识别,确定预定问题,包括:
计算第一输入信息与预定文件中的每个预定问题之间的语义相似度;确定与第一输入信息之间的语义相似度满足预定范围的预定问题。
一些实现方式中,对所获取的第一输入信息进行识别,确定预定问题,还包括:
当确定出与第一输入信息之间的语义相似度满足预定范围的预定问题为多个时,从所确定出的多个预定问题中,选择与第一输入信息最匹配的预定问题。
一些实现方式中,预定文件中包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定问题,值(value)用于存储与预定问题对应的对话标识。
一些实现方式中,基于确定的预定问题对用户进行一轮或多轮问答,包括:根据所确定的预定问题对应的对话标识,从预先设置的对话文件中确定对话标识对应的对话任务,根据对话任务,进行一轮或多轮问答。
一些实现方式中,获取用户答复的条件,包括:通过预先设置的JSGF文件、正则表达式或者条件筛选模型,获取用户答复的条件。
一些实现方式中,在每一轮问答中,在输出对于所确定的预定问题的一个未知条件的提问之后,获取到用户输入的无效信息时,输出对于所确定的预定问题的这个未知条件的提问。
一些实现方式中,在每一轮问答中,在连续N次输出对于所确定的预定问题的同一个未知条件的提问之后,获取到用户输入的无效信息时,输出预定提示信息,其中,N为正整数。
本实施例中,用于进行智能问答的程序在被处理器读取执行时,所执行的操作对应于实施例四中的步骤501至步骤504;该程序所执行的操作的其它细节可参见实施例四。
实施例七、一种智能问答的实现方法,如图7所示,包括:在每次问答中分别进行以下处理:
步骤701:获取第二输入信息;
步骤702:对所获取的第二输入信息进行识别;
步骤703:当识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
本实施例中,关于预定信息的描述可以参照实施例一。预定信息可以包括预定问题。预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件。比如,针对一个问题“我买了件衣服,是否可以退?”,对应的条件可以包括:未拆包、已拆包、未水洗、已水洗;不同的条件组合中可以包括这些条件中的一个或多个;例如,在条件组合包括:未拆包时,对应的答案为:没有拆包是可以直接申请退货的;在条件组合包括:已拆包、未水洗时,对应的答案可以为:拆包了但没有水洗,7天内也是可以直接申请退货的;在条件组合包括:已拆包、已水洗时,对应的答案可以为:衣服水洗过是不能退货的。
本实施例中,第二输入信息可以包括以下一种或多种:文本信息、语音信息、视频信息。
本实施例中,步骤703中的输出方式可以包括以下一种或多种:保存至数据库、发送给预定设备、显示在预定设备上。
本实施例的方法可以应用于服务端。服务端可以指服务端计算设备(例如,服务器)或者服务端计算设备上运行的虚拟机。本申请对此并不限定。比如,服务端可以从客户端获取第二输入信息,并将确定的输出内容发送给客户端,由客户端显示或播放给用户。其中,客户端可以指客户端计算设备或者客户端计算设备上的应用程序(APP)。
本实施例中,对于用户而言,一次问答指进行一次用户输入以及得到相应的回复的过程;对于服务端而言,一次问答指获取一次用户输入以及根据此次用户输入提供一次回复的过程。
本实施例中,在每次获取到第二输入信息后,对第二输入信息进行识别,根据识别结果,输出相应的内容。在针对预定问题的答复时,通过一次或多次问答,给用户提供预定问题的最终答案。如此,实现机器模拟自然人的对话方式,从而提高用户体验。
应用本实施例方法的一种***架构可以如图2所示,包括:客户端以及服务端;其中,服务端可以包括:
第二获取模块,用于执行上述步骤701;
第二识别模块,用于执行上述步骤702;
第二对话模块,用于执行上述步骤703。
客户端可以将采集到的第二输入信息(比如文本信息、语音信息、视频信息)发送给服务端的第二获取模块,第二获取模块可以将语音信息或视频信息转换为文本信息。或者,客户端可以将采集到的语音信息或视频信息转换为文本信息之后,发送给第二获取模块。
服务端的第二对话模块可以将确定的输出内容发送给客户端,客户端可以将确定的输出内容以文字、语音或视频的方式提供给用户。或者,服务端的第二对话模块可以将确定的输出内容转换成音频文件或视频文件之后,发送给客户端,客户端直接播放音频文件或视频文件,以实现和用户的交流。
其中,客户端和服务端可以集成在一个设备上,例如智能机器人;或者,客户端和服务端可以是两个独立的设备,两者之间通过连接线、无线连接等方式实现信息传输,例如可以为移动终端和服务器。
一些实现方式中,步骤702中,对所获取的第二输入信息进行识别,可以包括以下至少之一:
计算第二输入信息与预定文件中的预定信息之间的语义相似度,识别与第二输入信息之间的语义相似度满足预定范围的预定信息;
通过预先设置的JSGF文件、正则表达式或者条件筛选模型,在第二输入信息中,进行条件识别。
其中,预定文件需要预先设置。预定文件中可以包括一个或多个键值(key-value)对,在每个键值对中,键(key)用于存储预定信息,值(value)用于存储与预定信息对应的对话标识。
其中,一个对话标识能够对应预先设置的对话文件中的一个对话任务,每个对话任务中描述相应的预定问题的对话过程以及每一轮问答中的输出。
其中,第二输入信息和预定文件中的预定信息之间的语义相似度计算可以根据相关技术中的文本相似度算法进行。本申请对于采用何种文本相似度算法并不限定,能够实现语义识别的文本相似度算法均可采用。预定范围可以为大于或等于阈值,阈值可以根据实际情况进行设置。
其中,JSGF文件中设置一条或多条JSGF上下文无关文法格式语法,每条语法类似于一个条件识别规则。当第二输入信息命中JSGF文件中的语法时,则可以识别出第二输入信息为条件。
正则表达式是对字符串操作的一种逻辑公式,采用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,从而根据“规则字符串”来检索符合规则的文本。例如,可以通过判断给定的字符串(如,用户的答复内容)是否匹配正则表达式,来确定用户的答复内容是否为针对未知条件提问的回答;还可以从给定的字符串中获取想要的特定部分。
条件筛选模型例如可以基于序列标注模型进行构建,其中,序列标注模型即为给定文本序列串,为其每个单元标注标签,如词性标注(即为每个词打上词性标签)。
其中,预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件在预先设置时,是基于相同的基础数据进行设置的,从而确保预定文件、JSGF文件(或者正则表达式,或者条件筛选模型)以及对话文件之间的一致性和关联性。
一些实现方式中,步骤702中可以采用其他释义(paraphrase)技术,进行预定信息的识别。
一些实现方式中,步骤703中,识别到所获取的第二输入信息为所识别的预定信息的条件,包括:
当识别到本次问答所获取的第二输入信息为条件,且条件对应于前一次问答中输出的所识别的预定信息的一个未知条件的提问时,识别到本次问答所获取的第二输入信息为所识别的预定信息的条件。
其中,在识别第二输入信息是否为预定信息的条件时,需要结合之前问答中的输出内容进行确定。
一些实现方式中,本实施例的智能问答的实现方法还包括:当前一次问答中输出对于所识别的预定信息的一个未知条件的提问,且本次问答中,识别到所获取的第二输入信息为无效信息时,输出对于所识别的预定信息的所述未知条件的提问。
一些实现方式中,本实施例的智能问答的实现方法还包括:当至少连续N次问答中输出对于所识别的预定信息的相同的未知条件的提问,且本次问答中,识别到所获取的第二输入信息为无效信息时,输出预定提示信息,其中,N为正整数。N例如为2或3。
其中,无效信息可以指除了预定文件中的预定信息和JSGF文件(或者正则表达式,或者条件筛选模型)能够识别的条件以外的信息。
其中,预定提示信息用于提示用户重新输入针对提问的答复,或者,提示用户重新提出问题。
实施例八、一种智能问答的实现装置,如图8所示,包括:
第二获取模块,用于在每次问答中获取第二输入信息;
第二识别模块,用于对第二获取模块在每次问答中所获取的第二输入信息进行识别;
第二对话模块,用于当第二识别模块识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当第二识别模块识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
本实施例中,第二获取模块是上述装置中负责信息获取的部分,可以是软件、硬件或两者的结合。
本实施例中,第二识别模块是上述装置中负责信息识别的部分,可以是软件、硬件或两者的结合。
本实施例中,第二对话模块是上述装置中负责根据识别结果确定对话内容的部分,可以是软件、硬件或两者的结合。
一些实现方式中,第二识别模块用于通过以下至少之一方式对所获取的第二输入信息进行识别:
计算所获取的第二输入信息与预定文件中的每个预定信息之间的语义相似度,识别与所获取的第二输入信息之间的语义相似度满足预定范围的预定信息;
通过预先设置的JSGF文件、正则表达式或者条件筛选模型,在所获取的第二输入信息中,进行条件识别。
一些实现方式中,第二识别模块用于通过以下方式识别到所获取的第二输入信息为所识别的预定信息的条件:
当识别到本次问答所获取的第二输入信息为条件,且条件对应于前一次问答中输出的所识别的预定信息的一个未知条件的提问时,识别到本次问答所获取的第二输入信息为所识别的预定信息的条件。
一些实现方式中,第二对话模块,还用于当前一次问答中输出对于所识别的预定信息的一个未知条件的提问,且本次问答中,第二识别模块识别到所获取的第二输入信息为无效信息时,输出对于所识别的预定信息的所述未知条件的提问。
其中,无效信息可以指除了预定文件中的预定信息和JSGF文件(或者正则表达式,或者条件筛选模型)能够识别的条件以外的信息。
关于本实施例的装置中各个模块所执行的操作的其它细节可以参见实施例七。
实施例九、一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:在每次问答中分别进行以下处理:获取第二输入信息;对所获取的第二输入信息进行识别;
当识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;
当识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
一些实现方式中,对所获取的第二输入信息进行识别,包括以下至少之一:
计算第二输入信息与预定文件中的预定信息之间的语义相似度,识别与第二输入信息之间的语义相似度满足预定范围的预定信息;
通过预先设置的SGF文件、正则表达式或者条件筛选模型,在所述第二输入信息中,进行条件识别。
一些实现方式中,识别到所获取的第二输入信息为所识别的预定信息的条件,包括:
当识别到本次问答所获取的第二输入信息为条件,且所述条件对应于前一次问答中输出的所识别的预定信息的一个未知条件的提问时,识别到本次问答所获取的第二输入信息为所识别的预定信息的条件。
一些实现方式中,当前一次问答中输出对于所识别的预定信息的一个未知条件的提问,且本次问答中,识别到所获取的第二输入信息为无效信息时,输出对于所识别的预定信息的所述未知条件的提问。
本实施例中,用于进行智能问答的程序在被处理器读取执行时,所执行的操作对应于实施例七中的步骤701至步骤703;该程序所执行的操作的其它细节可参见实施例七。
实施例十、一种智能问答的实现方法,如图9所示,包括:
步骤901:在接收到用户输入的预定信息后,输出预定信息相关的一个未知条件的提问;
步骤902:在输出预定信息相关的一个未知条件的提问后,接收到用户答复的条件后,输出预定信息相关的已获取的条件所对应的答案,或者,输出预定信息相关的另一个未知条件的提问。
关于预定信息的描述可以参照实施例一。
本实施例中,输出方式可以包括以下一种或多种:文本显示、语音播放、视频播放。
本实施例的方法可以应用于客户端。客户端可以指客户端计算设备或者客户端计算设备上的应用程序(APP)。比如,客户端在接收到用户输入的信息之后,发送给服务端,并接收服务端识别用户输入信息之后确定的答复进行输出。其中,服务端可以指服务端计算设备(例如,服务器)或者服务端计算设备上运行的虚拟机。
应用本实施例方法的一种***架构如图2所示,包括:客户端以及服务端;其中,客户端包括:
接收模块,用于接收用户输入的信息;
输出模块,用于执行步骤901和902。
接收模块接收用户在交互界面输入的文本信息、语音信息或视频信息,服务端对用户输入的信息进行识别和处理后,提供针对用户输入信息的答复,输出模块将答复以文本方式、语音方式或视频方式输出。
其中,客户端和服务端可以集成在一个设备上,例如智能机器人;或者,客户端和服务端可以是两个独立的设备,两者之间通过连接线、无线连接等方式实现信息传输,例如可以为移动终端和服务器。
一些实现方式中,本实施例的智能问答的实现方法还包括:在输出预定信息的一个未知条件的提问后,接收到用户输入的无效信息后,输出预定信息的该未知条件的提问。
一些实现方式中,本实施例的智能问答的实现方法还包括:在连续N次输出预定信息的相同的未知条件的提问之后,接收到用户输入的无效信息后,输出预定提示信息,其中,N为正整数。
其中,无效信息可以指除了预定信息和条件以外的信息。
其中,预定提示信息可以指用于提示用户重新输入针对提问的答复的信息,或者,提示用户重新提出问题的信息。
参照实施例四中的实例,在该实例中,用户在人机交互界面输入“我要提醒发货”,则客户端会在人机交互界面显示“你是普通专场下单还是全球购的商品?”;之后,用户输入“我买的是全球购商品”,则客户端显示“全球购商品下单后两天内为您发货,建议耐心等候”,或者,用户输入“哈哈哈哈”,则客户端仍然显示“你是普通专场下单还是全球购的商品?”,在用户连续输入“哈哈哈”多次(例如3次)后,则客户端会显示“真的很抱歉,重头再来吧”。在用户输入“我要退货”之后,客户端例如会显示“是否拆包?”。即,用户输入另一个预定问题之后,客户端会显示针对新的预定问题的回复。
实施例十一、一种智能问答的实现装置,如图10所示,包括:接收模块以及输出模块;
输出模块,用于在接收模块接收到用户输入的预定信息后,输出预定信息的一个未知条件的提问;在输出预定信息的一个未知条件的提问后,在接收模块接收到用户答复的条件后,输出预定信息的已获取的条件的组合所对应的答案,或者,输出预定信息的另一个未知条件的提问。
本实施例中,接收模块是上述装置中负责信息接收的部分,可以是软件、硬件或两者的结合。
本实施例中,输出模块是上述装置中负责信息输出的部分,可以是软件、硬件或两者的结合。
一些实现方式中,输出模块还用于在输出预定信息的一个未知条件的提问后,接收模块接收到用户输入的无效信息后,输出预定信息的该未知条件的提问。
一些实现方式中,输出模块还用于在连续N次输出预定信息的相同的未知条件的提问之后,接收模块接收到用户输入的无效信息后,输出预定提示信息,其中,N为正整数。
其中,无效信息可以指除了预定信息和条件以外的信息。
其中,预定提示信息可以指用于提示用户重新输入针对提问的答复的信息,或者,提示用户重新提出问题的信息。
关于本实施例的装置中各个模块所执行的操作的其它细节可以参见实施例十。
实施例十二、一种智能问答的实现装置,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:在接收到用户输入的预定信息后,输出预定信息相关的一个未知条件的提问;在输出预定信息相关的一个未知条件的提问后,接收到用户答复的条件后,输出预定信息相关的已获取的条件所对应的答案,或者,输出预定信息相关的另一个未知条件的提问
一些实现方式中,在输出预定信息的一个未知条件的提问后,接收到用户输入的无效信息后,输出预定信息的该未知条件的提问。
一些实现方式中,在连续N次输出预定信息的相同的未知条件的提问之后,接收到用户输入的无效信息后,输出预定提示信息,其中,N为正整数。
其中,无效信息可以指除了预定信息和条件以外的信息。
其中,预定提示信息可以指用于提示用户重新输入针对提问的答复的信息,或者,提示用户重新提出问题的信息。
本实施例中,用于进行智能问答的程序在被处理器读取执行时,所执行的操作对应于实施例十中的步骤901至步骤902;该程序所执行的操作的其它细节可参见实施例十。
此外,本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现实施例一中的智能问答的实现方法。
本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现实施例四中的智能问答的实现方法。
本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现实施例七中的智能问答的实现方法。
本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现实施例九中的智能问答的实现方法。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本申请不限制于任何特定形式的硬件和软件的结合。
以上显示和描述了本申请的基本原理和主要特征和本申请的优点。本申请不受上述实施例的限制,上述实施例和说明书中描述的只是说明本申请的原理,在不脱离本申请精神和范围的前提下,本申请还会有各种变化和改进,这些变化和改进都落入要求保护的本申请范围内。

Claims (25)

1.一种智能问答的实现方法,包括:
从输入信息中识别预定信息;
通过一次或多次问答,获取所述预定信息相关的一个或多个条件;
根据已获取的所述预定信息相关的条件,输出结果。
2.根据权利要求1所述的智能问答的实现方法,其特征在于,所述从输入信息中识别预定信息,包括:
计算所述输入信息与预定文件中的信息之间的语义相似度;
根据所述语义相似度的计算结果,确定所述输入信息中的预定信息。
3.根据权利要求2所述的智能问答的实现方法,其特征在于,所述预定文件中包括一个或多个键值key-value对,在每个键值对中,键key用于存储预定信息,值value用于存储与预定信息对应的对话标识。
4.根据权利要求1所述的智能问答的实现方法,其特征在于,所述通过一次或多次问答,获取所述预定信息相关的一个或多个条件,包括:
在每次问答中,输出对于所述预定信息的一个未知条件的提问,从用户针对所述提问的答复中获取所述预定信息相关的条件。
5.根据权利要求4所述的智能问答的实现方法,其特征在于,所述从用户针对所述提问的答复中获取所述预定信息相关的条件,包括:
通过预先设置的Java语音文法格式JSGF文件、正则表达式或者条件筛选模型,从用户针对所述提问的答复中获取所述预定信息相关的条件。
6.一种智能问答的实现方法,包括:
获取第一输入信息;
对所获取的第一输入信息进行识别,确定预定问题,其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;
基于确定的预定问题对用户进行一轮或多轮问答;
根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
7.根据权利要求6所述的智能问答的实现方法,其特征在于,所述根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案,包括:在每一轮问答中分别进行以下处理:
输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
8.根据权利要求6所述的智能问答的实现方法,其特征在于,所述对所获取的第一输入信息进行识别,确定预定问题,包括:
计算所述第一输入信息与预定文件中的每个预定问题之间的语义相似度;确定与所述第一输入信息之间的语义相似度满足预定范围的预定问题。
9.根据权利要求8所述的智能问答的实现方法,其特征在于,所述预定文件中包括一个或多个键值key-value对,在每个键值对中,键key用于存储预定问题,值value用于存储与预定问题对应的对话标识。
10.根据权利要求9所述的智能问答的实现方法,其特征在于,所述基于确定的预定问题对用户进行一轮或多轮问答,包括:根据所确定的预定问题对应的对话标识,从预先设置的对话文件中确定所述对话标识对应的对话任务,根据所述对话任务,进行一轮或多轮问答。
11.根据权利要求6所述的智能问答的实现方法,其特征在于,所述智能问答的实现方法还包括:通过预先设置的Java语音文法格式JSGF文件、正则表达式或者条件筛选模型,获取用户答复的条件。
12.根据权利要求6所述的智能问答的实现方法,其特征在于,所述智能问答的实现方法还包括:在每一轮问答中,在输出对于所确定的预定问题的一个未知条件的提问之后,若获取到用户输入的无效信息时,输出对于所确定的预定问题的所述未知条件的提问;若获取到用户的输入命中其他预定问题时,则开始进行所述新命中的预定问题的第一轮问答。
13.根据权利要求12所述的智能问答的实现方法,其特征在于,所述智能问答的实现方法还包括:在每一轮问答中,在连续N次输出对于所确定的预定问题的同一个未知条件的提问之后,获取到用户输入的无效信息时,输出预定提示信息,其中,N为正整数。
14.一种智能问答的实现方法,包括:在每次问答中分别进行以下处理:
获取第二输入信息;
对所获取的第二输入信息进行识别;
当识别到所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;
当识别到所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
15.根据权利要求14所述的智能问答的实现方法,其特征在于,所述对所获取的第二输入信息进行识别,包括以下至少之一:
计算所述第二输入信息与预定文件中的预定信息之间的语义相似度,识别与所述第二输入信息之间的语义相似度满足预定范围的预定信息;
通过预先设置的Java语音文法格式JSGF文件、正则表达式或者条件筛选模型,在所述第二输入信息中,进行条件识别。
16.一种智能问答的实现方法,包括:
在接收到用户输入的预定信息后,输出所述预定信息相关的一个未知条件的提问;
在输出所述预定信息相关的一个未知条件的提问后,接收到用户答复的条件后,输出所述预定信息相关的已获取的条件所对应的答案,或者,输出所述预定信息相关的另一个未知条件的提问。
17.根据权利要求16所述的智能问答的实现方法,其特征在于,所述智能问答的实现方法还包括:在输出所述预定信息相关的一个未知条件的提问后,接收到用户输入的无效信息后,输出所述预定信息相关的所述未知条件的提问。
18.根据权利要求16所述的智能问答的实现方法,其特征在于,所述智能问答的实现方法还包括:在连续N次输出所述预定信息相关的所述未知条件的提问之后,接收到用户输入的无效信息后,输出预定提示信息,其中,N为正整数。
19.一种智能问答的实现装置,其特征在于,包括:
识别模块,用于从输入信息中识别预定信息;
对话模块,用于通过一次或多次问答,获取所述预定信息相关的一个或多个条件;
结果输出模块,用于根据已获取的所述预定信息相关的条件,输出结果。
20.一种智能问答的实现装置,其特征在于,包括:
第一获取模块,用于获取第一输入信息;
第一识别模块,用于对所述第一获取模块所获取的第一输入信息进行识别,确定预定问题;其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;
第一对话模块,用于在所述第一识别模块确定预定问题之后,基于确定的预定问题对用户进行一轮或多轮问答;并根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
21.根据权利要求20所述的智能问答的实现装置,其特征在于,所述第一对话模块,用于通过以下方式根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案:
在每一轮问答中分别进行以下处理:输出对于所确定的预定问题的一个未知条件的提问,获取用户答复的条件;根据预定的条件组合和答案之间的对应关系,判断已获取的条件的组合是否存在对应的答案;如果存在,则输出已获取的条件的组合所对应的答案;如果不存在,则进行下一轮问答。
22.一种智能问答的实现装置,其特征在于,包括:
第二获取模块,用于在每次问答中获取第二输入信息;
第二识别模块,用于对所述第二获取模块在每次问答中所获取的第二输入信息进行识别;
第二对话模块,用于当所述第二识别模块识别到第二获取模块所获取的第二输入信息为预定信息时,输出对于所识别的预定信息相关的一个未知条件的提问;当所述第二识别模块识别到第二获取模块所获取的第二输入信息为所识别的预定信息相关的条件时,判断已获取的条件是否存在对应的答案;如果存在,则输出已获取的条件所对应的答案;如果不存在,则输出所述预定信息相关的一个未知条件的提问。
23.一种智能问答的实现装置,其特征在于,包括:接收模块以及输出模块;
所述输出模块,用于在所述接收模块接收到用户输入的预定信息后,输出所述预定信息相关的一个未知条件的提问;在输出所述预定信息相关的一个未知条件的提问后,在所述接收模块接收到用户答复的条件后,输出所述预定信息相关的已获取的条件所对应的答案,或者,输出所述预定信息相关的另一个未知条件的提问。
24.一种智能问答的实现装置,其特征在于,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
从输入信息中识别预定信息;通过一次或多次问答,获取所述预定信息相关的一个或多个条件;根据已获取的所述预定信息相关的条件,输出结果。
25.一种智能问答的实现装置,其特征在于,包括:处理器和存储器;
其中,存储器用于存储用于进行智能问答的程序;该用于进行智能问答的程序在被处理器读取执行时,执行以下操作:
获取第一输入信息;对所获取的第一输入信息进行识别,确定预定问题,其中,所述预定问题是指不同条件组合下对应不同答案的问题,每个条件组合中包括一个或多个条件;基于确定的预定问题对用户进行一轮或多轮问答;根据一轮或多轮问答中获取的用户答复的条件,输出已获取的条件的组合对应的答案。
CN201610900374.8A 2016-10-14 2016-10-14 一种智能问答的实现方法及装置 Pending CN107958001A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610900374.8A CN107958001A (zh) 2016-10-14 2016-10-14 一种智能问答的实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610900374.8A CN107958001A (zh) 2016-10-14 2016-10-14 一种智能问答的实现方法及装置

Publications (1)

Publication Number Publication Date
CN107958001A true CN107958001A (zh) 2018-04-24

Family

ID=61953862

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610900374.8A Pending CN107958001A (zh) 2016-10-14 2016-10-14 一种智能问答的实现方法及装置

Country Status (1)

Country Link
CN (1) CN107958001A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108564833A (zh) * 2018-04-28 2018-09-21 北京比特智学科技有限公司 智能交互对话控制方法及装置
CN108804525A (zh) * 2018-04-27 2018-11-13 出门问问信息科技有限公司 一种智能回答方法及装置
CN109919763A (zh) * 2019-01-28 2019-06-21 深圳壹账通智能科技有限公司 基于智能合约展示问答式文件的方法、装置及计算机设备
CN110442686A (zh) * 2018-05-03 2019-11-12 阿里巴巴集团控股有限公司 信息确定、关联对构建与会话回复方法、***及设备
CN110990554A (zh) * 2019-12-20 2020-04-10 联想(北京)有限公司 内容处理方法、装置、电子设备和介质
CN112417123A (zh) * 2020-11-20 2021-02-26 平安普惠企业管理有限公司 基于人工智能的客户应答识别方法及其相关设备
WO2022141142A1 (zh) * 2020-12-30 2022-07-07 浙江核新同花顺网络信息股份有限公司 一种确定目标音视频的方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118554A (zh) * 2007-09-14 2008-02-06 中兴通讯股份有限公司 智能交互式问答***及其处理方法
CN101216831A (zh) * 2007-12-28 2008-07-09 腾讯科技(深圳)有限公司 一种知识问答方法及装置
CN102117467A (zh) * 2011-03-03 2011-07-06 南通大学 问答式网络导购方法
CN105450876A (zh) * 2014-06-11 2016-03-30 阿里巴巴集团控股有限公司 一种语音播报方法及相关***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101118554A (zh) * 2007-09-14 2008-02-06 中兴通讯股份有限公司 智能交互式问答***及其处理方法
CN101216831A (zh) * 2007-12-28 2008-07-09 腾讯科技(深圳)有限公司 一种知识问答方法及装置
CN102117467A (zh) * 2011-03-03 2011-07-06 南通大学 问答式网络导购方法
CN105450876A (zh) * 2014-06-11 2016-03-30 阿里巴巴集团控股有限公司 一种语音播报方法及相关***

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804525A (zh) * 2018-04-27 2018-11-13 出门问问信息科技有限公司 一种智能回答方法及装置
CN108804525B (zh) * 2018-04-27 2021-04-13 出门问问信息科技有限公司 一种智能回答方法及装置
CN108564833A (zh) * 2018-04-28 2018-09-21 北京比特智学科技有限公司 智能交互对话控制方法及装置
CN110442686A (zh) * 2018-05-03 2019-11-12 阿里巴巴集团控股有限公司 信息确定、关联对构建与会话回复方法、***及设备
CN109919763A (zh) * 2019-01-28 2019-06-21 深圳壹账通智能科技有限公司 基于智能合约展示问答式文件的方法、装置及计算机设备
CN110990554A (zh) * 2019-12-20 2020-04-10 联想(北京)有限公司 内容处理方法、装置、电子设备和介质
CN110990554B (zh) * 2019-12-20 2023-10-27 联想(北京)有限公司 内容处理方法、装置、电子设备和介质
CN112417123A (zh) * 2020-11-20 2021-02-26 平安普惠企业管理有限公司 基于人工智能的客户应答识别方法及其相关设备
WO2022141142A1 (zh) * 2020-12-30 2022-07-07 浙江核新同花顺网络信息股份有限公司 一种确定目标音视频的方法及***

Similar Documents

Publication Publication Date Title
CN107958001A (zh) 一种智能问答的实现方法及装置
TWI698830B (zh) 機器人客服轉人工客服的方法和裝置及其電腦設備與電腦可讀儲存媒體
CN108595494B (zh) 答复信息的获取方法及装置
EP4016330A1 (en) Speech dialog processing method and apparatus
CN111160514B (zh) 一种对话的方法和***
CN111353037B (zh) 一种题目生成方法、装置以及计算机可读存储介质
CN108763495B (zh) 人机对话方法、***、电子设备及存储介质
CN108345692A (zh) 一种自动问答方法和***
CN109241519B (zh) 质量评价模型获取方法及装置、计算机设备与存储介质
CN107911491A (zh) 信息推荐方法、装置及存储介质、服务器和移动终端
CN109101624A (zh) 对话处理方法、装置、电子设备及存储介质
CN106649739B (zh) 多轮交互信息继承识别方法、装置以及交互***
CN110580516B (zh) 一种基于智能机器人的交互方法及装置
Kaur et al. Review of artificial intelligence with retailing sector
CN116521850A (zh) 一种基于强化学习的交互方法及装置
CN114490961A (zh) 一种基于多轮对话的客服方法、***、装置及存储介质
CN112053205A (zh) 通过机器人情绪识别的产品推荐方法及装置
CN115374259A (zh) 一种问答数据挖掘方法、装置及电子设备
CN113656572B (zh) 一种对话处理方法和***
Junprung Exploring the intersection of large language models and agent-based modeling via prompt engineering
CN109190116A (zh) 语义解析方法、***、电子设备及存储介质
CN109165982A (zh) 用户购买信息的确定方法和装置
CN108765011A (zh) 建立用户画像和建立状态信息分析模型的方法和装置
CN112069830A (zh) 一种智能会话方法及装置
CN113704471B (zh) 语句的分类方法、装置、设备和存储介质

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180424