CN117874190A - 一种基于多源知识库的具有可溯源能力的问答方法及系统 - Google Patents
一种基于多源知识库的具有可溯源能力的问答方法及系统 Download PDFInfo
- Publication number
- CN117874190A CN117874190A CN202311827945.6A CN202311827945A CN117874190A CN 117874190 A CN117874190 A CN 117874190A CN 202311827945 A CN202311827945 A CN 202311827945A CN 117874190 A CN117874190 A CN 117874190A
- Authority
- CN
- China
- Prior art keywords
- current input
- text
- input text
- knowledge
- relevance
- 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 46
- 238000012545 processing Methods 0.000 claims abstract description 48
- 239000013598 vector Substances 0.000 claims abstract description 44
- 238000012216 screening Methods 0.000 claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 12
- 230000006835 compression Effects 0.000 claims description 7
- 238000007906 compression Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种基于多源知识库的具有可溯源能力的问答方法及系统,其中方法包括如下步骤:获取当前输入文本;根据当前输入文本,从历史对话中筛选出关联性对话内容;以及对当前输入文本依次进行向量化处理,获得向量化结果;从关联性对话内容和当前输入文本中,抽取关键词;对关联性对话内容和当前输入文本进行领域分类;根据分类的领域,将关键词与向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与当前输入文本对应的多份相关知识文本。该方法可以针对庞大的、不同领域来源的知识库,提高知识检索准确率,同时参考并筛选历史对话,进一步提升检索结果的精确程度。
Description
技术领域
本发明涉及问答技术领域,更具体的说是涉及一种基于多源知识库的具有可溯源能力的问答方法及系统。
背景技术
当前的大语言模型问答大部分完全基于模型内部记忆的知识去回复用户的问题,这种方式容易让模型生成不符合常识和专业知识的回答,结果往往不是很可靠,而且也不利于获取实时的新信息
一种解决方式是检索增强生成(Retrieval Augmented Generation,RAG),即把一个信息检索组件和文本生成模型结合在一起。RAG会接受输入并检索出一组相关/支撑的文档,并给出文档的来源。这些文档作为上下文和输入的原始提示词组合,送给文本生成器得到最终的输出。这样RAG更加适应事实会随时间变化的情况。
目前检索的常用方式是:预先将知识向量化后存储到向量数据库,在用户提问时,将问句向量化后与向量数据库中所有知识进行相似度匹配,筛选出最相似的几个知识文本,与问句一并提供给生成模型去回答问题。该知识检索方式比较简单粗糙,单纯依靠向量相似度匹配的方法很难精确地检索出用户想要的内容,这种方式存在的三个明显的弊端:
1、将短的问句与长文本知识段进行匹配,往往会忽略一些关键字眼,而匹配上一些无意义的知识段,尤其是在仅凭当前问句,而不考虑历史对话的情况下;
2、在知识库变得庞大的情况下,会有不同领域的信息混杂在一起,在检索的时候会把不属于提问中涉及到的领域知识也检索出来,影响了最终知识的召回效果;
3、并没有考虑上下文对话中所包含的信息,只考虑了当前问句中所提到的信息,在实际应用中往往召回效果不佳。有些考虑了上文信息的也只是简单地拼接历史上文窗口内的对话信息,并没有考虑到上文对话是否与当前的用户提问强相关,也拉低了知识检索的准确率。
因此,如何针对庞大的、不同领域来源的知识库,提高知识检索准确率,同时参考并筛选人机对话的历史记录,进一步提升检索结果的精确程度,是本领域技术人员亟需解决的问题。
发明内容
鉴于上述问题,本发明提供一种基于多源知识库的具有可溯源能力的问答方法及系统,以至少解决上述背景技术中提到的部分技术问题。
为了实现上述目的,本发明采用如下技术方案:
一方面,本发明实施例提供了一种基于多源知识库的具有可溯源能力的问答方法,包括如下步骤:
S1、获取当前输入文本;
S2、根据所述当前输入文本,从历史对话中筛选出关联性对话内容;并对所述当前输入文本进行向量化处理,获得向量化结果;
S3、从所述关联性对话内容和所述当前输入文本中,抽取关键词;
S4、对所述关联性对话内容和所述当前输入文本进行领域分类;
S5、根据分类的领域,将所述关键词与所述向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与所述当前输入文本对应的多份相关知识文本。
进一步地,所述步骤S2还包括:
对所述关联性对话内容的总字数进行判断:若所述关联性对话内容的总字数不满足预设条件,则对所述关联性对话内容进行压缩重构处理。
进一步地,所述预设条件包括:所述关联性对话内容的总字数小于预设字数阈值;具体表示为:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
进一步地,在所述步骤S2中,所述根据所述当前输入文本,从历史对话中筛选出关联性对话内容,具体包括:
将所述当前输入文本和历史对话输入至训练好的大语言模型中;
通过所述大语言模型,获得所述当前输入文本的多领域标签;以及获得所述历史对话中各段知识文本的类别;将所述历史对话中,与所述当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容。
进一步地,在所述步骤S2中,对所述当前输入文本进行向量化处理,获得向量化结果,具体包括:
对所述当前输入文本进行切分处理;在切分处理过程中,基于所述当前输入文本语义的连贯性,使分割差窗口适应性重叠;
将切分处理后的当前输入文本输入至embedding模型中,获得对应的embedding向量;将所述embedding向量作为向量化结果。
进一步地,在所述步骤S4中,通过训练好的大语言模型对所述关联性对话内容和所述当前输入文本进行领域分类。
进一步地,所述ES向量数据库的构建步骤包括:
通过训练好的大语言模型对知识库中的多份知识文本进行分类,获得每份所述知识文本的多领域标签;
对每份所述知识文本进行向量化处理,获取每份所述知识文本的embedding向量;
将每份所述知识文本,及对应的多领域标签和embedding向量均保存到ES向量数据库中,实现ES向量数据库的构建。
进一步地,所述大语言模型的训练步骤包括:
基于小样本学习获取训练集;所述训练集包括示例文本和对应的多领域标签;
将所述示例文本作为输入,将所述示例文本对应的多领域标签作为输出,对具有输出问答功能的大语言模型进行训练。
进一步地,在步骤S5中,还获得多份所述相关知识文本的出处。
进一步地,在步骤S5中,还获得每份所述相关知识文本的匹配率。
另一方面,本发明实施例还提供了一种基于多源知识库的具有可溯源能力的问答系统,应用上述的问答方法,所述问答系统包括:获取模块、第一处理模块、第二处理模块、分类模块和匹配模块;
所述获取模块,用于获取当前输入文本;
所述第一处理模块,用于根据所述当前输入文本,从历史对话中筛选出关联性对话内容;并对所述当前输入文本进行向量化处理,获得向量化结果;
所述第二处理模块,用于从所述关联性对话内容和所述当前输入文本中,抽取关键词;
所述分类模块,用于对所述关联性对话内容和所述当前输入文本进行领域分类;
所述匹配模块,用于根据分类的领域,将所述关键词与所述向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与所述当前输入文本对应的多份相关知识文本。
进一步地,所述第一处理模块包括判断子模块;
所述判断子模块,用于对所述关联性对话内容的总字数进行判断:若所述关联性对话内容的总字数不满足预设条件,则对所述关联性对话内容进行压缩重构处理;
所述预设条件包括:所述关联性对话内容的总字数小于预设字数阈值;具体表示为:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
进一步地,所述第一处理模块包括筛选子模块;
所述筛选子模块,用于将所述当前输入文本和历史对话输入至训练好的大语言模型中;
通过所述大语言模型,获得所述当前输入文本的多领域标签;以及获得所述历史对话中各段知识文本的类别;将所述历史对话中,与所述当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容。
进一步地,所述第一处理模块包括文本向量化子模块;
所述文本向量化子模块,用于对所述当前输入文本进行切分处理;在切分处理过程中,基于所述当前输入文本语义的连贯性,使分割差窗口适应性重叠;
将切分处理后的当前输入文本输入至embedding模型中,获得对应的embedding向量;将所述embedding向量作为向量化结果。
进一步地,所述匹配模块包括第一获取子模块;
所述第一获取子模块,用于获得多份所述相关知识文本的出处。
进一步地,所述匹配模块包括第二获取子模块;
所述第二获取子模块,用于获得每份所述相关知识文本的匹配率。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于多源知识库的具有可溯源能力的问答方法及系统,包括如下技术特征:
本发明在多轮对话的场景中,不仅能根据用户的当前输入文本进行匹配,还能结合历史对话,提高知识召回的召回率和精准率。
本发明基于ES向量数据库进行匹配,在ES向量数据库不断扩大的情形下,能够保持知识召回的精准率和召回率,不会因为文本数据的增大而丢失掉精准率。
本发明对于不同的业务应用场景,能够根据业务需要,自定义多个标签来进行分类。
本发明与传统的分类方案不同,利用大语言模型+few shot的方式,在做跨业务分类时,一般不需要重新训练模型的标签类别,只需要修改prompt内的标签即可。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的基于多源知识库的具有可溯源能力的问答方法流程示意图。
图2为本发明实施例提供的ES向量数据库构建示意图。
图3为本发明实施例提供的基于多源知识库的具有可溯源能力的问答系统框架示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1所示,本发明实施例公开了一种基于多源知识库的具有可溯源能力的问答方法,包括如下步骤:
S1、获取当前输入文本;
S2、根据所述当前输入文本,从历史对话中筛选出关联性对话内容;并对所述当前输入文本进行向量化处理,获得向量化结果;
S3、从所述关联性对话内容和所述当前输入文本中,抽取关键词;
S4、对所述关联性对话内容和所述当前输入文本进行领域分类;
S5、根据分类的领域,将所述关键词与所述向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与所述当前输入文本对应的多份相关知识文本。
通过该方法,可以针对庞大的、不同领域来源的知识库,提高知识检索准确率,同时参考并筛选人机对话的历史记录,进一步提升检索结果的精确程度。
需要说明的是,上述S1-S5只是为了便于说明,并不对步骤的具体执行顺序进行限定;接下来,分别对上述各步骤进行详细说明。
在上述步骤S1和步骤S2中,由于在人机对话中,话题有可能不是从始至终都保持同一个,很有可能在经历一两轮之后转变为另一个话题,或者聚焦于更加细节的问题交流上;因此,需要将当前用户的输入对话与历史对话相关联;而又由于历史对话中包含了当前用户问句的补充信息,在进行知识检索时,又不能盲目地将上文交流的所有对话都用于匹配知识库检索,这会导致匹配错误率上升,因此需要加入对话上下文筛选和总结重构;在本发明实施例中,筛选这一步是必须的,但是总结重构这一步却不是必须的,因为滥用上下文对话总结,有可能会导致信息的意外缺失,造成匹配的不精准;
接下来,分别对上下文筛选和上下文总结重构进行说明:
(1)对话上下文筛选:
在该步骤中,需要判断当前用户的输入对话是否与上文历史对话有关联,与上文的几轮对话有强关联;并将强关联的历史对话加入到检索匹配的问句中来,强化检索的精准率和召回率;
基于此,在本发明实施例中,在获取用户的当前输入文本后,根据该当前输入文本,从历史对话中筛选出关联性对话内容;具体地,将该当前输入文本和历史对话输入至训练好的大语言模型中;通过大语言模型获得当前输入文本的多领域标签;以及获得历史对话中各段知识文本的类别;将历史对话中,与当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容;从而实现了对话上下文的筛选;该步骤通过大语言模型识别出历史对话中哪些对话与当前输入文本是强相关的,从而有针对性地选取上文内容组合成知识库检索用的匹配语句;类似的大语言模型筛选提示可以按下表1设计:
表1
在具体作业时,上述{query}使用用户的当前输入文本进行替换,历史的对话每一轮都用一个2维的字符串列表包括起来,让大语言模型挑选出来并输出。
(2)对话上下文总结重构:
如果上下文相关的对话文本过长,可以考虑总结重构上下文对话,浓缩上下文的文本再进行匹配;基于此,本发明实施例中在实现对话上下文筛选的基础上设置了上下文重构,该上下文重构为有条件触发,具体为对上述关联性对话内容的总字数进行判断:若关联性对话内容的总字数不满足预设条件,则对关联性对话内容进行压缩重构处理,浓缩成较短的文本;
具体地,该预设条件可设定为:关联性对话内容的总字数小于预设字数阈值;其中,预设字数阈值的确定需要参考使用的大语言模型的最大可接受token数和检索出的知识文本总字数来决定,同时要考虑预留一部分字数给指令文本,因此关联性对话内容的总字数应满足以下公式:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
根据上述的公式,可以确定关联性对话内容的总字数需要小于预设字数阈值tokensummary;如果超过该阈值,则需要通过大语言模型来对关联性对话内容进行总结重构,浓缩成较短的文本;
在上下文重构之后,应尽量保持重构之后的关联性对话内容和当前输入文本query拼接之后的总token数不超过512,亦即embedding模型可接受的最大token数。如果超过最大token数,则需要裁减检索匹配语句的长度;由于重构之后的关联性对话内容的字数是由预设字数阈值tokensummary来决定的,所以在公式中,由tokensummary+tokenquery≤512来表示;
总结重构上下文的提示文本prompt大致如下表2所示:
表2
之后根据上述的prompt总结压缩上下文的信息;上表中的“请将上述历史对话进行总结,保留关键信息和关键字眼”即为当前对应指令。
上述的上下文筛选,或上下文筛选+上下文总结重构,是基于用户的当前输入文本,对历史对话进行的处理;此外在该步骤S2中,还需要对当前输入文本进行向量化处理,获得向量化结果;具体包括:对每份知识文本进行切分处理;该切分处理可以基于Roberta的m3e模型来实现,由于m3e模型的输入限制文本长度为512个token(接近512个文字),所以需要对超过512个字的知识文本做截取;此外,该切分处理还可以基于其他向量模型来实现;在切分处理过程中,为了防止粗暴的切断文本破坏了文本语义的连贯性,在进行文本分割时,基于知识文本语义的连贯性,使分割差窗口适应性重叠;将切分处理后的知识文本输入至embedding模型中,获得对应的embedding向量(768维);并将该embedding向量作为向量化结果。
在上述步骤S3中,从上述关联性对话内容和当前输入文本中,抽取关键词;该步骤可以利用关键词表、停用词表和分词策略,通过结合句法分析得到。
在上述步骤S4中,通过训练好的大语言模型对关联性对话内容和当前输入文本进行领域分类。
在上述步骤S5中,根据步骤S4所得到的分类领域,从现有的庞大的知识库中筛选出子域,再在该子域中,将步骤S3中所得到的关键词与步骤S2所得到的向量化结果相结合;该步骤可利用Elasticsearch中自带的Reciprocal rank fusion(RRF)算法实现;之后根据结合结果,从构建好的ES向量数据库中进行匹配,获得与当前输入文本对应的多份相关知识文本;具体地,根据关键词,在结合embedding向量匹配到的相似度,给匹配到的文本一个综合的匹配分数,根据这个评分筛选出排名前几的相关知识文本;
在该步骤中,将关键词搜索和向量化结果搜索相结合,从而实现了混合搜索;该混合搜索的方式,相比简单地用向量匹配,能大幅提高召回率,通过加入关键词特征的方法,使匹配结果更可靠;
上述步骤S5目的是将匹配到的知识段落展示给用户;此外,还可以将匹配到的这多分知识文本的出处返回给用户,让用户了解当前大语言模型的回答依据来自于哪里;还可以将每份所述相关知识文本的匹配率返回给用户,尽量做到过程上的透明化。
参见图2所示,上述ES向量数据库的构建步骤包括:
(1)通过训练好的大语言模型对知识库中的多份知识文本进行分类,获得每份知识文本的多领域标签;
(2)对每份知识文本进行向量化处理,获取每份知识文本的embedding向量;此处的向量化处理可参见上述步骤S2;
(3)将每份知识文本,及对应的多领域标签和embedding向量均保存到ES向量数据库中,实现ES向量数据库的构建。
上述大语言模型的训练步骤包括:
(1)基于小样本(few shot)学习获取训练集;训练集包括示例文本和对应的多领域标签;在该步骤中需要注意的是,一个小样本的提示文本(prompt)有以下2个核心要点:
A、列出需要的完备标签供模型去选择;
B、给定的示例文本要尽量具有代表性,并覆盖所有的标签。
(2)将示例文本作为输入,将示例文本对应的多领域标签作为输出,对具有输出问答功能的大语言模型进行训练;训练后的大语言模型可以获得一段文本的多领域标签,并将标签赋予对应的知识块,作为知识块的一个字段,存储到数据库中;具体可参见下表3所示:
表3
综上,本发明实施例中,利用大语言模型+few shot的方式进行分类,相比通用模型和常规的大类标签来对知识文本进行分类来讲,效果更佳;且本发明实施例中,在基于few shot训练大语言模型时,对于不同的业务应用场景,可以根据业务需要,自定义多个标签来进行分类。
参见图3所示,本发明实施例中还公开了一种基于多源知识库的具有可溯源能力的问答系统,应用上述的问答方法;该问答系统包括:获取模块、第一处理模块、第二处理模块、分类模块和匹配模块;其中,获取模块,用于获取当前输入文本;第一处理模块,用于根据当前输入文本,从历史对话中筛选出关联性对话内容;并对当前输入文本进行向量化处理,获得向量化结果;第二处理模块,用于从关联性对话内容和当前输入文本中,抽取关键词;分类模块,用于对关联性对话内容和当前输入文本进行领域分类;匹配模块,用于根据分类的领域,将关键词与向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与当前输入文本对应的多份相关知识文本。
上述第一处理模块包括判断子模块;该判断子模块,用于对关联性对话内容的总字数进行判断:若关联性对话内容的总字数不满足预设条件,则对关联性对话内容进行压缩重构处理;其中预设条件包括:关联性对话内容的总字数小于预设字数阈值;具体表示为:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
上述第一处理模块包括筛选子模块;该筛选子模块,用于将当前输入文本和历史对话输入至训练好的大语言模型中;通过大语言模型,获得当前输入文本的多领域标签;以及获得历史对话中各段知识文本的类别;将历史对话中,与当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容。
上述第一处理模块还包括文本向量化子模块;该文本向量化子模块,用于对当前输入文本进行切分处理;在切分处理过程中,基于当前输入文本语义的连贯性,使分割差窗口适应性重叠;将切分处理后的当前输入文本输入至embedding模型中,获得对应的embedding向量;将embedding向量作为向量化结果。
上述匹配模块还包括第一获取子模块和第一获取子模块;其中,第一获取子模块,用于获得多份相关知识文本的出处;第二获取子模块,用于获得每份相关知识文本的匹配率。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本发明实施例中所提到的上下文关联识别,除了利用大语言模型方案,可以使用传统的句法分析结合代码逻辑规则来进行识别;该传统方案相对于大语言模型方案可以节省流程的延迟和资源消耗,但是需要一些人工介入和牺牲一定的泛化性;该传统方案的可行性需基于如下的假设前提和判断规则来体现:
(1)下文与上文关联表现在当前提问省略了主语或者宾语,因为该主语或者宾语在上文已经出现过了,所以在针对当前的问句做句法分析时,有明显的主语或者宾语的缺失,句子成分不完整,而上文的用户问句句子成分完整(即至少包含主谓宾),则可根据该规则判断与上文相关;
(2)下文与上文关联表现在当前问句所包含的名词性关键词在上文的问句或者回答中出现过,通过判断关键字是否存在于上文,可直接判断是否与上文有较强的关联性。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (16)
1.一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,包括如下步骤:
S1、获取当前输入文本;
S2、根据所述当前输入文本,从历史对话中筛选出关联性对话内容;并对所述当前输入文本进行向量化处理,获得向量化结果;
S3、从所述关联性对话内容和所述当前输入文本中,抽取关键词;
S4、对所述关联性对话内容和所述当前输入文本进行领域分类;
S5、根据分类的领域,将所述关键词与所述向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与所述当前输入文本对应的多份相关知识文本。
2.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,所述步骤S2还包括:
对所述关联性对话内容的总字数进行判断:若所述关联性对话内容的总字数不满足预设条件,则对所述关联性对话内容进行压缩重构处理。
3.根据权利要求2所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,所述预设条件包括:所述关联性对话内容的总字数小于预设字数阈值;具体表示为:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
4.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,在所述步骤S2中,所述根据所述当前输入文本,从历史对话中筛选出关联性对话内容,具体包括:
将所述当前输入文本和历史对话输入至训练好的大语言模型中;
通过所述大语言模型,获得所述当前输入文本的多领域标签;以及获得所述历史对话中各段知识文本的类别;将所述历史对话中,与所述当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容。
5.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,在所述步骤S2中,对所述当前输入文本进行向量化处理,获得向量化结果,具体包括:
对所述当前输入文本进行切分处理;在切分处理过程中,基于所述当前输入文本语义的连贯性,使分割差窗口适应性重叠;
将切分处理后的当前输入文本输入至embedding模型中,获得对应的embedding向量;将所述embedding向量作为向量化结果。
6.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,在所述步骤S4中,通过训练好的大语言模型对所述关联性对话内容和所述当前输入文本进行领域分类。
7.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,所述ES向量数据库的构建步骤包括:
通过训练好的大语言模型对知识库中的多份知识文本进行分类,获得每份所述知识文本的多领域标签;
对每份所述知识文本进行向量化处理,获取每份所述知识文本的embedding向量;
将每份所述知识文本,及对应的多领域标签和embedding向量均保存到ES向量数据库中,实现ES向量数据库的构建。
8.根据权利要求4或权利要求6或权利要求7所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,所述大语言模型的训练步骤包括:
基于小样本学习获取训练集;所述训练集包括示例文本和对应的多领域标签;
将所述示例文本作为输入,将所述示例文本对应的多领域标签作为输出,对具有输出问答功能的大语言模型进行训练。
9.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,在步骤S5中,还获得多份所述相关知识文本的出处。
10.根据权利要求1所述的一种基于多源知识库的具有可溯源能力的问答方法,其特征在于,在步骤S5中,还获得每份所述相关知识文本的匹配率。
11.一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,应用权利要求1-10任一项所述的问答方法;所述问答系统包括:获取模块、第一处理模块、第二处理模块、分类模块和匹配模块;
所述获取模块,用于获取当前输入文本;
所述第一处理模块,用于根据所述当前输入文本,从历史对话中筛选出关联性对话内容;并对所述当前输入文本进行向量化处理,获得向量化结果;
所述第二处理模块,用于从所述关联性对话内容和所述当前输入文本中,抽取关键词;
所述分类模块,用于对所述关联性对话内容和所述当前输入文本进行领域分类;
所述匹配模块,用于根据分类的领域,将所述关键词与所述向量化结果相结合,并根据结合结果,从构建好的ES向量数据库中进行匹配,获得与所述当前输入文本对应的多份相关知识文本。
12.根据权利要求11所述的一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,所述第一处理模块包括判断子模块;
所述判断子模块,用于对所述关联性对话内容的总字数进行判断:若所述关联性对话内容的总字数不满足预设条件,则对所述关联性对话内容进行压缩重构处理;
所述预设条件包括:所述关联性对话内容的总字数小于预设字数阈值;具体表示为:
其中,tokensummary表示预设字数阈值;tokeninstruct表示当前对应指令的字数;tokenhis表示关联性对话内容的字数;tokenquery表示当前输入文本的字数;tokenknowledge表示关联性对话内容中每一段知识文本的字数;K表示关联性对话内容中的第K段知识文本;tokentotal表示大语言模型最大可接受字数。
13.根据权利要求11所述的一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,所述第一处理模块包括筛选子模块;
所述筛选子模块,用于将所述当前输入文本和历史对话输入至训练好的大语言模型中;
通过所述大语言模型,获得所述当前输入文本的多领域标签;以及获得所述历史对话中各段知识文本的类别;将所述历史对话中,与所述当前输入文本的多领域标签对应类别的知识文本作为关联性对话内容。
14.根据权利要求11所述的一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,所述第一处理模块包括文本向量化子模块;
所述文本向量化子模块,用于对所述当前输入文本进行切分处理;在切分处理过程中,基于所述当前输入文本语义的连贯性,使分割差窗口适应性重叠;
将切分处理后的当前输入文本输入至embedding模型中,获得对应的embedding向量;将所述embedding向量作为向量化结果。
15.根据权利要求11所述的一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,所述匹配模块包括第一获取子模块;
所述第一获取子模块,用于获得多份所述相关知识文本的出处。
16.根据权利要求11所述的一种基于多源知识库的具有可溯源能力的问答系统,其特征在于,所述匹配模块包括第二获取子模块;
所述第二获取子模块,用于获得每份所述相关知识文本的匹配率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311827945.6A CN117874190A (zh) | 2023-12-28 | 2023-12-28 | 一种基于多源知识库的具有可溯源能力的问答方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311827945.6A CN117874190A (zh) | 2023-12-28 | 2023-12-28 | 一种基于多源知识库的具有可溯源能力的问答方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117874190A true CN117874190A (zh) | 2024-04-12 |
Family
ID=90591231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311827945.6A Pending CN117874190A (zh) | 2023-12-28 | 2023-12-28 | 一种基于多源知识库的具有可溯源能力的问答方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117874190A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382265A (zh) * | 2018-12-28 | 2020-07-07 | 中国移动通信集团贵州有限公司 | 搜索方法、装置、设备和介质 |
CN114003709A (zh) * | 2021-12-30 | 2022-02-01 | 中国电子科技集团公司第二十八研究所 | 一种基于问句匹配的智能问答系统和方法 |
CN116821309A (zh) * | 2023-08-28 | 2023-09-29 | 北京珊瑚礁科技有限公司 | 一种基于大语言模型的上下文构造方法 |
CN117271735A (zh) * | 2023-09-26 | 2023-12-22 | 金茂云科技服务(北京)有限公司 | 一种基于llm模型优化人机对话的方法和系统 |
-
2023
- 2023-12-28 CN CN202311827945.6A patent/CN117874190A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382265A (zh) * | 2018-12-28 | 2020-07-07 | 中国移动通信集团贵州有限公司 | 搜索方法、装置、设备和介质 |
CN114003709A (zh) * | 2021-12-30 | 2022-02-01 | 中国电子科技集团公司第二十八研究所 | 一种基于问句匹配的智能问答系统和方法 |
CN116821309A (zh) * | 2023-08-28 | 2023-09-29 | 北京珊瑚礁科技有限公司 | 一种基于大语言模型的上下文构造方法 |
CN117271735A (zh) * | 2023-09-26 | 2023-12-22 | 金茂云科技服务(北京)有限公司 | 一种基于llm模型优化人机对话的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765257B (zh) | 一种知识图谱驱动型的法律智能咨询系统 | |
CN112069298B (zh) | 基于语义网和意图识别的人机交互方法、设备及介质 | |
CN115238101B (zh) | 一种面向多类型知识库的多引擎智能问答系统 | |
CN110298033B (zh) | 关键词语料标注训练提取系统 | |
US8150822B2 (en) | On-line iterative multistage search engine with text categorization and supervised learning | |
CN112800170A (zh) | 问题的匹配方法及装置、问题的回复方法及装置 | |
CN110750635B (zh) | 一种基于联合深度学习模型的法条推荐方法 | |
WO2020233386A1 (zh) | 基于aiml的智能问答方法、装置、计算机设备及存储介质 | |
CN113505209A (zh) | 一种面向汽车领域的智能问答系统 | |
US11699034B2 (en) | Hybrid artificial intelligence system for semi-automatic patent infringement analysis | |
CN114357127A (zh) | 基于机器阅读理解及常用问题解答模型的智能问答方法 | |
CN111814477B (zh) | 一种基于争议焦点实体的争议焦点发现方法、装置及终端 | |
CN112287090A (zh) | 一种基于知识图谱的金融问题反问方法及系统 | |
CN112052317A (zh) | 一种基于深度学习的医学知识库智能检索系统及其方法 | |
CN115470338A (zh) | 一种基于多路召回的多场景智能问答方法和系统 | |
CN114742032A (zh) | 交互式数据分析方法、装置、设备、介质及程序产品 | |
CN113918702B (zh) | 一种基于语义匹配的在线法律自动问答方法及系统 | |
CN117332789A (zh) | 一种面向对话场景的语义分析方法及系统 | |
Ali et al. | K-means clustering to improve the accuracy of decision tree response classification | |
TWI734085B (zh) | 使用意圖偵測集成學習之對話系統及其方法 | |
CN113435213B (zh) | 针对用户问题和知识库返回答案的方法和装置 | |
CN111949781B (zh) | 一种基于自然语句句法分析的智能交互方法及装置 | |
CN117874190A (zh) | 一种基于多源知识库的具有可溯源能力的问答方法及系统 | |
CN113761081A (zh) | 一种用于对企业信息进行多维度组合检索的方法及其系统 | |
CN113392196A (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 |