AI知识库

53AI知识库

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


RankRAG:在LLMs中将上下文排序与RAG统一起来
发布日期:2024-10-20 11:35:51 浏览次数: 1545 来源:老贾探AI


研究背景

  1. 背景介绍
    大型语言模型(LLMs)在检索增强生成(RAG)任务中的应用。RAG技术通过从外部文档或数据库中检索相关上下文,并利用这些上下文来生成答案,广泛应用于处理长尾知识、提供最新信息和适应特定领域和任务。
  2. 研究内容
    设计一个能够同时进行上下文排序答案生成的RAG指令微调框架RankRAG,以解决现有RAG管道中的几个局限性。
  3. 研究难点
  • LLM在处理大量上下文时效率较低;
  • 现有的检索模型在高召回率方面的表现不足;
  • 专家排序模型的零样本泛化能力有限。
  1. 相关工作
    现有的RAG方法通常依赖于独立的检索器和LLM,存在检索器容量有限、选择top-k上下文的权衡以及专家排序模型的零样本泛化能力有限等问题。为了解决这些问题,研究者们提出了多种改进方法,包括多步检索过程过滤无关上下文以及指令微调方法等。

核心内容

  1. RankRAG框架的设计
  • 阶段一:监督微调(SFT):首先利用高质量的指令跟随数据集对LLM进行监督微调,以提高其指令跟随能力。数据集包括私人众包对话数据集、公共对话数据集、长形式问答数据集、LLM生成的指令以及FLAN和Chain-of-thought数据集。
  • 阶段二:统一指令微调:在第二阶段,RankRAG将LLM微调用于检索增强生成和上下文排序。微调数据集包括第一阶段的SFT数据、上下文丰富的问答数据集、检索增强问答数据集、上下文排序数据和检索增强排序数据集。所有任务都被标准化为统一的QA格式(x,c,y),以便于知识迁移。
  • RankRAG使用了以下五类SFT数据集:
  1. 上下文丰富的问答数据:包括标准问答和阅读理解数据集(如DROP、NarrativeQA、Quoref、ROPES、NewsQA、TAT-QA),以及对话式问答数据集(如HumanAnnotatedConvQA和SyntheticConvQA)。这些数据集帮助LLM学习如何使用上下文生成答案。
  2. 检索增强问答数据:在标准问答和阅读理解数据集的基础上,增加了使用BM25检索到的额外上下文,确保每个问题总共有五个上下文。这有助于LLM在生成答案时考虑更多的相关信息。
  3. 上下文排序数据:使用MS MARCO passage排名数据集,训练LLM判断给定查询与段落的相关性。这增强了LLM的上下文筛选能力。
  4. 检索增强排序数据:类似于检索增强问答数据,但在生成答案时需要明确识别所有相关的上下文。这进一步提升了LLM在生成答案时的准确性和相关性。

通过这些数据集的整合训练,RankRAG使LLM能够在检索和生成过程中同时考虑上下文的相关性,从而提高了整体的任务性能。

  1. 推理过程:RankRAG框架在推理阶段采用了检索-重排-生成的管道,具体步骤如下:
  • 检索:检索器从语料库中检索前N个上下文。
  • 重排序:RankRAG模型计算问题与检索到的N个上下文之间的相关性得分,并根据这些得分重新排序上下文,保留前k个最相关的上下文。
  • 生成:将重新排序后的前k个上下文与问题拼接后输入RankRAG模型,生成最终答案。

这种管道通过重排步骤有效地筛选出了最相关的上下文,减少了噪声和不相关信息的干扰,从而提高了答案生成的准确性和质量。

  1. 效率讨论
  • 时间效率:尽管增加了重排序步骤,RankRAG在实际应用中仍然具有较高的时间效率。研究表明,即使在N=20的情况下,RankRAG也能显著提高基线模型的准确率,而增加的时间开销相对较小。
  • 数据效率:RankRAG在使用少量排序数据的情况下就能取得良好的效果。实验结果显示,使用5k条排序数据(约MS MARCO数据集的1%),RankRAG已经能够获得非常令人满意的结果。

实验设计

  1. 任务和数据集:实验包括三类任务:开放域问答(OpenQA)、事实验证(Fact verification)和对话式问答(ConvQA)。数据集包括NQ、TriviaQA、PopQA、HotpotQA、2WikimQA、FEVER、Doc2Dial、TopiOCQA和INSCIT等。
  2. 基线模型:实验中使用的基线模型包括不使用RAG的LLMs、使用检索的LLMs(如Atlas和Raven)以及现有的RAG模型(如Self-RAG、RECOMP和InstructRetro)。
  3. 评估指标:对于OpenQA数据集,主要使用精确匹配(EM)作为评估指标;对于Fact verification,使用准确率(Acc);对于ConvQA数据集,使用F1分数作为评估指标。
  4. 实现细节:实验中使用Llama3 8B和70B作为主干模型,设置两阶段的批量大小为128和64,分别训练1000步和3300步。使用Adam优化器,学习率分别为5e-6和3e-7。

总结

提出一种新的RAG框架RankRAG,通过同时微调单个LLM来实现上下文排序和答案生成。实验结果表明,RankRAG在九个通用领域和五个生物医学领域的RAG基准测试中显著优于现有的RAG方法,尤其是在更具挑战性的问答数据集上表现突出。此外,RankRAG还展示了在不同LLM类型和规模上的良好适应性,展示了其在不同任务和领域中的适用性和鲁棒性。

引用

  • https://arxiv.org/pdf/2407.02485v1


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

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

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

联系我们

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

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询