RAG と微調整

LLM でデータを使用するには 2 つの方法があります。クエリ時の取得とトレーニングでの取得です。これらのコスト、トレードオフ、損益分岐点が実際にどのように異なるかは次のとおりです。

学ぶ › RAG と微調整

それぞれが実際に何をするのか

RAG (検索拡張生成) モデルは変更されないままになります。クエリ時に、独自のデータ (通常は埋め込まれたドキュメント チャンクのベクトル データベース) を検索し、ユーザーの質問に最も関連するいくつかの文章を取り出し、コンテキストとしてプロンプトに貼り付けます。その後、モデルはその挿入されたテキストを使用して応答します。あなたの知識は生きています モデルは呼び出されるたびに新たに検索されます。

微調整 モデル自体を変更します。基本モデルを取得し、独自の例でトレーニングを続けると、知識、口調、または動作が次のようになります。 焼き付けた 重りに。その後、モデルは、毎回参照資料を提供しなくても、スタイルを生成したり、専門分野の質問に答えたりします。ただし、モデルが「知っている」のは、その時点までにトレーニングされた内容だけです。

これを覚えておくための簡単な方法: RAG は、回答時に読むための開いた本をモデルに提供します。微調整により、内容が暗記されるまでモデルを学習することができます。

コスト構造が全く違う

これが 2 つのアプローチの最も相違点であり、「どちらが安いか」という素朴な質問に単一の答えがない理由です。

RAG — ほとんどが継続的な、クエリごとのコスト

微調整 — 前払いコスト、通話あたりの削減

RAGコスト計算ツール →微調整コスト計算ツール →

RAG が勝つ場合と微調整が勝つ場合

次の場合に RAG を選択してください…次の場合に微調整を選択してください…
知識は頻繁に変更されます (ドキュメント、価格、ポリシー)スタイル、形式、または動作が固定されており、反復可能である
コーパスは大きく、まだ成長中タスクが狭くて安定している
引用が必要です / 「これはどこから来たのですか」短いプロンプトと通話ごとの待ち時間を短縮したい
音量は小から中くらいですボリュームが非常に大きいため、小さいとトレーニングの償却が促進されます
ファクトを即座に追加または削除する必要があるモデルに指示できない一貫したトーンが必要です

この 2 つは相互に排他的ではありません。一般的な成熟したセットアップで微調整 動作と形式 RAG を使用している間、 現在の事実 — モデルはあなたの声で確実に答え、ライブデータを引用します。

作業結果の比較: 少量と大量

トレードオフの形状を示す実例の概数 — 常に現在のプロバイダーの料金を確認してください。中間層モデルを想定し、RAG が呼び出しごとに取得したコンテキストの入力トークンを最大 1,500 個追加し、微調整で呼び出しごとに最大 1,200 個の指示/例のトークンを削除すると、1 回限りのトレーニング費用として約 300 ドルと少額の月額ホスティング料金がかかります。

シナリオラグ微調整勝者
初期費用~$0 (ベクター DB の構築)~$300 のトレーニングラグ
10,000 件の通話/月合計が低い - この規模では追加のトークンが安価であり、回収するためのトレーニングは必要ありませんより高い — 数回の通話で 300 ドルが優勢ラグ
2,000,000 コール/月それ以上 — 1,500 追加トークン × 200 万が毎月、永久に加算されます低い - 呼び出しごとのトレーニングコストはわずかであり、プロンプトは無駄がありません微調整
事実は毎週変わりますインデックスを更新します。再トレーニングは必要ありません繰り返し再トレーニング – コストと遅延が積み重なるラグ

パターン: 小さい音量 回復するためのトレーニングコストがないため、RAG はほぼ常に勝ちます。で 非常に大音量、微調整によるコールごとのトークンの節約は、最終的に固定トレーニング コストを上回ります。「損益分岐点」は量のしきい値であり、固定ルールではありません。 Model the two side by side before committing.

微調整とプロンプト計算の計算 →

正直な答え: まずは安いものを試してみる

微調整は「真剣な」オプションのように思えますが、ほとんどのチームにとって、それは間違った最初の動きです。より良いプロンプトと RAG により、「モデルが私たちのことを知らない」問題の大部分が、より速く、より安価に、そしてはるかに少ないメンテナンスで解決されます。微調整により、データが変動するたびにトレーニング パイプライン、バージョン管理、評価、再トレーニングが追加され、実際の運用上の重要度が高まります。

賢明な順序: (1) プロンプトを改善し、例を追加します。 (2) データが必要な場合は、RAG を追加します。 (3) 数値が明らかに有利な場合、つまり無駄のないプロンプトがトレーニングに見合う非常に大量の場合、またはプロンプトが確実に生成できない動作が必要な場合にのみ微調整します。デフォルトではなく、証拠がそうであると判断した場合に微調整を行ってください。支出を削減する広範な方法については、 コスト削減ガイド.

LLM 請求額を削減 →その他の学習ガイド →

よくある質問

RAG は微調整よりも安価ですか?

音量により異なります。 RAG の初期費用はほぼゼロですが、埋め込み、ベクトル データベース、およびより大きな入力プロンプトによる継続的なクエリごとのコストが追加されます。微調整には固定の事前トレーニング コストがあり、通常はプロンプトが小さいため、トレーニング コストが多数の呼び出しに分散される非常に大量の場合にのみ、リクエストごとに安くなります。

RAG を使用せずに微調整する必要があるのはどのような場合ですか?

固定のスタイル、トーン、形式、動作を組み込む必要がある場合、タスクが毎日変化するのではなく安定している場合、レイテンシが重要で短いプロンプトが必要な場合、またはリクエストの量が十分に多く、プロンプトを小さくすることでトレーニング コストよりも節約できる場合に、微調整します。頻繁に変更される知識には、通常、RAG の方が適しています。

RAG と微調整を併用できますか?

はい、それは一般的です。微調整によってモデルに形式と動作が学習され、RAG はクエリ時に現在の事実を提供します。ほとんどのチームは、やはり最初にプロンプ​​トまたは RAG から開始し、数値や動作によって追加のコストと複雑さが明らかに正当化される場合にのみ微調整を追加する必要があります。

教育上の参考のみ — 価格は推定値です。各プロバイダーの料金ページで現在の料金を確認してください。