基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品与流程

摘要: 本技术涉及人工智能,特别是涉及一种基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品。背景技术:1、随着大语言模型技术的发展,检索增强生成技术被应用...
基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品与流程

本技术涉及人工智能,特别是涉及一种基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品。

背景技术:

1、随着大语言模型技术的发展,检索增强生成技术被应用于企业知识管理、智能客服、智能问答等场景。该类技术通常将文档切分为若干文本块,通过嵌入模型将各文本块转换为向量并存入向量数据库;在响应用户查询时,将查询转换为查询向量,通过计算查询向量与各文本块向量之间的相似程度,检索出相似程度较高的若干文本块作为知识输出。

2、然而,上述技术在实际应用中,当查询所涉及的概念未在文本块中以相近表述出现时,相关知识往往无法被检索到,对复杂查询的召回不足;同时,各文本块彼此独立存储、独立参与计算,知识呈碎片化状态;此外,检索结果的排序未计及知识自身的时效性与用户使用情况,过时知识与低质知识易持续占据靠前位置。因此,如何提升知识检索的准确性,是本领域亟待解决的技术问题。

技术实现思路

1、基于此,有必要针对上述技术问题,提供一种能够提高知识检索准确性的基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品。

2、第一方面,本技术提供了一种基于智能知识库的知识检索方法,智能知识库包括向量数据库与图数据库,方法包括:

3、响应于用户查询指令,生成与用户查询指令对应的查询向量,并根据查询向量从向量数据库检索得到第一知识集;

4、从用户查询指令中确定关键实体,在图数据库中沿关键实体的关系边遍历,得到与关键实体对应的多个关联实体,并确定各关联实体与用户查询指令关联程度的相关性分数;

5、以关联实体的相关性分数为权重,将关联实体的向量叠加至查询向量,得到增强查询向量,并根据增强查询向量从向量数据库检索得到第二知识集;

6、基于第一知识集和第二知识集,确定目标知识集,并输出目标知识集。

7、在其中一个实施例中,在响应于用户查询指令,生成与用户查询指令对应的查询向量的步骤之前,方法还包括:

8、获取待入库文档,解析待入库文档,得到待入库文档的文本内容和元数据;

9、对文本内容进行分块,得到多个文本块,并为各文本块分配块标识;

10、将各文本块转换为文本块向量,并将文本块向量、块标识和元数据关联存储至向量数据库;

11、从多个文本块中抽取多个实体,并确定多个实体之间的关系,以多个实体分别为实体节点、以关系为关系边,生成实体关系图;

12、将实体关系图存储至图数据库,并将各实体节点与其对应的块标识关联存储。

13、在其中一个实施例中,从多个文本块中抽取多个实体,并确定多个实体之间的关系的步骤包括:

14、识别多个文本块中对应的多个实体,并确定各实体的实体类型;

15、将多个实体中指向同一对象的实体归并为同一实体,并将归并前的各实体对应的块标识关联至归并后的实体;

16、判定归并后的多个实体两两之间是否存在语义关联,并对存在语义关联的实体对确定关联类型,得到多个实体之间的关系。

17、在其中一个实施例中,响应于用户查询指令,生成与用户查询指令对应的查询向量,并根据查询向量从向量数据库检索得到第一知识集的步骤包括:

18、获取与用户查询指令关联的上下文信息;其中,上下文信息包括会话历史、用户偏好及长期记忆中的至少一项;

19、根据上下文信息对用户查询指令进行语义补全,得到补全后的查询指令,并将补全后的查询指令转换为查询向量;

20、根据查询向量,从向量数据库检索得到候选知识集,并对候选知识集进行过滤,得到第一知识集。

21、在其中一个实施例中,确定各关联实体与用户查询指令关联程度的相关性分数的步骤包括:

22、获取关联实体与用户查询指令之间的语义相似程度;

23、根据关联实体在遍历中相对于关键实体的路径深度,确定路径衰减因子,并统计关联实体在遍历中的出现频次;其中,路径衰减因子随路径深度的增大而减小;

24、基于语义相似程度、路径衰减因子和出现频次进行计算,得到关联实体的初始相关性分数;

25、将初始相关性分数映射为预设数量的离散等级,并滤除离散等级低于预设等级阈值的关联实体;

26、获取保留的关联实体与用户偏好及用户历史行为的匹配情况,根据匹配情况确定调整系数,并以调整系数对初始相关性分数进行调整,得到关联实体的相关性分数。

