AB
AiBoss站
百科

什么是检索增强微调(Retrieval-Augmented Fine-Tuning)?一种面向领域特定 RAG 的训练方法

检索增强微调(RAFT)是一种训练方法,旨在提升大语言模型在「开卷」领域内问答场景中的表现。它通过训练模型忽略无关的干扰文档,并逐字引用相关文档中的正确片段,结合思维链式回答来增强推理能力。该方法由论文提出,并在 PubMed、HotpotQA 和 Gorilla 数据集上进行了评估。

什么是检索增强微调(Retrieval-Augmented Fine-Tuning)?

检索增强微调(Retrieval-Augmented Fine-Tuning,简称 RAFT)是一种用于训练大语言模型(Large Language Model,LLM)的方法,旨在提升模型在「开卷」领域内问答(open-book in-domain question answering)场景中的表现。它要解决的问题是:当模型需要利用检索到的文档来回答特定领域问题时,如何让模型学会忽略无关的干扰文档,并准确引用相关文档中的正确内容。

根据 arXiv 论文《RAFT: Adapting Language Model to Domain Specific RAG》的描述,RAFT 是一种训练配方(training recipe),它通过让模型学习引用相关文档中的正确片段,并结合思维链(chain-of-thought)风格的响应,来增强模型的推理能力。

为什么重要

在 RAFT 出现之前,将新知识(例如时效性新闻或私有领域知识)注入预训练大语言模型主要有两种常见途径:基于检索增强生成(Retrieval-Augmented Generation,RAG)的提示(prompting),或者微调(fine-tuning)。然而,论文指出,模型获取此类新知识的最佳方法仍然是一个开放问题。

在领域特定的 RAG 场景中,模型通常会收到一个问题以及一组检索到的文档。这些文档中可能包含与问题无关的内容,论文将其称为「干扰文档」(distractor documents)。如果模型不能有效区分相关文档与干扰文档,就可能被无关信息误导,导致回答质量下降。RAFT 的重要性在于,它提供了一种后训练(post-training)方法,专门训练模型在这种「开卷」环境中更好地利用检索到的文档,而不是仅仅依赖预训练阶段的知识或简单的提示工程。

工作机制

根据论文描述,RAFT 的核心做法可以概括为以下几个要点:

  • 训练数据构造:给定一个问题以及一组检索到的文档,训练模型学会忽略那些对回答问题没有帮助的文档,即干扰文档。
  • 逐字引用:RAFT 要求模型逐字引用相关文档中能够帮助回答问题的正确序列(right sequence)。这种引用行为促使模型关注文档中的关键信息,而不是泛泛地生成答案。
  • 思维链式响应:RAFT 将逐字引用与思维链风格的响应相结合。论文指出,这种组合有助于提升模型的推理能力。
  • 训练目标:通过上述训练,模型能够在领域特定的 RAG 设置中,更好地利用检索到的文档来回答问题,而不是被干扰文档所迷惑。

论文将 RAFT 描述为一种训练配方,用于改进预训练大语言模型在领域内 RAG 中的表现。其代码和演示已开源。

典型例子

论文在多个数据集上评估了 RAFT 的效果。根据摘要,RAFT 在以下数据集上持续提升了模型的性能:

  • PubMed:一个生物医学领域的文献数据集。
  • HotpotQA:一个多跳问答数据集。
  • Gorilla:一个与 API 调用相关的数据集。

这些例子表明,RAFT 被应用于领域特定的 RAG 场景,并在这三个数据集上进行了性能验证。论文作者包括 Tianjun Zhang、Shishir G. Patil、Naman Jain、Sheng Shen、Matei Zaharia、Ion Stoica 和 Joseph E. Gonzalez。

边界与常见误解

需要明确的是,RAFT 是论文提出的一种训练方法,其效果和适用性基于论文中的实验设置。以下是一些边界与常见误解:

  • 并非适用于所有场景:RAFT 针对的是「开卷」领域内问答场景,即模型在回答问题时可以访问检索到的文档。对于闭卷问答或不需要检索的任务,该方法可能不适用。
  • 不是 RAG 的替代品:RAFT 是一种微调方法,用于改进模型在 RAG 设置中的表现,而不是替代检索增强生成本身。它假设已经有一组检索到的文档作为输入。
  • 效果因数据集而异:论文在 PubMed、HotpotQA 和 Gorilla 上报告了性能提升,但这不意味着在所有领域或数据集上都能取得相同效果。实际应用时需要根据具体任务进行评估。
  • 训练成本:作为一种微调方法,RAFT 需要额外的训练数据和计算资源。论文没有详细讨论其训练成本,但这是应用时需要考虑的因素。
  • 不是行业共识:RAFT 是特定论文提出的方法,其主张和效果应理解为该论文的研究成果,而非业界普遍共识。

参考资料