【ラフト(けんさくかくちょうファインチューニング)】
RAFT(検索拡張ファインチューニング) とは?
公開:
💡 答えを見つける訓練を、本番さながらの問題集でやり直す
📌 このページのポイント
- 正解文書(oracle)と不正解文書(distractor)を混ぜた文脈でLLMを訓練する
- 「どの文書に答えがあるか」の判別と「答えの引用」を同時に学習できる
- RAG環境でのファインチューニング専用設計で、汎用ファインチューニングより精度が高い
- 引用元を明示するCoT(連鎖思考)形式の回答を生成できるようになる
RAGってLLMに検索結果を渡して回答させる仕組みだよね。RAFTって何が違うの?
RAGはLLMに「検索結果を使いこなす能力」を前提にしているけど、普通のLLMはその訓練を受けていないんだよ。RAFTはその能力をファインチューニングで後付けする手法なんだ。
「検索結果を使いこなす能力」ってどういうことなの?
例えば10件の文書を渡されたとき、どれが本当に答えに関係する文書でどれがノイズかを見極めて、正しい文書から答えを引用する能力だよ。RAFTはこれを意図的に訓練するんだ。
じゃあどうやって訓練するの?
「正解が書かれた文書(oracle)」と「正解がないダミー文書(distractor)」を混ぜて渡して、その中から正しく答えを導くタスクを大量に練習させるんだよ。本番のRAG環境そのままの問題集で特訓する感じだね。
なるほど!汎用のファインチューニングとは目的が違うんだね。
そうだよ。汎用ファインチューニングは「この質問にはこう答えよ」と覚えさせるけど、RAFTは「この文書群からどう答えを探すか」を覚えさせる。RAG前提の設計だから精度の向上幅も大きいんだ。
回答に引用元を付けられるって聞いたけど、それも訓練の一部なの?
そうなんだよ。RAFT訓練では「答えは文書Aの〇〇という部分に書かれています」というCoT(連鎖思考)形式の回答を生成させるから、引用元を明示する習慣も同時に身につくんだ。ハルシネーション対策にもなるよ。
まとめ:ざっくりこれだけ覚えればOK!
「RAFT」って出てきたら「RAGのためのLLM専用特訓」と思えればだいたいOK!
📖 おまけ:英語の意味
「Retrieval Augmented Fine-Tuning」 = 検索拡張ファインチューニング
💬 RAG(Retrieval Augmented Generation)の検索ステップに強くなるようLLMを訓練する手法で、2024年にMicrosoftとUC Berkeleyの研究チームが提案したんだよ。