一种基于分组重排序的锅炉设计文档检索方法及系统与流程

摘要: 本发明涉及信息检索和自然语言处理,特别涉及一种基于分组重排序的锅炉设计文档检索方法及系统。背景技术:1、在面向锅炉设计等专业领域的检索增强生成(rag)应用中,...
一种基于分组重排序的锅炉设计文档检索方法及系统与流程

本发明涉及信息检索和自然语言处理,特别涉及一种基于分组重排序的锅炉设计文档检索方法及系统。

背景技术:

1、在面向锅炉设计等专业领域的检索增强生成(rag)应用中,为了兼顾检索的效率和准确性,通常采用"粗召回+重排序"的两阶段检索策略。粗召回阶段利用高效的双塔模型从大规模文档库中快速筛选出数百个可能相关的候选文档片段。然而,这些初步召回的结果需要进一步通过重排序模型进行精细筛选和排序,以确定最终提供给生成模型的少数几个最相关的上下文。

2、目前,主流的重排序方法是点排序(point-wise reranking)模型。该模型的核心思想是独立地评估每个候选文档片段与用户查询的相关性,并为每个片段计算一个绝对的相关性分数,最后根据分数高低进行排序。然而,这种方法存在两个显著的不足。首先,在准确性方面,由于每个候选片段的评分是独立进行的,模型无法在排序过程中直接比较不同候选结果之间的相对优劣。这种缺乏相对比较的机制,使得模型在处理语义相近或相关性判断边界模糊的场景时,难以区分细微的差异,从而影响最终的排序精度。

3、其次,在多样性方面,点排序模型倾向于召回内容高度相似的候选结果。当多个候选文档片段都包含查询中的核心关键词或在语义上高度重叠时,点排序模型可能会为它们赋予相近的高分。这导致最终排序靠前的结果可能只是从不同角度重复相同的信息,而忽略了其他可能同样相关但主题或角度不同的重要信息。这种结果的同质化,降低了检索系统的信息覆盖广度和实用价值,无法为用户或下游的生成模型提供全面、多维度的上下文信息。

4、因此,如何设计一种能够有效比较候选文档相对优劣、并提升检索结果多样性的重排序方法,是当前提升锅炉设计文档等复杂场景下rag系统性能的关键技术挑战。

技术实现思路

1、本公开的第一方面,提供一种基于分组重排序的锅炉设计文档检索方法,在获得由粗召回阶段产生的候选文档片段集合后,包括以下步骤:

2、s1:对所有候选文档片段的语义向量进行自底向上的层次聚类,构建二叉聚类树,并根据每个簇的语义中心与用户查询向量的相似度,自顶向下地按比例为聚类树的各个分支分配待选出的样本名额;

3、s2:对于每个被分配了待选名额的簇,采用基于大语言模型的迭代分组比较策略来精确筛选出最相关的片段,包括:将簇内的候选片段分组,每次将一组候选片段连同用户查询一同输入大语言模型,获得该组内的相对排序,通过让每个片段参与多次不同分组的比较,记录每次比较中的排名,计算每个片段的平均排名,并选择平均排名最高的候选片段;

4、s3:将从每个簇选出的平均排名最高的候选片段汇集起来,形成最终候选集,再将所述最终候选集输入大语言模型进行全局排序,生成最终的有序检索结果列表。

5、结合第一方面,所述层次聚类具体包括:将每个候选文档片段初始化为一个独立的簇,然后迭代地合并余弦相似度最高的两个簇,直至所有候选片段被合并到同一个根节点,形成一棵完整的二叉聚类树。

6、结合第一方面,根据每个簇的语义中心与用户查询向量的相似度自顶向下地按比例为各个分支分配待选出的样本名额,具体包括:

7、从根节点开始,对于任一需选出个样本的节点,其左右子节点分别为和,根据左右子簇与查询向量的余弦相似度按比例分配待选名额,其中左子簇分配名额

,

8、右子簇分配名额,并递归执行该分配过程直至节点被分配的待选名额为1。

