随着大型语言模型在专门领域的应用不断扩展,高效和有效的适应技术变得越来越重要。RAFT(检索增强微调)是一种新颖的方法,它结合了检索增强生成(RAG)和微调的优势,专门针对领域特定问题回答任务。
领域适应的挑战
虽然大型语言模型是在大量数据上预训练的,但它们在专门领域(如医学研究、法律文件或企业特定知识库)中的性能往往有限。这是因为预训练数据可能无法充分代表这些专门领域的细微差别和复杂性。为了解决这个挑战,研究人员传统上采用了两种主要技术:检索增强生成(RAG)和微调。
检索增强生成(RAG)

RAG
RAG是一种技术,允许大型语言模型在推理过程中访问和利用外部知识源。
它通过将实时数据检索集成到生成过程中来实现这一点,从而使模型的输出更加准确和及时。RAG由三个核心步骤组成:检索,相关文档被收集;生成,模型根据检索到的数据生成输出;以及增强,进一步完善输出。
在RAG中,检索过程从用户的查询开始。大型语言模型分析查询并从外部数据库中检索相关信息,呈现一个数据池,模型可以从中提取信息来生成其输出。生成阶段将此输入合成一个连贯的叙述或答案。增强步骤通过添加上下文或调整连贯性和相关性来完善生成的输出。
RAG模型可以使用各种指标进行评估,评估其提供准确、相关和及时信息的能力。
微调

supervised-fine-tuning
微调,另一方面,涉及将预训练的大型语言模型适应特定任务或领域,通过进一步在较小的任务特定数据集上训练模型。这种方法允许模型学习模式并将其输出与所需任务或领域对齐。虽然微调可以提高模型的性能,但它往往无法有效地整合外部知识源或在推理过程中考虑检索不完善的情况。
RAFT方法

RAFT
RAFT代表检索感知微调,是一种专门为语言模型设计的创新训练方法,用于提高其在领域特定任务中的性能,特别是开放式问题回答。RAFT与标准微调不同之处在于准备的训练数据,包括带有相关和不相关文档的混合问题,以及从相关文本中提取的连续思考风格的答案。这种方法旨在提高模型不仅能够回忆信息,还能从提供的内容中推理和提取答案的能力。
从本质上讲,RAFT微调语言模型,使其在涉及从一组文档中读取理解和知识提取的任务中更加娴熟。通过训练模型使用既有“oracle”文档(包含答案)又有“干扰”文档(不包含答案),模型学会了更有效地区分和利用相关信息。
训练数据准备
RAFT的训练过程涉及将数据的一部分作为“oracle”文档,这些文档直接与答案相关,而其余数据仅由“干扰”文档组成。微调鼓励模型学习何时依赖其内部知识(类似于记忆)以及何时从上下文中提取信息。
RAFT的训练计划还强调了推理过程的生成,这不仅有助于形成答案,还能引用来源,类似于人类通过引用所读材料来证明其回应的方式。这种方法不仅为模型在检索增强生成(RAG)设置中做好准备,在这种设置中,模型必须考虑前k个检索文档,还确保模型的训练独立于所使用的检索器,从而允许灵活地应用于不同的检索系统。
这种方法有多种目的:
- 它训练模型识别和利用提供的上下文中的相关信息,模仿开放式问题回答设置。
- 它增强了模型忽略不相关信息的能力,这是有效的RAG的一个关键技能。
- 它让模型接触到答案不在上下文中的情况,鼓励它在必要时依赖自己的知识。
RAFT的另一个关键方面是将连续思考推理纳入训练过程。与其仅提供问题和答案对,RAFT生成详细的推理解释,包括相关文档的逐字引用。这些解释以连续思考格式呈现,指导模型完成推理的逻辑步骤以得出正确答案。
通过训练模型学习这些推理链,RAFT鼓励强大的推理能力的发展,并增强了模型利用外部知识源的能力。
评估和结果
RAFT论文的作者对各种数据集进行了广泛的评估,包括PubMed(生物医学研究)、HotpotQA(开放领域问题回答)和Gorilla APIBench(代码生成)。他们的结果表明,RAFT始终优于基线,例如带有或不带有RAG的领域特定微调,以及带有RAG的更大模型,如GPT-3.5。

RAFT改进了RAG性能
例如,在HuggingFace数据集上,RAFT实现了74%的准确率,相比领域特定微调(DSF)提高了31.41%,相比GPT-3.5带有RAG提高了44.92%。同样,在HotpotQA数据集上,RAFT相比DSF表现出28.9%的准确率提高。
RAFT的一个关键优势是其对检索不完善的鲁棒性。通过训练模型使用相关和不相关文档的混合,RAFT增强了模型区分和优先考虑相关信息的能力,即使检索模块返回次优结果。
作者证明,仅使用“oracle”文档进行微调通常会导致性能劣于包含干扰文档的配置。这一发现强调了在训练过程中让模型接触各种检索场景的重要性,以确保其在现实世界应用中的准备就绪。
实用应用和未来方向
RAFT技术对广泛的实用应用具有重大影响,包括:
- 问题回答系统:RAFT可以用于构建高精度和领域特定的问题回答系统,利用模型的学习知识和外部知识源。
- 企业知识管理:拥有大量知识库的组织可以利用RAFT开发定制的问题回答系统,允许员工快速访问和利用相关信息。
- 医学和科学研究:RAFT在生物医学研究等领域特别有价值,因为访问最新的研究成果和文献对于推进科学理解至关重要。
- 法律和金融服务:RAFT可以通过提供基于相关法律文件或财务报告的准确和上下文感知的回应来帮助这些领域的专业人士。
随着该领域的研究继续进行,我们可以期待RAFT技术的进一步进步和改进。潜在的未来方向包括:
- 探索更高效和有效的检索模块,针对特定领域或文档结构进行定制。
- 将多模态信息(如图像或表格)集成到RAFT框架中,以增强上下文理解。
- 开发专门的推理架构,以更好地利用训练过程中生成的连续思考解释。
- 将RAFT适应于超出问题回答的其他自然语言任务,例如摘要、翻译或对话系统。
结论
RAFT代表了领域特定问题回答语言模型领域的一项重大进步。通过将检索增强生成和微调的优势和谐地结合,RAFT使大型语言模型能够有效地利用外部知识源,同时也使其输出与领域特定模式和偏好保持一致。
通过其创新性的训练数据策划、连续思考推理的纳入以及对检索不完善的鲁棒性,RAFT为组织和研究人员提供了一种强大的解决方案,以解锁大型语言模型在专门领域的全部潜力。
随着对领域特定自然语言处理能力的需求不断增长,像RAFT这样的技术将在实现更准确、上下文感知和自适应语言模型方面发挥关键作用,铺平人类与机器之间的沟通成为真正无缝和领域无关的未来道路。