文章介绍了一个名为AccurateRAG的端到端框架,旨在解决检索增强生成(RAG)在工业级应用中面临的文档解析、检索模型适应性和生成模型准确性等挑战。该框架包含预处理器、数据生成器、检索器和答案生成器四个模块化组件,能够处理“脏PDF”,生成微调数据,优化检索效果,并微调大模型以更好地利用检索信息。在FinanceBench等多个数据集上,AccurateRAG刷新了SOTA性能,显著提升了问答准确率,为构建更可靠的RAG应用提供了工程化解决方案。
📄 **精细化文档预处理**:AccurateRAG通过融合Unstructured和LlamaParse的双解析器,有效解决了PDF文档中表格、标题等结构信息丢失的问题,将复杂的表格转换为易于理解的Markdown格式,并按语义单元切分文档,确保信息在检索阶段不丢失。
💡 **自动化高质量QA数据生成**:利用LLama-3.1模型,AccurateRAG能够自动生成大量简单和复杂的问答对,并进行自验证,解决了微调RAG模型所需的高质量标注数据短缺问题,显著提高了金融领域检索的命中率。
🎯 **混合检索策略优化**:框架结合了语义搜索(微调BGE模型)和关键词匹配(BM25),并通过在验证集上自动评估策略,选择了最优的检索组合,显著提升了检索的准确性,尤其在处理专业术语和数字时表现更佳。
🧠 **扩展上下文微调LLM**:通过使用检索到的相关信息(排除原始文档)构建“扩展上下文”,并对Llama-3模型进行LoRA高效微调,AccurateRAG确保了LLM在生成答案时能够充分利用检索结果,避免忽略关键信息或产生矛盾。
🚀 **全面性能提升与SOTA验证**:AccurateRAG在FinanceBench数据集上达到了42%的准确率,远超基线系统。消融实验证明了各组件的有效性。在HotpotQA、PubMedQA等多个标准数据集上,AccurateRAG也取得了新的最佳性能(SOTA)。
PaperIdea 2025-10-09 13:01 广东

一、背景:为什么 RAG 仍然“答不准”?
大模型(LLM)再强,也记不住没训练过的私有数据或实时信息。检索增强生成(RAG)把“外挂知识库”塞进 prompt,看似解了燃眉之急,但工业级落地时常被三件事卡脖子:文档解析翻车:PDF 表格、标题、页眉页脚一塌糊涂,检索阶段就丢信息。检索模型“水土不服”:通用 embedding 在金融、医疗等垂直场景直接失灵。生成模型“睁眼说瞎话”:检索结果明明对了,LLM 却忽略关键片段,甚至自相矛盾。
AccurateRAG 正是 Qualcomm 团队给出的端到端工程答案:从“脏 PDF”到“可上线”只需一条流水线,并且在 FinanceBench、HotpotQA 等 6 个数据集上刷新 SOTA。二、方案总览:4 个模块化组件,一条流水线跑通
图1:AccurateRAG 四件套——Preprocessor → Data Generator → Retriever → Answer Generator组件 | 解决痛点 | 关键 trick |
PreprocessorPDF 表格结构丢失
双解析器融合:Unstructured + LlamaParse,表格转 Markdown
Data Generator缺少微调数据
LLM 自动生成(简单+复杂)QA 对,并自验证答案
Retriever通用 embedding 不精准
对比学习微调 BGE;BM25 混合;自动在验证集挑最佳策略
Answer GeneratorLLM 忽略检索结果
用“扩展上下文”微调 Llama-3,LoRA 高效适配
下面分模块展开,每个都给出对应论文原图/表,方便“看图说话”。2.1 Preprocessor:让表格“像人一样”可读
PDF输入
Markdown输出上:原始 PDF 表格;下:自动生成的 Markdown,行列结构完全对齐实现细节先用 Unstructured 把 PDF 转 HTML(OCR 级,结构好但字符误差)。再用 LlamaParse 转一次(字符准,但表格变纯文本)。对齐合并:以 Unstructured 结构为骨架,用规则把 LlamaParse 的“干净文字”填回去。按“语义单元”切 chunk,前后各留 10% 重叠,缓解多跳问答断片问题。2.2 Fine-tuning Data Generator:零成本拿到“千级”高质量 QA 对
附录 生成示例简单问句 vs 多句推理复杂问句流程对每个 chunk,prompt Llama-3.1 批量生成 5 简单 + 5 复杂问题。再用同一 chunk 让模型自答,过滤掉“答不上”或“答错”的伪问题。输出两批数据:(context, question) → 给 embedding 做对比学习(context, question, answer) → 给 LLM 做微调收益无需人工标注,3 小时自动产生 1.2 万 QA 对,直接让金融域检索 Top-5 命中率从 68% → 83%。
2.3 Retriever:语义 + 关键词双保险,还能“自动换挡”
表1 消融实验表1:FinanceBench 上不同检索策略对比三件套Semantic Search:自监督微调 BGE-large,难负例 + in-batch 负例。Conventional Search:BM25 关键词匹配,应对专有名词、数字。Retrieval Evaluation:在验证集跑 RRF 混合、纯语义、纯 BM25,自动挑冠军。结果纯语义已把准确率从 19% 拉到 38.7%;再上混合策略 **最终 42%**。在 APIBench 上,混合策略比纯语义再 +2.7%(表2)。2.4 Answer Generator:用“扩展上下文”微调,让 LLM 不得不“看”检索结果
图6 UI 截图图6:Answer Generator 微调界面——选模型、调 LoRA 超参一键启动训练数据构造对每条 QA,用 Retriever 再取 Top-N-1 相关 chunk(排除原始 chunk)。原始 + 新 chunk 随机打乱 → “扩展上下文”三元组(扩展上下文, 问题, 答案)喂给 Llama-3-8B,LoRA rank=32。推理实时取 Top-N 相关 chunk,拼接后直接生成答案。用 Llama-3.1-8B-Instruct 当“评判”,自动输出 TRUE/FALSE,省去人工对答案。三、结论
FinanceBench 数据集评估:
AccurateRAG 在 FinanceBench 测试集上取得了 42% 的准确率,显著高于基线系统的 19%。消融实验表明,使用原始文本嵌入模型(不进行微调)会使准确率降低 3%,而替换预处理器为 Unstructured 预处理器会导致准确率降低 4%,证明了 AccurateRAG 中这些组件的有效性。其他基准数据集评估:
在 HotpotQA、PubMedQA 和 APIBench(HuggingFace、Torch Hub、TensorFlow Hub)等五个标准基准数据集上,AccurateRAG 相较于 RankRAG 和 RAFT 等现有系统取得了更高的分数,实现了新的最佳性能(SOTA)。https://arxiv.org/pdf/2510.02243
AccurateRAG: A Framework for Building Accurate Retrieval-Augmented Question-Answering Applications
阅读原文
跳转微信打开