メインコンテンツまでスキップ

ファインチューニング vs プロンプティング vs RAG

中級

モデルが思いどおりに動かないとき、レバーは3つあります。そして人々は最も高価なものに真っ先に手を伸ばします。ここでは、実際にうまくいく順番を示します。

この順番で試す

1. プロンプティング — 常にここから始める

より明確な指示、例、役割、出力の制約(プロンプティングの基礎)。問題の大部分を解決し、追加コストはかからず、反復は即座にできます。「モデルがXを苦手としている」のほとんどは、実は「プロンプトが曖昧だった」だと判明します。

2. RAG — あなたの知識が必要なとき

ギャップが不足している情報や最新の情報(あなたの文書、あなたのデータ、現在の事実)なら、RAGを加えましょう。モデルに手を触れずに、知識を更新可能かつ引用可能に保てます。

3. ファインチューニング — 最後の手段、規模における挙動/フォーマットのために

ファインチューニングは、あなたの例でモデルをさらに訓練します。プロンプティング + RAGでも一貫したスタイル、フォーマット、タスクの挙動が得られず、しかも高品質な例が多数あり、それを正当化できる利用量があるときにだけ手を伸ばしましょう。

意思決定の表

あなたの問題手を伸ばすべきもの
曖昧/誤った出力、誤ったフォーマットプロンプティング
あなたのデータを知らない / 現在の情報が必要RAG
非常に特定のスタイル/挙動を、一貫して、規模で必要ファインチューニング
アクションを実行する必要がある(これらではなく、ツール利用/エージェント

なぜ人々は誤るのか

ファインチューニングは「モデルに教える」ことのように聞こえるので、本物の解決策のように感じられます。しかしそれは最も遅く、最も高価で、最も柔軟性に欠ける選択肢であり、新しい知識をうまく追加できず(それはRAGの仕事です)、下手にやってしまいがちです。まずはプロンプティングとRAGを出し切りましょう。たいていステップ3は不要です。

:::tip 組み合わせられる 強力なシステムは、しばしば良いプロンプト + 知識のためのRAGであり、ファインチューニングは狭い挙動上のニーズのために取っておかれます。これらは相互排他的ではありません。 :::

次に読む