一种基于大语言模型和条件依赖图的RAG多跳问答方法与设备

摘要: 本发明涉及自然语言处理、信息检索与大语言模型应用,尤其是涉及一种基于大语言模型和条件依赖图的rag多跳问答方法与设备。背景技术:1、随着大语言模型技术的快速发展...
一种基于大语言模型和条件依赖图的RAG多跳问答方法与设备

本发明涉及自然语言处理、信息检索与大语言模型应用,尤其是涉及一种基于大语言模型和条件依赖图的rag多跳问答方法与设备。

背景技术:

1、随着大语言模型技术的快速发展,多跳检索增强生成通过从外部知识库中检索相关文档并将其作为上下文提供给大语言模型,有效缓解了模型幻觉和知识过时问题,已广泛应用于问答、对话和知识密集型任务。然而,对于涉及多步推理的复杂查询,传统的单轮检索-生成范式难以胜任。例如查询"某股票今年的涨幅是否跑赢了大盘?如果是,该公司近三年是否持续盈利?"需要先查询该股票与大盘的涨跌幅并进行比较,再根据比较结果决定是否进一步查询公司的盈利情况,这种包含条件分支的推理链无法通过单次检索完成。

2、现有多跳rag方法主要存在以下问题:

3、1.串行迭代方法采用逐步推理方式,每一步基于上一步结果生成新的检索查询,虽然推理质量较高,但由于严格串行执行,在子任务较多时延迟显著增大,且无法对独立子任务进行并行优化。

4、2.基于有向无环图(directed acyclic graph,dag)的方法将子任务组织为dag进行并行调度,降低了执行延迟,但dag仅能表达串行和并行两种依赖关系,无法建模条件分支和互斥选择,对于包含此类结构的查询必须执行所有分支,产生不必要的计算开销。

5、3.需要微调的方法通过微调子任务规划器实现动态规划,虽然推理质量高,但需要数千条标注数据和大量计算资源进行训练,限制了其在新领域的快速部署能力。

6、经过检索中国专利公开号cn120723869a公开了一种rag多跳问答方法和装置、系统、存储介质,包括:训练规划模型与信息抽取模型;通过训练好的规划模型将复杂问题解析为检索子任务与推理子任务;结合余弦相似度算法与相对边界距离算法进行双路径文档检索,得到主要索引结果和辅助检索结果;对主要索引结果和辅助索引结果并行处理,将处理结果顺序连接得到最终检索结果;其中,并行处理为将对应的文本片段基于主题整合并进行句子级别文本过滤;利用训练好的信息抽取模型处理检索子任务与推理子任务,整合所有中间结果生成最终答案。但是该现有专利将复杂问题仅分解为检索子任务和推理子任务,无法处理条件分支与互斥选择;同时该现有专利按规划序列顺序执行所有子任务,无论中间结果是否满足某些后续前提,均需完成全部分解后的检索与生成步骤;并且该现有专利需预先使用多跳问答数据集对规划模型和信息抽取模型进行低秩微调,依赖标注数据与训练算力。

7、因此,亟需一种能够在外部知识检索场景下兼顾依赖建模完备性、执行效率、条件分支与互斥选择处理能力和零微调部署便捷性的多跳检索增强生成方法和电子设备。

技术实现思路

1、本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于大语言模型和条件依赖图的rag多跳问答方法与系统。

2、本发明的目的可以通过以下技术方案来实现:

3、根据本发明的一个方面,提供了一种基于大语言模型和条件依赖图的rag多跳问答方法,包括:

4、步骤s1:接收自然语言查询,评估所述自然语言查询复杂度;

5、步骤s2:利用大语言模型将所述自然语言查询分解为多个子任务并构建条件依赖图;

6、其中所述条件依赖图中每个节点表示一个子任务,每条有向边表示两个子任务之间的依赖关系,所述依赖关系包括串行依赖、并行依赖、条件依赖和互斥依赖四种类型;

7、步骤s3:采用基于拓扑排序的算法对所述条件依赖图进行结构验证检测并消除有向环,验证所述条件依赖的条件表达式和所述互斥依赖的对称性;

8、步骤s4:识别当前所有前驱任务已完成且未被跳过的就绪任务;

9、步骤s5:对与所述就绪任务中存在所述互斥依赖的任务对,根据所述条件依赖评估结果选择执行其中一个,跳过另一个;