9、结合第一方面,将簇内的候选片段分组,每次将一组候选片段连同用户查询一同输入大语言模型,获得该组内的相对排序中,每个候选片段需参与至少预设阈值d次比较,每次比较时从当前簇中选择比较次数最小的b个候选片段组成一个排序组,其中b为大语言模型单次可有效排序的片段数量。

10、结合第一方面,所述计算每个片段的平均排名为:

11、对于簇内任一候选片段,其平均排名,其中为该片段在所有参与比较中的排名记录集合,选择平均排名最小的候选片段作为该簇的代表。

12、结合第一方面,将从每个簇选出的平均排名最高的候选片段汇集起来中,汇集来自不同簇的最佳候选片段形成的最终候选集的数量为m,m的取值范围为10至20。

13、结合第一方面,所述候选文档片段为锅炉设计、制造或运维领域的文档片段。

14、本公开的第二方面,提供一种基于分组重排序的锅炉设计文档检索系统,包括:

15、粗召回模块,用于从文档库中快速筛选出候选文档片段集合;

16、层次聚类模块,用于对所有候选文档片段的语义向量进行自底向上的层次聚类,构建二叉聚类树,并根据每个簇的语义中心与用户查询向量的相似度,自顶向下地按比例为各个分支分配待选出的样本名额;

17、簇内分组排序模块,用于对于每个被分配了待选名额的簇,采用基于大语言模型的迭代分组比较策略来筛选出最相关的片段,包括将簇内候选片段分组输入大语言模型获得组内相对排序,记录每个片段在多次比较中的排名并计算平均排名,选择平均排名最高的片段;

18、全局聚合模块,用于将从每个簇选出的最佳片段汇集后输入大语言模型进行一次全局精细排序,生成最终有序的检索结果列表。

19、本公开的第三方面,提供一种电子设备,包括:

20、一个或多个处理器;

21、存储单元,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,能使得所述一个或多个处理器实现所述方法。

22、本公开的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述方法。

23、有益效果:本公开提供的一种基于分组重排序的锅炉设计文档检索方法及系统,通过对粗召回候选文档片段进行层次聚类并按与查询的相关度按比例分配各语义簇的待选名额,进而在每个簇内采用大语言模型进行迭代分组比较,使每个候选片段参与多次组内相对排序并计算其平均排名以选出各簇中最优片段,最后将来自不同语义簇的最佳片段汇集并进行全局精细排序,从而在排序过程中引入了候选间的相对比较机制并保证了结果的语义多样性,达到了显著提升检索排序准确性、增强结果信息覆盖广度、充分发挥大语言模型上下文理解能力以及有效改善下游检索增强生成整体输出质量。

1.一种基于分组重排序的锅炉设计文档检索方法,其特征在于,在获得由粗召回阶段产生的候选文档片段集合后,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,所述层次聚类具体包括:将每个候选文档片段初始化为一个独立的簇,然后迭代地合并余弦相似度最高的两个簇,直至所有候选片段被合并到同一个根节点,形成一棵完整的二叉聚类树。

3.根据权利要求2所述的方法,其特征在于,根据每个簇的语义中心与用户查询向量的相似度自顶向下地按比例为各个分支分配待选出的样本名额,具体包括:

4.根据权利要求1所述的方法,其特征在于,将簇内的候选片段分组,每次将一组候选片段连同用户查询一同输入大语言模型,获得该组内的相对排序中,每个候选片段需参与至少预设阈值d次比较,每次比较时从当前簇中选择比较次数最小的b个候选片段组成一个排序组,其中b为大语言模型单次可有效排序的片段数量。

5.根据权利要求4所述的方法,其特征在于,所述计算每个片段的平均排名为:

6.根据权利要求1所述的方法,其特征在于,将从每个簇选出的平均排名最高的候选片段汇集起来中,汇集来自不同簇的最佳候选片段形成的最终候选集的数量为m,m的取值范围为10至20。

7.根据权利要求1所述的方法,其特征在于,所述候选文档片段为锅炉设计、制造或运维领域的文档片段。

8.一种基于分组重排序的锅炉设计文档检索系统,其特征在于,包括:

9.一种电子设备,其特征在于,包括:

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至7中任意一项所述的方法。