AIを「自社の言葉づかい」や「決まった出力フォーマット」に、もっと寄せたいと思ったことはありませんか。
その願いをかなえる代表的な手段のひとつが ファインチューニング(fine-tuning) です。
名前はよく聞くのに、「RAG やプロンプトと何が違うのか」があいまいなまま使っている人は少なくありません。
選択肢が増えたぶん、「どれをいつ使うか」を外すと、コストばかりかかって成果が出ないことも起こりがちです。
この記事では、ファインチューニングが何を得意とし、どこで RAG やプロンプトと役割を分けるのかを、仕組みから整理します。
ファインチューニングとは何か
ファインチューニングは、すでに学習済みのモデルへ追加のデータを学ばせ、その振る舞いを目的に寄せていく手法です。
ゼロからモデルを作り直すわけではなく、完成品に「専門教育」をほどこすイメージが近いでしょう。
たとえば、汎用モデルに自社サポートの応対ログを数百〜数千件ぶん学ばせたとしましょう。
すると、そのトーンや言い回し、避けたい表現までを、短い指示で再現しやすくなります。
モデル自身の「クセ」として定着するので、毎回こまかく指示する必要が減るのが特徴です。
なぜ「追加学習」がいるのか
汎用モデルは広く浅く学んでいるぶん、特定業務の型やお作法までは知りません。
プロンプトで毎回こまかく指示すれば近づけられますが、その指示文はどんどん長く、重くなっていきます。
指示が長くなるほどトークン消費は増え、ちょっとした書き換えで結果がぶれやすくなるのも悩みどころ。
同じ指示を毎回書き続ける負担を、モデル側にまとめて覚えさせてしまおう——それがファインチューニングの発想です。
得意なこと・苦手なこと
ファインチューニングは、出力の形式・トーン・専門用語の一貫性を安定させたいときに効きます。
決まった JSON 形式で返してほしい、社内用語を正しく使ってほしい——そんな要望と相性が良いのが強みでしょう。
短いプロンプトでも狙った形で返るようになり、日々の運用がぐっと軽くなります。
決まった言い回しと形式が重視される分野ほど、この安定感はじわじわ効いてくるのです。
反対に苦手なのが、頻繁に変わる事実や最新情報を覚えさせること。
情報が変わるたびにモデルを学習し直すのは非効率で、そこは後述の RAG に任せるのが定石です。
プロンプト・RAG との使い分け
三つの手法は、AI への「知識の渡し方・仕込み方」が違うだけで、対立するものではありません。
ざっくり整理すると、それぞれの役割は次の表のとおり。
| 手法 | 知識の渡し方 | 向いている場面 | コスト感 |
|---|---|---|---|
| プロンプト | その場で指示する | まず試す・軽い調整 | ほぼ無料 |
| RAG | 外から知識を渡す | 最新・大量の事実を参照 | 中(検索基盤が必要) |
| ファインチューニング | 内側に教え込む | 口調・形式を固定したい | 高(学習データが必要) |
プロンプトはその場で指示、RAG は知識を外から渡す、ファインチューニングは振る舞いを内側に教え込む——この三段で捉えると迷いにくくなります。
判断の順番も、「プロンプト → RAG → ファインチューニング」の順に、軽いものから試すのが基本です。
まず試すべきはいちばん手軽なプロンプトで、これで足りるなら追加コストはほぼかかりません。
「最新の事実を参照させたい」なら RAG、「毎回の口調や形式を固定したい」ならファインチューニング、と切り分けます。
現場では、RAG で知識を渡しつつ、ファインチューニングで口調をそろえるような合わせ技もめずらしくありません。
始める前に知っておきたいコスト
手軽そうに見えて、ファインチューニングには 質のそろった学習データを用意する手間がかかります。
データが少なかったり偏っていたりすると、かえって出力がぶれてしまう点が要注意です。
学習データの質は、そのままモデルの品質に直結すると考えておくと安全でしょう。
さらに、土台のモデルが更新されれば、学習し直しが必要になる場合もあります。
だからこそ、いきなり学習へ走らず、プロンプトと RAG で届かない範囲を見極めてから検討するのが堅実です。
具体的な手順やデータ形式は、OpenAI の公式ガイドが参考になります。
最後に
ファインチューニングは万能薬ではなく、「振る舞いを固定したい」ときに効く一手です。
プロンプト・RAG・ファインチューニングの三択を、目的から逆算して選べるようになると、AI 活用の幅は一段広がります。
以上です。









コメントを残す