AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


RAG及文档理解工具梳理总结:兼看SELF-REASONING框架
发布日期:2024-08-12 19:57:11 浏览次数: 1737


今天是2024年8月9日,星期五,北京,天气晴。

本文主要讲2个话题,一个是回顾下昨日的大模型进展,其中,老刘说NLP社区第28讲计划在本周日8-11晚进行,主题暂定为7月份月度总结及大模型做知识图谱查询sparql生成实践,感兴趣的可参加。

此外,也包括一些现有文档处理方面的工具的集合,最近的风向是出现了越来越多类似的同质化工具。

例如,有一个新的叫MegaParse(https://github.com/QuivrHQ/MegaParse),支持 Text、PDF、PPT、Excel、CSV、Word。

主要是对Office类文件的解析,基于Pandas解析Excel,基于python-docx解析Word,基于python-pptx解析PPT。

结合Langchain进行文档加载、LlamaIndex-LlamaParse加强解析结果。

对PDF的解析,基于UnstructuredIO对非结构化的解析能力,结合LLM(在线LLMGPT-4o,离线LLM如lama3,对PDF扫描版等解析,基于多模态模型GPT-4o和Claude,把PDF解析为PNG再通过多模态模型进行解析。

但仔细一看,其优点在于,兼容了更多的格式,针对不同的格式,集成了不同处理组件。针对pdf文档,利用多模态模型处理;缺点在于,office文档处理组件基于开源(封装langchain),PDF页面内容解析依靠多模态模型,费token,速度慢,效果完全依赖多模态模型,且并未考虑文档细粒度布局信息。

而进一步的,现在这些工具几乎同质化的要命,总归就是几条路:

  • 1、原始office文档靠不同格式的组件进行处理;对于pdf扫描版本,走2)和3);
  • 2、做版式分析,把各区域标签抠出来,然后分流处理,一个是走向传统ocr,一个是调大模型做ocr等;
  • 3、不做版式分析,直接送多模态大模型处理;

这两讲都很有趣,值得一看看,会有收获。

另外,再来看看百度的RAG策略,SELF-REASONING框架,跟self-rag很像,也可供参考。


一、RAG进展之SELF-REASONING框架

SELF-REASONING框架 《improving Retrieval Augmented Language Model with Self-Reasoning》(https://arxiv.org/pdf/2407.19813)利用由LLM自身生成的推理路径。

Figure2在文章中提供了一个直观的比较,展示了SELF-REASONING框架是如何改善检索增强型语言模型(RALMs)的。这个图示分为三个部分,每个部分代表一种不同的方法来回答一个给定的问题:

  • 基本的语言模型(Basic LLMs):最上面的部分展示了一个没有使用检索增强的基本大型语言模型(LLM)。这种模型仅依赖于其内部知识来回答问题,不涉及外部信息的检索。

  • 标准的检索增强语言模型(Standard retrieval augmented LMs):中间部分展示了一个标准的RALM,这种模型会检索相关的文档,并使用这些检索到的文档来辅助回答问题。这种方法虽然能够利用外部知识,但可能受到检索到的不相关信息的干扰,影响回答的准确性。

  • SELF-REASONING框架:最下面的部分展示了文章中提出的SELF-REASONING框架。这个框架不仅检索文档,而且通过自我生成的推理轨迹(self-generated reason trajectories)来输出答案。这意味着模型会进行自我推理,通过相关性感知、证据感知选择和轨迹分析这三个过程,来提高答案的准确性和可靠性。

1、基本思想

在SELF-REASONING框架中,模型首先通过相关性感知过程(Relevance-Aware Process)判断检索到的文档是否与问题相关,并生成相关性的理由。

接着,通过证据感知选择过程(Evidence-Aware Selective Process),模型选择并引用相关的文档片段作为证据,并说明为什么这些片段能够支持问题的答案。

最后,在轨迹分析过程(Trajectory Analysis Process)中,模型综合所有生成的推理轨迹,提供一个简洁的分析和最终的推断答案。

2、具体细节

1)相关性感知过程

在这项工作中选择DPR和Contriever作为默认检索器R,以回忆起与问题相关的前k个文档。当面对一个问题和一组文档时,人们可以判断问题是否与检索到的文档相关。

因此,首先指导模型判断检索到的文档D与给定问题q之间的相关性,进一步要求模型明确生成解释为什么给定文档被识别为相关的理由。

输出应包括两个字段,即相关和相关理由,注意,如果所有检索到的文档都不相关,模型应基于其在预训练阶段获得的内部知识提供答案。

定义由RAP生成的自我推理轨迹为τr。

2)证据感知选择过程

当需要回答问题时,人们通常会首先从提供的文档中识别出关键句子,然后将其引用或突出显示为关键点。

引用文档的过程有助于阅读理解,并可以作为结合多个简短答案以解决各个方面的技术。虽然人们可能会立即执行这个选择过程和引用,但LLMs需要明确制定自我推理轨迹。

该工作要求LLM明确说明为什么选择的句子在回答问题时具有支持性和合理性。 定义所选句子为论文中的证据。具体来说,在检索到前k个文档之后,证据感知选择过程的自我推理方法可以表述如下:

首先,指导LLM选择相关文档,并自动为选定的文档选择关键句子片段。然后,要求LLM输出选择片段能够回答问题的理由。中间输出是一个包含多个内容的列表,每个内容应包括两个字段,即引用内容和引用理由,如图2所示。

定义由EAP生成的自我推理轨迹为τe。

3)轨迹分析过程

最后,将前两个过程中的所有自我推理轨迹(τr和τe)整合在一起,形成推理片段链,从而提高检索增强生成的整体性能。

具体来说,要求LLM在内部分析推理轨迹,并最终输出简洁的分析和简短答案。指导LLM输出包含两个字段的内容,即分析和答案。定义由TAP生成的自我推理轨迹为τa。

4)数据生成和质量控制

训练数据生成。对于相关性感知过程的数据生成,手动标记相关和不相关文档是标记密集型的,要求GPT-4生成答案作为真实情况。具体来说,指导GPT-4生成关于不相关字段的标签,并进一步输出给定文档不能回答问题的原因。

对应的prompt如下:

将给定问题和检索到的文档作为正样本进行连接。对于负样本,从训练集中随机选择一个不同的问题,并检索与之相关的前k个文档。然后,这些文档与初始问题连接,形成负样本。为了避免训练数据中的顺序偏差,打乱了文档的顺序。

对于EAP和TAP数据生成,手动标注每个问题的文档引用并为每个问题编写自我推理过程在实践中是不可行的。

因此,循与RAP类似的过程,首先指导GPT-4生成选定文档的片段,然后输出推理过程作为轨迹。构建EAP训练数据的方法与RAP相同,只是对GPT-4的指令不同。

对应的prompt如下:

3、实验效果

具体效果如下:


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询