27、在其中一个实施例中,向量数据库中的文本块向量关联有其所属文本块的块标识,图数据库中的实体节点关联有其所源出文本块的块标识;以关联实体的相关性分数为权重,将关联实体的向量叠加至查询向量,得到增强查询向量,并根据增强查询向量从向量数据库检索得到第二知识集的步骤包括:

28、获取各关联实体所关联的块标识;

29、根据块标识,从向量数据库中获取块标识所关联的文本块向量,并将文本块向量作为关联实体的向量;

30、将用户查询指令与各关联实体组合,生成重构查询指令,并将重构查询指令转换为重构查询向量;

31、以关联实体的相关性分数为权重,将关联实体的向量叠加至重构查询向量,得到增强查询向量;

32、计算增强查询向量与向量数据库中各文本块向量之间的相似程度,并将相似程度满足预设检索条件的文本块向量所对应的知识确定为第二知识集。

33、在其中一个实施例中,向量数据库中的文本块向量关联有其所属文本块的块标识,基于第一知识集和第二知识集,确定目标知识集,并输出目标知识集的步骤包括:

34、合并第一知识集与第二知识集,并对合并所得的知识集进行去重,得到待评估知识集;

35、根据待评估知识集中各待评估知识对关联实体的命中情况及被命中的关联实体的相关性分数,确定待评估知识的语义分数;

36、根据待评估知识的存续时长,确定待评估知识的时效分数,并根据待评估知识所接收的用户反馈的类型,确定待评估知识的反馈分数;其中,时效分数随存续时长的增加而衰减;

37、基于语义分数、时效分数及反馈分数,计算得到待评估知识的综合分数;

38、根据综合分数对待评估知识集排序,并将排序结果满足预设输出条件的待评估知识确定为目标知识集,并输出目标知识集。

39、第二方面,本技术还提供一种基于智能知识库的知识检索系统,智能知识库包括向量数据库与图数据库,该系统包括:

40、第一检索模块,用于响应于用户查询指令,生成与用户查询指令对应的查询向量,并根据查询向量从向量数据库检索得到第一知识集;

41、相关性计算模块,用于从用户查询指令中确定关键实体,在图数据库中沿关键实体的关系边遍历,得到与关键实体对应的多个关联实体,并确定各关联实体与用户查询指令关联程度的相关性分数;

42、第二检索模块,用于以关联实体的相关性分数为权重,将关联实体的向量叠加至查询向量,得到增强查询向量,并根据增强查询向量从向量数据库检索得到第二知识集;

43、输出模块,用于基于第一知识集和第二知识集,确定目标知识集,并输出目标知识集。

44、第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述基于智能知识库的知识检索方法所执行的步骤。

45、第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于智能知识库的知识检索方法所执行的步骤。

46、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现上述基于智能知识库的知识检索方法所执行的步骤。

47、上述基于智能知识库的知识检索方法、系统、计算机设备及计算机程序产品,响应于用户查询指令,生成与用户查询指令对应的查询向量,并根据查询向量从向量数据库检索得到第一知识集;从用户查询指令中确定关键实体,在图数据库中沿关键实体的关系边遍历,得到与关键实体对应的多个关联实体,并确定各关联实体与用户查询指令关联程度的相关性分数;以关联实体的相关性分数为权重,将关联实体的向量叠加至查询向量,得到增强查询向量,并根据增强查询向量从向量数据库检索得到第二知识集;基于第一知识集和第二知识集,确定目标知识集,并输出目标知识集。

48、由此,以图数据库中的关系边作为文本块之间的关联通路,使得与用户查询指令在字面表述上存在差异、而在语义上相互关联的知识得以经由关键实体被触及,克服了仅以查询向量与文本块向量作单次相似程度匹配时,检索范围受限于查询自身表述的问题;同时,以相关性分数对各关联实体的重要程度予以量化,使得各关联实体对查询语义的影响强度得以区分,从而在扩展检索范围的同时保持了检索方向的稳定;进一步地,将相关性分数用作向量叠加的权重,使得图数据库中所发现的语义关联转化为向量空间中的偏移量并实际参与相似程度的计算,由此得到的增强查询向量所表征的语义范围较原查询向量更为宽广,据其检索得到的第二知识集与第一知识集在覆盖范围上相互补充;最终,对二者合并去重后按兼顾语义、时效与反馈的综合分数排序输出,使得排序结果既反映知识与查询的语义贴近程度,又反映知识自身的新旧程度与用户对其的认可程度,提升了知识检索的准确性。