RAFT 方法微调 RAG 模型

论文: RAFT: Adapting Language Model to Domain Specific RAG, 2024
链接: https://arxiv.org/pdf/2403.10131

核心思想:如何最好地准备考试?

传统方法的局限性

  • 基于微调的方法:通过”学习”来实现”记忆”输入文档或回答练习题而不参考文档
  • 基于上下文检索的方法:未能利用固定领域所提供的学习机会,相当于参加开卷考试但没有事先复习

RAFT的创新之处

相比之下,我们的方法RAFT利用了微调与问答对,并在一个模拟的不完美检索环境中参考文档——从而有效地为开卷考试环境做准备。

RAFT方法示意图

方法论详解

训练策略

让LLMs从一组正面和干扰文档中读取解决方案,这与标准的RAG设置形成对比,因为在标准的RAG设置中,模型是基于检索器输出进行训练的,这包含了记忆和阅读的混合体。

在测试时,所有方法都遵循标准的RAG设置,即提供上下文中排名前k的检索文档。

训练过程对比图

微调数据集准备样例

实验结果与性能评估

跨领域性能提升

RAFT在所有专业领域的RAG性能上有所提升,涵盖以下多个领域:

  • PubMed
  • HotPot
  • HuggingFace
  • Torch Hub
  • TensorflowHub

关键发现

  • 领域特定微调效果显著:领域特定的微调提高了基础模型的性能
  • 持续性优势:RAFT无论是在有RAG的情况下还是没有RAG的情况下,都持续优于现有的领域特定微调方法
  • 上下文训练的重要性:这表明了需要在上下文中训练模型的重要性

总结

RAFT方法的核心价值

适应特定领域的挑战

  • 适应特定领域的LLMs对于许多新兴应用至关重要,但如何有效融入信息仍是一个开放问题

技术融合创新

  • RAFT结合了检索增强生成(RAG)和监督微调(SFT),从而提高模型在特定领域内回答问题的能力

抗干扰能力提升

  • 训练模型识别并忽略那些不能帮助回答问题的干扰文档,只关注和引用相关的文档
  • 通过在训练中引入干扰文档,提高模型对干扰信息的鲁棒性,使其在测试时能更好地处理检索到的文档

实践资源

训练示例代码:https://github.com/lumpenspace/raft


RAFT方法为RAG系统在特定领域的应用提供了新的优化思路,通过模拟不完美检索环境的训练方式,显著提升了模型在实际应用场景中的表现。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