10、步骤s6:将所述就绪任务提交至线程池并行执行,对每个就绪任务利用所述前驱任务的执行结果对当前任务描述重写,将重写后的描述作为检索查询检索文档,基于检索结果和前驱任务答案生成子答案;

11、步骤s7:当前任务完成后,评估其后继任务的条件依赖,若所述条件依赖条件不满足则将所述后继任务标记为跳过;

12、步骤s8:重复步骤s4至步骤s7直到无就绪任务;

13、步骤s9:对所有已完成子任务的答案进行无效答案过滤和近似重复去重得到有效答案,将所述有效答案与所述自然语言查询输入大语言模型进行融合,生成最终答案并返回。

14、作为优选的技术方案,所述条件依赖图定义为四元组:

15、

16、其中为节点集合,每个节点包含任务标识、任务描述和优先级;为有向边集合,每条边包含源任务、目标任务和依赖类型;为条件映射函数,将每条条件依赖边映射到一个条件表达式;为互斥任务对集合,满足对称性。

17、作为优选的技术方案,所述条件依赖图的生成方法包括:基于提示工程的方法,将查询和少样本示例输入大语言模型,由模型以json格式输出cdg的节点和边定义;

18、或者所述条件依赖图的生成方法包括:基于微调模型的方法,将查询输入经过微调的小型语言模型,所述微调数据由大型语言模型基于少样本提示生成。

19、作为优选的技术方案,所述步骤s5具体包括:当两个互斥任务同时就绪时,分别评估各自的条件依赖表达式是否被前驱任务的结果满足,若一方条件满足而另一方不满足,则执行条件满足的一方;若两者条件均满足或均不满足,则选择优先级较高的一方执行;被跳过的互斥任务的所有后继任务同样被标记为跳过。

20、作为优选的技术方案,所述任务描述重写的方法为:获取当前子任务的所有前驱任务的执行结果,将任务描述中对前驱任务标识的显式引用替换为前驱任务的实际结果,将任务描述中的回指表达替换为前驱任务的实际结果。

21、作为优选的技术方案,所述回指表达指的是用简短的词或短语来指代前文已经提到过的人、事、物、概念。

22、作为优选的技术方案,所述条件依赖的评估采用基于规则的多策略方法:若子任务结果以肯定词或否定词开头,结合条件表达式中是否包含否定关键词进行布尔判断;否则提取条件表达式中的关键实体词,计算关键实体词在子任务结果中的匹配比例,当匹配比例大于或等于预设阈值时判定条件满足。

23、作为优选的技术方案,所述就绪任务的识别过程还包括信息增益过滤步骤,计算每个就绪子任务相对于已有答案集合的信息增益,当信息增益低于预设阈值时跳过该子任务;

24、所述信息增益基于子任务描述与原始查询中未被已有答案覆盖部分的词汇重叠度计算。

25、作为优选的技术方案,所述无效答案过滤包括过滤空答案、任务标识占位符和通用否定回复,近似重复去重基于归一化编辑距离计算子答案间的相似度,将相似度高于预设阈值的重复答案合并。

26、根据本发明的另一个方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现所述的方法。

27、与现有技术相比,本发明具有以下有益效果:

28、1.表达能力更强

29、传统dag仅支持串行、并行两种依赖,本发明提出的条件依赖图新增条件依赖、互斥依赖两种边类型,共支持串行、并行、条件、互斥四类依赖关系,可精准建模包含条件分支、互斥选择的复杂查询,覆盖更多真实场景的推理逻辑。

30、2.执行效率更高,降低冗余开销

31、1) 引入条件剪枝机制:通过基于规则的条件评估,对不满足条件的后继任务直接标记为跳过,避免执行无用分支,减少文档检索和大语言模型调用次数;

32、2)支持并行调度:无依赖关系的就绪任务可提交至线程池并行执行,相比传统串行迭代方法显著降低端到端延迟;

33、3)增设信息增益过滤:对信息增益低于阈值的就绪子任务直接跳过,进一步减少无效计算。

34、3.部署成本低,可迁移性强

35、cdg生成采用提示工程方案,仅需将查询和少样本示例输入大语言模型即可输出cdg结构,无需任务特定的标注数据进行微调,可直接适配任意大语言模型后端和不同业务领域,实现零微调即插即用,降低开发和维护成本。

36、4.答案质量高

37、最终答案生成阶段设置无效答案过滤、近似重复去重环节:过滤空答案、占位符、通用否定回复,合并相似度高的重复答案,再结合原始查询进行融合,确保最终输出的准确性和完整性。