CN114239602A - 会话方法、装置和计算机程序产品 - Google Patents
会话方法、装置和计算机程序产品 Download PDFInfo
- Publication number
- CN114239602A CN114239602A CN202111402647.3A CN202111402647A CN114239602A CN 114239602 A CN114239602 A CN 114239602A CN 202111402647 A CN202111402647 A CN 202111402647A CN 114239602 A CN114239602 A CN 114239602A
- Authority
- CN
- China
- Prior art keywords
- information
- dialogue
- dialogue information
- context cache
- entity
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000004590 computer program Methods 0.000 title claims abstract description 45
- 238000000605 extraction Methods 0.000 claims abstract description 62
- 238000004458 analytical method Methods 0.000 claims description 72
- 230000004927 fusion Effects 0.000 claims description 44
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims description 11
- 238000012423 maintenance Methods 0.000 abstract description 6
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 20
- 229910052709 silver Inorganic materials 0.000 description 20
- 239000004332 silver Substances 0.000 description 20
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 19
- 229910052737 gold Inorganic materials 0.000 description 19
- 239000010931 gold Substances 0.000 description 19
- 230000008569 process Effects 0.000 description 14
- 230000011218 segmentation Effects 0.000 description 14
- 230000003993 interaction Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000013179 statistical model Methods 0.000 description 2
- 210000002268 wool Anatomy 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及一种会话方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:接收用户输入的第一对话信息。对第一对话信息进行实体抽取,获得实体抽取结果;将实体抽取结果在预设知识库中进行匹配。若存在匹配结果,将预设知识库中对应的答案输出为回复信息。若不存在匹配结果,通过将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。采用本方法能够在大大提高多轮会话成功率,减少了知识库管理人员的工作量,降低了后期对知识库的维护成本。
Description
技术领域
本申请涉及人工智能识别分类技术领域,特别是涉及一种会话方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
人机多轮会话是自然语言交互机器人的重要组成部分,也是难点之一。传统的交互方法主要有两种,一种是采用基于规则的方法,如填槽法、有限自动机方法等;一种是基于统计模型利用机器学习进行训练的对话管理技术,如贝叶斯网络、图模法等。
随着机器人领域越来越智能化的发展,原有采用基于规则的人机交互方法实现对话过程比较机械,人机交互的自然度较低,而完全基于统计模型的人机交互方法计算算法复杂度较高,自由度不能受到人为控制,当出现不满意的答复时很难被修正,且该方法需要收集和整理海量的预料,实现程度复杂。因此使用这两种传统的交互方法进行人机多轮会话,设计开发的工作量大,用户体验感不高,都无法保证人机之间的自然语言交互能够有效进行。
发明内容
基于此,有必要针对上述技术问题,提供一种会话方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本申请提供了一种会话方法。所述方法包括:
接收用户输入的第一对话信息;
对所述第一对话信息进行实体抽取,获得实体抽取结果;将所述实体抽取结果在预设知识库中进行匹配;
若存在匹配结果,将所述预设知识库中对应的答案输出为回复信息;
若不存在匹配结果,获取存储的语境缓存信息,所述语境缓存信息包括在本次对话中接收到的所述用户输入的第二对话信息,以及各所述第二对话信息的语法分析结果;
若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,将所述融合后对话信息作为所述第一对话信息,返回对所述第一对话信息进行实体抽取的步骤。
在其中一个实施例中,所述若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,包括:
确定所述第一对话信息的问题类型;
若所述问题类型属于可融合问题类型,则确定所述第一对话信息能够与所述语境缓存信息进行融合;
采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息。
在其中一个实施例中,所述确定所述第一对话信息的问题类型的方式包括:
对所述第一对话信息进行句法分析,得到句法分析结果;
根据所述句法分析结果确定所述第一对话信息的句式结构以及各词语的词性;
基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型。
在其中一个实施例中,所述基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型,包括:
若基于各词语的词性确定所述句式结构缺乏主语,确定所述第一对话信息的问题类型为缺失主语;
若存在词性为代词的词语,确定所述第一对话信息的问题类型为指代不明。
在其中一个实施例中,所述确定所述第一对话信息的问题类型,还包括:
若所述第一对话信息的实体与所述语境缓存信息中的实体不同,确定所述第一对话信息的问题类型为实体转变。
在其中一个实施例中,所述采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,包括:
若所述问题类型为缺失主语,从所述语境缓存信息中寻找主语,将所述主语补全到所述第一对话信息中,获得融合后对话信息;
若所述问题类型为指代不明,基于代词在所述第一对话信息中的位置,从所述语境缓存信息中寻找与所述代词匹配的词语,并将所述词语替换掉所述第一对话信息中的所述代词,获得融合后对话信息;
若所述问题类型为实体转变,用所述语境缓存信息中的实体替换所述第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换所述语境缓存信息中的实体,获得融合后对话信息。
在其中一个实施例中,所述方法还包括:
若所述问题类型不属于可融合问题类型,则确定所述第一对话信息不能够与所述语境缓存信息进行融合,基于所述第一对话信息确定反问问题,将所述反问问题作为回复信息进行回复。
第二方面,本申请还提供了一种会话装置。所述装置包括:
实体匹配模块,用于接收用户输入的第一对话信息;对所述第一对话信息进行实体抽取,获得实体抽取结果,将所述实体抽取结果在预设知识库中进行匹配;
匹配结果判断模块,用于若存在匹配结果,将所述预设知识库中对应的答案输出为回复信息;若不存在匹配结果,获取存储的语境缓存信息,所述语境缓存信息包括在本次对话中接收到的所述用户输入的第二对话信息,以及各所述第二对话信息的语法分析结果;
信息融合模块,用于若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,将所述融合后对话信息作为所述第一对话信息,返回对所述第一对话信息进行实体抽取的步骤。
在其中一个实施例中,所述信息融合模块在若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息时,包括:用于确定所述第一对话信息的问题类型;若所述问题类型属于可融合问题类型,则确定所述第一对话信息能够与所述语境缓存信息进行融合;采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息。
在其中一个实施例中,所述信息融合模块在确定所述第一对话信息的问题类型的方式包括:用于对所述第一对话信息进行句法分析,得到句法分析结果;根据所述句法分析结果确定所述第一对话信息的句式结构以及各词语的词性;基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型。
在其中一个实施例中,所述信息融合模块在基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型时,包括:用于若基于各词语的词性确定所述句式结构缺乏主语,确定所述第一对话信息的问题类型为缺失主语;若存在词性为代词的词语,确定所述第一对话信息的问题类型为指代不明。
在其中一个实施例中,所述信息融合模块在基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型时,还包括:用于若所述第一对话信息的实体与所述语境缓存信息中的实体不同,确定所述第一对话信息的问题类型为实体转变。
在其中一个实施例中,所述信息融合模块在采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息时,包括:
用于若所述问题类型为缺失主语,从所述语境缓存信息中寻找主语,将所述主语补全到所述第一对话信息中,获得融合后对话信息;若所述问题类型为指代不明,基于所述代词在所述第一对话信息中的位置,从所述语境缓存信息中寻找与所述代词匹配的词语,并将所述词语替换掉所述第一对话信息中的所述代词,获得融合后对话信息若所述问题类型为实体转变,用所述语境缓存信息中的实体替换所述第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换所述语境缓存信息中的实体,获得融合后对话信息。
在其中一个实施例中,所述装置还包括:反问问题模块;
所述反问问题模块用于若所述问题类型不属于可融合问题类型,则确定所述第一对话信息不能够与所述语境缓存信息进行融合,基于所述第一对话信息确定反问问题,将所述反问问题作为回复信息进行回复。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
上述会话方法、装置、计算机设备、存储介质和计算机程序产品,可以根据本次对话中接收到的历史对话信息进行语法分析,并将分析结果按照时间顺序存储在语境缓存信息中,在接收到用户输入的对话信息并需要对其进行回复时,自动将无法直接得出答案的对话信息与语境缓存信息融合,根据融合后的对话信息寻找到最优的答案。使用本会话方法,在接收到无法直接得出答案的对话信息时,可以凭借对之前语境缓存信息的分析和提取,融合得出完整的对话信息,从而根据完整的对话信息匹配出更符合当前对话语境的回复信息给用户,大大提高多轮会话成功率,同时,由于这一会话过程不需要人为的对整个会话过程进行语料添加或外理逻辑,减少了知识库管理人员的工作量,降低了后期对知识库的维护成本。
附图说明
图1为一个实施例中会话方法的应用环境图;
图2为一个实施例中会话方法的流程示意图;
图3为一个实施例中若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息的步骤的流程示意图;
图4为另一个实施例中会话方法的流程示意图;
图5为一个实施例中会话装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的会话方法,可以应用于如图1所示的应用环境中。其中,客户通过终端102使用网络与服务器104进行通信。数据存储***可以存储服务器104需要处理的数据。数据存储***可以集成在服务器104上,也可以放在云上或其他网络服务器上。用户在终端102上输入第一对话信息,服务器104对第一对话信息进行实体抽取,获得实体抽取结果,并将所述实体抽取结果在预先存储的知识库中进行匹配,若无匹配结果,服务器104将获取存储的语境缓存信息,将语境缓存信息与第一对话信息进行融合,根据融合后的信息再进行实体抽取与匹配的过程,当获得匹配结果时,将存储在预设知识库中的答案作为回复信息,将回复信息通过网络输出至终端102上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能机器人、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种会话方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤202,接收用户输入的第一对话信息。
其中,第一对话信息为用户根据自身需要咨询的问题所输入的信息。可以理解地,第一对话信息可以是用户输入的文字信息或语音信息,本发明对此不作限定。
具体地,接收用户通过智能终端输入第一对话信息,其中,第一对话信息为用户根据自身需要咨询的问题所输入的信息。
步骤204,对第一对话信息进行实体抽取,获得实体抽取结果;将实体抽取结果在预设知识库中进行匹配。
其中,实体抽取,也称为命名实体识别,实体抽取任务有两个关键词:find&classify,即找到命名实体,并进行分类。即给定一段文本,从中抽取出实体类单词,实体类单词如人名、地名、组织名、时间等名词性单词,在具体的代码实现中,我们都是事先定义抽取哪几类实体单词,这个根据具体的训练数据集而定,例如***数据集中,定义了人名、地点名、组织名三类实体,在模型训练完成之后,我们的任务就是对输入的句子进行三类实体单词的抽取,并识别出单词具体属于那一类实体。
其中,实体抽取结果为利用算法检测到的第一对话信息中的实体词语,以及查询该实体词语得到的该实体词语的分类信息。可以理解的,实体抽取可以使用SoftMax、CRF、Span指针网络等方法实现,本发明对此不作限定。
具体地,服务器中预先有定义好的实体抽取算法,其中,实体抽取算法是根据对应业务领域的具体数据通过训练得到的。使用对应的实体抽取算法对用户输入的第一对话信息进行实体抽取,得到实体词语以及该实体词语对应的分类信息。
在其中一个实施例中,终端为智能机器人:
用户询问:金卡年费多少?
智能机器人将“金卡年费多少”通过网络传输至服务器,服务器将“金卡年费多少”作为用户输入的第一对话信息,对第一对话信息进行实体抽取,实体抽取结果为:金卡(***),意思是,检测到实体为金卡,对金卡进行分类,金卡为***。
其中,预设知识库为根据应用领域对应的行内业务规则所生成记录的问答对信息。例如应用在金融投资领域,则预设知识库中记录与金融投资相关的常见理财问题与该问题对应的答案。
具体地,根据实体词语与实体词语分类在预设知识库中进行查询,将查询到的问答对与用户输入的第一对话信息使用匹配算法进行匹配计算,根据预先设定的匹配度阈值,确定是否存在匹配结果。
其中,预先设定的匹配度阈值可以根据业务需求所确定,例如,若是常规性的引导操作,则可以设置匹配度阈值为75%;若是实际办理具体业务,则可以设置匹配度阈值为85%~95%。
步骤206,若存在匹配结果,将预设知识库中对应的答案输出为回复信息。
具体地,当将进行匹配计算后得到匹配计算值与匹配度阈值进行比较,若匹配计算值大于匹配度阈值,则认为存在匹配结果,将查询到的问答信息中的答案作为回复信息,输出到终端。
步骤208,若不存在匹配结果,获取存储的语境缓存信息,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果。
其中,第二对话信息为本次对话中,用户在前几轮会话中输入的对话信息。第二对话信息的语法分析结果为分别对前几轮会话中用户输入的对话信息进行句法分析和词性分析得到的分析结果。具体地,句法分析结果是通过将句子根据句法结构进行拆分,得到的句子对应的主、谓、宾、定、状、补、等相关句子主干信息。词性分析结果是通过将句子进行分词后,分别分析每个词语的词性如名词、动词、助动词等得到的词性信息。
具体地,当将进行匹配计算后得到匹配计算值与匹配度阈值进行比较,若匹配计算值小于匹配度阈值,则认为不存在匹配结果,服务器读取预先存储好的语境缓存信息。
在其中一个实施例中,语境缓存信息还包括服务器根据对话信息输出的对应回复信息。
在其中一个实施例中,语境缓存信息的缓存容量上限根据应用领域的业务需求和***的实际性能设定,如果语境缓存信息超过预先设定的上限值,***将会使用新的语境缓存信息对原有的语境缓存信息进行覆盖。
步骤210,若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。
具体地,在获取第一对话信息与语境缓存信息,确定两个信息能否进行融合后,将二者进行融合得到融合后的对话信息,将该对话信息作为第一对话信息,对新的第一对话信息返回步骤206进行步骤重复操作。其中,信息融合是指使用语境缓存信息中存在有与第一对话信息相关的信息,对第一对话信息进行修改或补充的过程。
上述会话方法,可以根据本次对话中接收到的历史对话信息进行语法分析,并将分析结果按照时间顺序存储在语境缓存信息中,在接收到用户输入的对话信息并需要对其进行回复时,自动将无法直接得出答案的对话信息与语境缓存信息融合,根据融合后的对话信息寻找到最优的答案。使用本会话方法,在接收到无法直接得出答案的对话信息时,可以凭借对之前语境缓存信息的分析和提取,融合得出完整的对话信息,从而根据完整的对话信息匹配出更符合当前对话语境的回复信息给用户,大大提高多轮会话成功率,同时,由于这一会话过程不需要人为的对整个会话过程进行语料添加或外理逻辑,减少了知识库管理人员的工作量,降低了后期对知识库的维护成本。
在一个实施例中,如图3所示,步骤210,若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,包括以下步骤:
步骤302,确定第一对话信息的问题类型。
其中,第一对话信息无法在预设知识库中匹配到对应的问答对,则认为第一对话信息中存在问题。
具体地,当确定第一对话信息在预设知识库中未匹配到对应的问答对时,确定第一对话信息存在的问题属于何种问题类型。
步骤304,若问题类型属于可融合问题类型,则确定第一对话信息能够与语境缓存信息进行融合。
其中,若第一对话信息中存在的问题,可以通过将第一对话信息与语境缓存信息进行融合后解决,就把此类问题归类为可融合问题类型。可以理解的,在本实施例中,可融合问题类型包括但不限于主语缺失、指代不明、实体转变等。
具体地,对第一对话信息中的问题进行判断后确定其为可融合问题类型,则确定可以将第一对话信息与语境缓存信息进行融合。
步骤306,采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息。
具体地,根据确定好的第一对话信息的问题类型确定对应的融合方式,采用对应的融合方式将第一对话信息与语境缓存信息进行融合,获得融合后的信息。其中,每一个问题类型都有一个对应的融合方式。
本实施例中,在用户的第一对话信息无法在预设知识库中得到匹配结果时,自动对第一对话信息中存在的问题进行判断,确定其问题类型,根据问题类型对应的融合方案,将语境缓存信息与第一对话信息进行融合后得到融合后的对话信息。使用本实施例中的会话方法,能够自动解决第一对话信息无法从预设知识库中得到匹配结果的问题,提高了会话的成功率,提升了用户体验。
在其中一个实施例中,步骤302,确定第一对话信息的问题类型,包括以下步骤:
步骤1,对第一对话信息进行句法分析,得到句法分析结果。
具体地,将第一对话信息根据句法结构进行拆分,得到句法分析结果,其中,句法分析结果为第一对话信息对应的主、谓、宾、定、状、补、等相关句子主干信息,
步骤2,根据句法分析结果确定第一对话信息的句式结构以及各词语的词性。
具体地,根据句法分析结果首先确定第一对话信息的句式结构;对第一对话信息进行分词处理,根据句式结构和句法分析结果确定每个词语在句子中充当的成分,如主语、谓语、宾语、代词等等。
步骤3,基于句式结构以及各词语的词性,确定第一对话信息的问题类型。
具体地,根据句式结构和词语的词性对第一对话信息的问题类型进行判断,确定第一对话信息的问题类型。
在其中一个实施例中,步骤3,基于句式结构以及各词语的词性,确定第一对话信息的问题类型,包括以下步骤:
若基于各词语的词性确定句式结构缺乏主语,确定第一对话信息的问题类型为缺失主语;若存在词性为代词的词语,确定第一对话信息的问题类型为指代不明。
具体地,若第一对话信息中的各词语词性没有主语,则确定第一对话信息句式结构缺乏主语,将第一对话信息的问题类型定义为缺失主语。若第一对话信息的各词语中有存在词性为代词的词语,该代词在第一信息中没有合适的指代词语,将第一对话信息的问题类型定义为指代不明。
在上述实施例中,通过句法分析结果确定第一对话信息的句式结构以及各词语的词性,从而确定第一对话信息的问题类型。使用本实施例中的方法,可以快速准确的确定第一对话信息的问题类型,有助于后续判断第一对话信息是否能与语境缓存信息进行融合,以及后续查找与问题类型对应的融合方式。
在其中一个实施例中,步骤302,确定第一对话信息的问题类型,还包括:若第一对话信息的实体与语境缓存信息中的实体不同,确定第一对话信息的问题类型为实体转变。
其中,语境缓存中的实体为对本次对话中的上一轮会话信息进行实体抽取后的实体。
具体地,将第一对话信息中抽取的实体词语与上一轮会话信息中抽取的实体词语进行对比,若二者不同,则确定第一对话信息的问题类型为实体转变。
在本实施例中,通过将本轮会话的实体词语与语境缓存信息中缓存的上轮会话的实体词语进行对比,确定第一对话信息存在的问题类型。使用本实施例中的方法,能够自动通过第一对话信息与语境缓存信息判断第一对话西信息中的实体是否发生改变,从而快速准确的确定第一对话信息的问题类型,有助于后续判断第一对话信息是否能与语境缓存信息进行融合,以及后续查找与问题类型对应的融合方式。
在其中一个实施例中,步骤306,采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,包括以下步骤:
步骤1,若问题类型为缺失主语,从语境缓存信息中寻找主语,将主语补全到第一对话信息中,获得融合后对话信息。
具体地,当确定第一对话信息的问题类型为缺失主语后,获取语境缓存信息,在语境缓存信息中寻找上一轮会话中的主语信息,将该主语补全到第一对话信息中,获得融合后的对话信息。
在其中一个实施例中,以银行***业务办理为应用环境,终端为智能机器人为例:
语境缓存信息中缓存有前几轮的会话信息:
用户:你好,我想办张***。
其中,句式分析:主语(我),谓语(想办),宾语(信息卡)。分词:你好(助词),我(名词),想办(动词),张(量词),***(名词)
机器人:好的,我行现在有金卡、银卡和普通卡三种。
用户:银卡需要多少年费?
其中,句式分析:主语(银卡),谓语(需要),宾语(多少年费)。分词:银卡(名词),需要(动词),多少(疑问词),年费(名词)。
机器人:一年200元。
将用户此时输入的对话信息作为第一对话信息:
用户:有赠送保险吗?
其中,句式分析:主语(无),谓语(有赠送),宾语(保险)。分词:有(动词),赠送(动词),保险(名词)。
此时,服务器从语法分析结果可以得知,第一对话信息的问题类型为缺失主语,则获取语境缓存信息中上一轮的会话信息:
用户:银卡需要多少年费?
其中,句式分析:主语(银卡),谓语(需要),宾语(多少年费)。分词:银卡(名词),需要(动词),多少(疑问词),年费(名词)。
机器人:一年200元。
从该会话信息中寻找到主语为银卡,将银卡补全到第一对话信息的主语位置,得到融合后的对话信息为:银卡有赠送保险吗?
步骤2,若问题类型为指代不明,基于代词在第一对话信息中的位置,从语境缓存信息中寻找与代词匹配的词语,并将词语替换掉第一对话信息中的代词,获得融合后对话信息。
具体地,当确定第一对话信息的问题类型为指代不明后,确定代词在第一对话信息中的位置,获取语境缓存信息,在语境缓存信息中寻找上一轮会话中与该代词匹配的词语,使用该词语将第一对话信息中的代词替换,获得融合后的对话信息。
在其中一个实施例中,以银行***业务办理为应用环境,终端为智能机器人为例:
语境缓存信息中缓存有前几轮的会话信息:
用户:你好,我想办张***。
其中,句式分析:主语(我),谓语(想办),宾语(信息卡)。分词:你好(助词),我(名词),想办(动词),张(量词),***(名词)
机器人:好的,我行现在有金卡、银卡和普通卡三种。
用户:银卡需要多少年费?
其中,句式分析:主语(银卡),谓语(需要),宾语(多少年费)。分词:银卡(名词),需要(动词),多少(疑问词),年费(名词)。
机器人:一年200元。
将用户此时输入的对话信息作为第一对话信息:
用户:它有赠送保险吗?
其中,句式分析:主语(它),谓语(有赠送),宾语(保险)。分词:它(代词),有(动词),赠送(动词),保险(名词)。
此时,服务器从语法分析结果可以得知,第一对话信息的问题类型为指代不明,则获取语境缓存信息中上一轮的会话信息:
用户:银卡需要多少年费?
其中,句式分析:主语(银卡),谓语(需要),宾语(多少年费)。分词:银卡(名词),需要(动词),多少(疑问词),年费(名词)。
机器人:一年200元。
从该会话信息中寻找到名词为银卡,使用银卡将第一对话信息中的代词(它)替换,获得融合后的对话信息:银卡有赠送保险吗?
步骤3,若问题类型为实体转变,用语境缓存信息中的实体替换第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换语境缓存信息中的实体,获得融合后对话信息。
具体地,当确定第一对话信息的问题类型为实体转变后,获取语境缓存信息,在语境缓存信息中寻找上一轮会话中所抽取的实体词语,使用该实体词语将第一对话信息中的实体词语替换,获得融合后的对话信息。或者是将第一对话信息中的实体替换上一轮会话信息中的实体,保留上一轮会话信息中的其他信息,获得融合后的对话信息。
在其中一个实施例中,以银行***业务办理为应用环境,终端为智能机器人为例:
语境缓存信息中缓存有前几轮的会话信息:
用户:你好,我想办张***。
其中,句式分析:主语(我),谓语(想办),宾语(信息卡)。分词:你好(助词),我(名词),想办(动词),张(量词),***(名词)
机器人:好的,我行现在有金卡、银卡和普通卡三种。
用户:金卡年费多少?
其中,句式分析:主语(金卡、年费),宾语(多少)。分词:金卡(名词),年费(名词),多少(疑问词)。实体抽取:金卡(***)。
机:一年800,但附赠一份价值500万的人生意外险。
将用户此时输入的对话信息作为第一对话信息:
用户:银卡呢?
其中,句式分析:无。分词:银卡(名词),呢(疑问词)。实体抽取:银卡(***)。
具体地,将“银卡呢”作为第一对话信息,在预设知识库中无法得出匹配结果,获取语境缓存信息中的上一轮会话信息:
用户:金卡年费多少?
其中,句式分析:主语(金卡、年费),宾语(多少)。分词:金卡(名词),年费(名词),多少(疑问词)。实体抽取:金卡(***)。
机:一年800,但附赠一份价值500万的人生意外险。
可以看出上一轮会话信息中的实体为金卡(***),将第一对话信息中的实体银卡替换掉上一轮会话信息的实体,获得融合后的对话信息:银卡年费多少?
在上述实施例中,确定第一对话信息的问题类型后,根据问题类型对应的融合方式,将第一对话信息与语句缓存信息进行融合,得到融合后的对话信息。使用本实施例的方法,当第一对话信息无法在预设知识库中得到匹配结果时,能够自动根据第一对话信息存在问题类型对应的融合方式与语境缓存信息融合,利用语句缓存信息解决第一对话信息中存在的问题,不需要人为的对整个会话过程进行预料添加或外理逻辑,在提高多轮会话成功率的同时也减少了对知识库管理人员的工作量,大大降低了后期对知识库的维护成本。
在其中一个实施例中,步骤306,采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息之后,还包括:若问题类型不属于可融合问题类型,则确定第一对话信息不能够与语境缓存信息进行融合,基于第一对话信息确定反问问题,将反问问题作为回复信息进行回复。
具体地,若确定第一对话信息的问题类型不属于可融合问题类型,则第一对话信息不能够通过与语境缓存信息融合来解决其自身的问题,此时,根据第一对话信息生成反问问题,将反问问题作为回复信息进行回复。
在其中一个实施例中,以银行***业务办理为应用环境,终端为智能机器人为例:
用户此时输入的信息为第一对话信息:
用户:你好,我想办张卡。
其中,句式分析:主语(我),谓语(想办),宾语(卡)。分词:你好(助词),我(名词),想办(动词),张(量词),卡(名词)。
实体抽取:空
具体地,在这里卡的具体信息并不明确,且***中并未生成有本次对话的语境缓存信息,则此时第一对话信息的问题类型不属于可融合问题类型,此时服务器根据第一对话信息中不明确的信息生成反问问题,即:请问你要办什么卡?将反问问题作为回复信息输出至智能机器人终端,对用户问题进行回复。
在本实施例中,当确定第一对话信息的问题类型不属于可融合问题类型时,服务器根据第一对话信息中不明确的信息生成对应的反问问题,将反问问题作为回复信息对用户问题进行回复。使用本实施例中的方法,在第一对话信息不明确时,可以生成对应的反问问题,通过用户对反问问题的答复获取更多的信息,从而得到最匹配的回复信息。不需要人为的对整个会话过程进行预料添加或外理逻辑,在提高多轮会话成功率的同时也减少了对知识库管理人员的工作量,大大降低了后期对知识库的维护成本。
在其中一个实施例中,如图4所示,提供了一种会话方法,包括以下步骤:
本实施例中涉及终端与服务器,以终端为智能机器人为例,应用在银行业务办理环境中。其中智能机器人通过网络与服务器进行通信,智能机器人接收用户输入的对话信息,并将对话信息通过网络发送给服务器,服务器中包含有数据存储***,存储有预设知识库以及语境缓存信息。其中,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果。第二对话信息为本次对话中,用户在前几轮会话中输入的对话信息。预设知识库为根据应用领域对应的行内业务规则所生成记录的问答对信息。
智能机器人接收用户输入的对话信息,将对话信息通过网络发送给服务器,服务器将接收到的对话信息作为第一对话信息;对第一对话信息中的关键词进行抽取,将抽取得到的关键词与语境缓存信息中的关键词进行比对,确定对话语境是否发生改变。
若会话语境发生改变,则在服务器中创建当前会话语境的语境缓存信息,而后对第一对话信息进行句法分析;若会话语境未发送改变,则直接对第一对话信息进行句法分析。
对第一对话信息中的语句进行分词,根据句法分析结果确定第一对话信息中各词语的词性。同时对第一对话信息进行实体抽取。将分析结果记录在创建的当前会话语境的语境缓存信息中。
根据抽取的实体查询预设知识库,将第一对话信息与根据实体查询到的问答信息进行匹配,确定是否存在匹配结果。若存在匹配结果,则将匹配结果中的答案信息作为回复信息返回给智能机器人;若不存在匹配结果,则确定第一对话信息存在的问题类型。
若存在的问题类型为主语缺失,则从语境缓存信息中寻找主语对第一对话信息进行对话信息补全;若存在问题类型为指代不明,则从语境缓存信息中寻找对应的指代词语进行替换;若存在问题类型为实体转变,则从语境缓存信息中寻找对应得实体词语进行替换。若存在的问题类型不属于以上三种,则根据第一对话信息生成反问问题,将反问问题发送给智能机器人,对用户进行反问,进一步收集信息。用户根据反问问题回复回答对话信息,智能机器人将回答对话信息发送给服务器,服务器将接收到的回答对话信息作为新的第一对话信息,返回判断语句是否发送改变步骤。直至会话结束。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的会话方法的会话装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个会话装置实施例中的具体限定可以参见上文中对于会话方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种会话装置,包括:实体匹配模块402、匹配结果判断模块404和信息融合模块406,其中:
实体匹配模块402,用于接收用户输入的第一对话信息;对第一对话信息进行实体抽取,获得实体抽取结果,将实体抽取结果在预设知识库中进行匹配。
匹配结果判断模块404,用于若存在匹配结果,将预设知识库中对应的答案输出为回复信息;若不存在匹配结果,获取存储的语境缓存信息,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果。
信息融合模块406,用于若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。
上述会话装置,可以根据本次对话中接收到的历史对话信息进行语法分析,并将分析结果按照时间顺序存储在语境缓存信息中,在接收到用户输入的对话信息并需要对其进行回复时,自动将无法直接得出答案的对话信息与语境缓存信息融合,根据融合后的对话信息寻找到最优的答案。使用本会话装置,在接收到无法直接得出答案的对话信息时,可以凭借对之前语境缓存信息的分析和提取,融合得出完整的对话信息,从而根据完整的对话信息匹配出更符合当前对话语境的回复信息给用户,大大提高多轮会话成功率,同时,由于这一会话过程不需要人为的对整个会话过程进行语料添加或外理逻辑,减少了知识库管理人员的工作量,降低了后期对知识库的维护成本。
在其中一个实施例中,信息融合模块在若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息时,包括:用于确定第一对话信息的问题类型;若问题类型属于可融合问题类型,则确定第一对话信息能够与语境缓存信息进行融合;采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息。
在其中一个实施例中,信息融合模块在确定第一对话信息的问题类型的方式包括:用于对第一对话信息进行句法分析,得到句法分析结果;根据句法分析结果确定第一对话信息的句式结构以及各词语的词性;基于句式结构以及各词语的词性,确定第一对话信息的问题类型。
在其中一个实施例中,信息融合模块在基于句式结构以及各词语的词性,确定第一对话信息的问题类型时,包括:用于若基于各词语的词性确定句式结构缺乏主语,确定第一对话信息的问题类型为缺失主语;若存在词性为代词的词语,确定第一对话信息的问题类型为指代不明。
在其中一个实施例中,信息融合模块在基于句式结构以及各词语的词性,确定第一对话信息的问题类型时,还包括:用于若第一对话信息的实体与语境缓存信息中的实体不同,确定第一对话信息的问题类型为实体转变。
在其中一个实施例中,信息融合模块在采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息时,包括:
用于若问题类型为缺失主语,从语境缓存信息中寻找主语,将主语补全到第一对话信息中,获得融合后对话信息;若问题类型为指代不明,基于代词在第一对话信息中的位置,从语境缓存信息中寻找与代词匹配的词语,并将词语替换掉第一对话信息中的代词,获得融合后对话信息若问题类型为实体转变,用语境缓存信息中的实体替换第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换语境缓存信息中的实体,获得融合后对话信息。
在其中一个实施例中,会话装置还包括:反问问题模块;
反问问题模块用于若问题类型不属于可融合问题类型,则确定第一对话信息不能够与语境缓存信息进行融合,基于第一对话信息确定反问问题,将反问问题作为回复信息进行回复。
上述会话装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设知识库数据以及语境缓存信息数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种会话方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收用户输入的第一对话信息;
对第一对话信息进行实体抽取,获得实体抽取结果;将实体抽取结果在预设知识库中进行匹配;
若存在匹配结果,将预设知识库中对应的答案输出为回复信息;
若不存在匹配结果,获取存储的语境缓存信息,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果;
若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
确定第一对话信息的问题类型;
若问题类型属于可融合问题类型,则确定第一对话信息能够与语境缓存信息进行融合;
采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对第一对话信息进行句法分析,得到句法分析结果;
根据句法分析结果确定第一对话信息的句式结构以及各词语的词性;
基于句式结构以及各词语的词性,确定第一对话信息的问题类型。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若基于各词语的词性确定句式结构缺乏主语,确定第一对话信息的问题类型为缺失主语;
若存在词性为代词的词语,确定第一对话信息的问题类型为指代不明。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若第一对话信息的实体与语境缓存信息中的实体不同,确定第一对话信息的问题类型为实体转变。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若问题类型为缺失主语,从语境缓存信息中寻找主语,将主语补全到第一对话信息中,获得融合后对话信息;
若问题类型为指代不明,基于代词在第一对话信息中的位置,从语境缓存信息中寻找与代词匹配的词语,并将词语替换掉第一对话信息中的代词,获得融合后对话信息;
若问题类型为实体转变,用语境缓存信息中的实体替换第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换语境缓存信息中的实体,获得融合后对话信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若问题类型不属于可融合问题类型,则确定第一对话信息不能够与语境缓存信息进行融合,基于第一对话信息确定反问问题,将反问问题作为回复信息进行回复。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收用户输入的第一对话信息;
对第一对话信息进行实体抽取,获得实体抽取结果;将实体抽取结果在预设知识库中进行匹配;
若存在匹配结果,将预设知识库中对应的答案输出为回复信息;
若不存在匹配结果,获取存储的语境缓存信息,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果;
若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
确定第一对话信息的问题类型;
若问题类型属于可融合问题类型,则确定第一对话信息能够与语境缓存信息进行融合;
采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对第一对话信息进行句法分析,得到句法分析结果;
根据句法分析结果确定第一对话信息的句式结构以及各词语的词性;
基于句式结构以及各词语的词性,确定第一对话信息的问题类型。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若基于各词语的词性确定句式结构缺乏主语,确定第一对话信息的问题类型为缺失主语;
若存在词性为代词的词语,确定第一对话信息的问题类型为指代不明。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若第一对话信息的实体与语境缓存信息中的实体不同,确定第一对话信息的问题类型为实体转变。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若问题类型为缺失主语,从语境缓存信息中寻找主语,将主语补全到第一对话信息中,获得融合后对话信息;
若问题类型为指代不明,基于代词在第一对话信息中的位置,从语境缓存信息中寻找与代词匹配的词语,并将词语替换掉第一对话信息中的代词,获得融合后对话信息;
若问题类型为实体转变,用语境缓存信息中的实体替换第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换语境缓存信息中的实体,获得融合后对话信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若问题类型不属于可融合问题类型,则确定第一对话信息不能够与语境缓存信息进行融合,基于第一对话信息确定反问问题,将反问问题作为回复信息进行回复。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收用户输入的第一对话信息;
对第一对话信息进行实体抽取,获得实体抽取结果;将实体抽取结果在预设知识库中进行匹配;
若存在匹配结果,将预设知识库中对应的答案输出为回复信息;
若不存在匹配结果,获取存储的语境缓存信息,语境缓存信息包括在本次对话中接收到的用户输入的第二对话信息,以及各第二对话信息的语法分析结果;
若第一对话信息能够与语境缓存信息进行融合,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息,将融合后对话信息作为第一对话信息,返回对第一对话信息进行实体抽取的步骤。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
确定第一对话信息的问题类型;
若问题类型属于可融合问题类型,则确定第一对话信息能够与语境缓存信息进行融合;
采用第一对话信息的问题类型对应的融合方式,将第一对话信息与语境缓存信息进行融合,获得融合后对话信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对第一对话信息进行句法分析,得到句法分析结果;
根据句法分析结果确定第一对话信息的句式结构以及各词语的词性;
基于句式结构以及各词语的词性,确定第一对话信息的问题类型。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若基于各词语的词性确定句式结构缺乏主语,确定第一对话信息的问题类型为缺失主语;
若存在词性为代词的词语,确定第一对话信息的问题类型为指代不明。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若第一对话信息的实体与语境缓存信息中的实体不同,确定第一对话信息的问题类型为实体转变。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若问题类型为缺失主语,从语境缓存信息中寻找主语,将主语补全到第一对话信息中,获得融合后对话信息;
若问题类型为指代不明,基于代词在第一对话信息中的位置,从语境缓存信息中寻找与代词匹配的词语,并将词语替换掉第一对话信息中的代词,获得融合后对话信息;
若问题类型为实体转变,用语境缓存信息中的实体替换第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换语境缓存信息中的实体,获得融合后对话信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若问题类型不属于可融合问题类型,则确定第一对话信息不能够与语境缓存信息进行融合,基于第一对话信息确定反问问题,将反问问题作为回复信息进行回复。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (17)
1.一种会话方法,其特征在于,所述方法包括:
接收用户输入的第一对话信息;
对所述第一对话信息进行实体抽取,获得实体抽取结果;将所述实体抽取结果在预设知识库中进行匹配;
若存在匹配结果,将所述预设知识库中对应的答案输出为回复信息;
若不存在匹配结果,获取存储的语境缓存信息,所述语境缓存信息包括在本次对话中接收到的所述用户输入的第二对话信息,以及各所述第二对话信息的语法分析结果;
若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,将所述融合后对话信息作为所述第一对话信息,返回对所述第一对话信息进行实体抽取的步骤。
2.根据权利要求1所述的方法,其特征在于,所述若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,包括:
确定所述第一对话信息的问题类型;
若所述问题类型属于可融合问题类型,则确定所述第一对话信息能够与所述语境缓存信息进行融合;
采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息。
3.根据权利要求2所述的方法,其特征在于,所述确定所述第一对话信息的问题类型的方式包括:
对所述第一对话信息进行句法分析,得到句法分析结果;
根据所述句法分析结果确定所述第一对话信息的句式结构以及各词语的词性;
基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型。
4.根据权利要求3所述的方法,其特征在于,所述基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型,包括:
若基于各词语的词性确定所述句式结构缺乏主语,确定所述第一对话信息的问题类型为缺失主语;
若存在词性为代词的词语,确定所述第一对话信息的问题类型为指代不明。
5.根据权利要求3所述的方法,其特征在于,所述确定所述第一对话信息的问题类型,还包括:
若所述第一对话信息的实体与所述语境缓存信息中的实体不同,确定所述第一对话信息的问题类型为实体转变。
6.根据权利要求5所述的方法,其特征在于,所述采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,包括:
若所述问题类型为缺失主语,从所述语境缓存信息中寻找主语,将所述主语补全到所述第一对话信息中,获得融合后对话信息;
若所述问题类型为指代不明,基于代词在所述第一对话信息中的位置,从所述语境缓存信息中寻找与所述代词匹配的词语,并将所述词语替换掉所述第一对话信息中的所述代词,获得融合后对话信息;
若所述问题类型为实体转变,用所述语境缓存信息中的实体替换所述第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换所述语境缓存信息中的实体,获得融合后对话信息。
7.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述问题类型不属于可融合问题类型,则确定所述第一对话信息不能够与所述语境缓存信息进行融合,基于所述第一对话信息确定反问问题,将所述反问问题作为回复信息进行回复。
8.一种会话装置,其特征在于,所述装置包括:
实体匹配模块,用于接收用户输入的第一对话信息;对所述第一对话信息进行实体抽取,获得实体抽取结果,将所述实体抽取结果在预设知识库中进行匹配;
匹配结果判断模块,用于若存在匹配结果,将所述预设知识库中对应的答案输出为回复信息;若不存在匹配结果,获取存储的语境缓存信息,所述语境缓存信息包括在本次对话中接收到的所述用户输入的第二对话信息,以及各所述第二对话信息的语法分析结果;
信息融合模块,用于若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息,将所述融合后对话信息作为所述第一对话信息,返回对所述第一对话信息进行实体抽取的步骤。
9.根据权利要求8所述的装置,其特征在于,所述信息融合模块在若所述第一对话信息能够与所述语境缓存信息进行融合,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息时,包括:用于确定所述第一对话信息的问题类型;若所述问题类型属于可融合问题类型,则确定所述第一对话信息能够与所述语境缓存信息进行融合;采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息。
10.根据权利要求9所述的装置,其特征在于,所述信息融合模块在确定所述第一对话信息的问题类型的方式包括:用于对所述第一对话信息进行句法分析,得到句法分析结果;根据所述句法分析结果确定所述第一对话信息的句式结构以及各词语的词性;基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型。
11.根据权利要求10所述的装置,其特征在于,所述信息融合模块在基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型时,包括:用于若基于各词语的词性确定所述句式结构缺乏主语,确定所述第一对话信息的问题类型为缺失主语;若存在词性为代词的词语,确定所述第一对话信息的问题类型为指代不明。
12.根据权利要求10所述的装置,其特征在于,所述信息融合模块在基于所述句式结构以及各词语的词性,确定所述第一对话信息的问题类型时,还包括:用于若所述第一对话信息的实体与所述语境缓存信息中的实体不同,确定所述第一对话信息的问题类型为实体转变。
13.根据权利要求11所述的装置,其特征在于,所述信息融合模块在采用所述第一对话信息的问题类型对应的融合方式,将所述第一对话信息与所述语境缓存信息进行融合,获得融合后对话信息时,包括:
用于若所述问题类型为缺失主语,从所述语境缓存信息中寻找主语,将所述主语补全到所述第一对话信息中,获得融合后对话信息;若所述问题类型为指代不明,基于所述代词在所述第一对话信息中的位置,从所述语境缓存信息中寻找与所述代词匹配的词语,并将所述词语替换掉所述第一对话信息中的所述代词,获得融合后对话信息若所述问题类型为实体转变,用所述语境缓存信息中的实体替换所述第一对话信息中的实体,获得融合后对话信息,或者,用第一对话信息中的实体替换所述语境缓存信息中的实体,获得融合后对话信息。
14.根据权利要求9所述的装置,其特征在于,所述装置还包括:反问问题模块;
所述反问问题模块用于若所述问题类型不属于可融合问题类型,则确定所述第一对话信息不能够与所述语境缓存信息进行融合,基于所述第一对话信息确定反问问题,将所述反问问题作为回复信息进行回复。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111402647.3A CN114239602A (zh) | 2021-11-19 | 2021-11-19 | 会话方法、装置和计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111402647.3A CN114239602A (zh) | 2021-11-19 | 2021-11-19 | 会话方法、装置和计算机程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114239602A true CN114239602A (zh) | 2022-03-25 |
Family
ID=80750897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111402647.3A Pending CN114239602A (zh) | 2021-11-19 | 2021-11-19 | 会话方法、装置和计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114239602A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743559A (zh) * | 2024-02-20 | 2024-03-22 | 厦门国际银行股份有限公司 | 一种基于rag的多轮对话处理方法、装置以及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110390001A (zh) * | 2019-06-04 | 2019-10-29 | 深思考人工智能机器人科技(北京)有限公司 | 一种观点型机器阅读理解的实现方法、装置 |
CN111259668A (zh) * | 2020-05-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN111581338A (zh) * | 2020-03-25 | 2020-08-25 | 北京市农林科学院 | 一种农业技术服务机器人人机融合咨询问答方法及*** |
CN112256825A (zh) * | 2020-10-19 | 2021-01-22 | 平安科技(深圳)有限公司 | 医疗领域多轮对话智能问答方法、装置和计算机设备 |
CN113627196A (zh) * | 2021-07-21 | 2021-11-09 | 前海企保科技(深圳)有限公司 | 一种基于语境和Transformer的多语言对话机器人***及其对话方法 |
-
2021
- 2021-11-19 CN CN202111402647.3A patent/CN114239602A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110390001A (zh) * | 2019-06-04 | 2019-10-29 | 深思考人工智能机器人科技(北京)有限公司 | 一种观点型机器阅读理解的实现方法、装置 |
CN111581338A (zh) * | 2020-03-25 | 2020-08-25 | 北京市农林科学院 | 一种农业技术服务机器人人机融合咨询问答方法及*** |
CN111259668A (zh) * | 2020-05-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN112256825A (zh) * | 2020-10-19 | 2021-01-22 | 平安科技(深圳)有限公司 | 医疗领域多轮对话智能问答方法、装置和计算机设备 |
CN113627196A (zh) * | 2021-07-21 | 2021-11-09 | 前海企保科技(深圳)有限公司 | 一种基于语境和Transformer的多语言对话机器人***及其对话方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743559A (zh) * | 2024-02-20 | 2024-03-22 | 厦门国际银行股份有限公司 | 一种基于rag的多轮对话处理方法、装置以及设备 |
CN117743559B (zh) * | 2024-02-20 | 2024-06-04 | 厦门国际银行股份有限公司 | 一种基于rag的多轮对话处理方法、装置以及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111859960B (zh) | 基于知识蒸馏的语义匹配方法、装置、计算机设备和介质 | |
WO2021042503A1 (zh) | 信息分类抽取方法、装置、计算机设备和存储介质 | |
CN110717514A (zh) | 会话意图识别方法、装置、计算机设备和存储介质 | |
CN111222305A (zh) | 一种信息结构化方法和装置 | |
CN110162780A (zh) | 用户意图的识别方法和装置 | |
CN110033382B (zh) | 一种保险业务的处理方法、装置及设备 | |
CN111309881A (zh) | 智能问答中未知问题处理方法、装置、计算机设备和介质 | |
CN110399473B (zh) | 为用户问题确定答案的方法和装置 | |
CN111177307A (zh) | 一种基于语义理解相似度阀值配置的测试方案及*** | |
WO2019227629A1 (zh) | 文本信息的生成方法、装置、计算机设备及存储介质 | |
CN112926308A (zh) | 匹配正文的方法、装置、设备、存储介质以及程序产品 | |
CN115481229A (zh) | 一种应答话术推送方法、装置、电子设备及存储介质 | |
US11875128B2 (en) | Method and system for generating an intent classifier | |
CN116541517A (zh) | 文本信息处理方法、装置、设备、软件程序以及存储介质 | |
CN114239602A (zh) | 会话方法、装置和计算机程序产品 | |
Ali et al. | K-means clustering to improve the accuracy of decision tree response classification | |
US20230351121A1 (en) | Method and system for generating conversation flows | |
CN113111157B (zh) | 问答处理方法、装置、计算机设备和存储介质 | |
CN112580366B (zh) | 情绪识别方法以及电子设备、存储装置 | |
CN113095073B (zh) | 语料标签生成方法、装置、计算机设备和存储介质 | |
CA3170100A1 (en) | Text processing method and device and computer-readable storage medium | |
CN116150353A (zh) | 意图特征提取模型训练方法、意图识别方法及相关装置 | |
CN114333813A (zh) | 可配置智能语音机器人的实现方法、装置和存储介质 | |
CN113362169A (zh) | 催收优化方法及设备 | |
CN111552785A (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 |