ファインチューニングとは?大規模言語モデルを自社データで調整する方法

汎用のLLMを自社データで再学習させ、業務に特化させるのが「ファインチューニング」です。RAGとの使い分け、LoRAなどの効率化手法、実施手順を解説します。

ファインチューニング:LLMを自社仕様にカスタマイズする技術

AI初心者

AIを知りたい

先生、ChatGPTのような大規模言語モデルを自社のデータで調整できると聞いたんですが、どうやるんですか?

AIエンジニア

AIエンジニア

それが「ファインチューニング」という手法だよ。事前学習済みの大規模言語モデル(LLM)に、特定の業務やタスクに関するデータを追加学習させて、性能を最適化するんだ。

AI初心者

AIを知りたい

一から学習させるのとは違うんですか?

AIエンジニア

AIエンジニア

全然違うよ。一から学習(プレトレーニング)するには何億ドルものコストと数ヶ月の時間が必要だけど、ファインチューニングはすでに言語を理解しているモデルに「専門知識」を追加するイメージだね。数百〜数千件のデータで、数時間〜数日で完了することが多いよ。

AI初心者

AIを知りたい

それなら現実的ですね。具体的にはどんな方法があるんですか?

AIエンジニア

AIエンジニア

大きく分けて「フルファインチューニング」と「パラメータ効率的ファインチューニング(PEFT)」の2つがあるよ。特に2026年現在は、LoRA(Low-Rank Adaptation)やQLoRAというPEFT手法が主流で、少ないGPUメモリでも効率的にファインチューニングできるんだ。

ファインチューニングとは。

ファインチューニング(Fine-tuning)は、事前学習済みの大規模言語モデル(LLM)を特定のタスクやドメインに最適化するための追加学習手法です。GPT-4、Claude、Llama、Geminiなどの基盤モデルは汎用的な言語能力を持っていますが、特定業界の専門用語や社内ルール、独自のタスクには最適化されていません。ファインチューニングでは、こうした特定のデータセットを用いてモデルのパラメータを調整し、ターゲットタスクでの性能を向上させます。2026年現在、フルファインチューニング(全パラメータを更新)に加え、LoRA、QLoRA、DoRAなどのパラメータ効率的手法(PEFT)が普及しており、消費者向けGPU(VRAM 24GB程度)でも70Bパラメータのモデルをファインチューニングできるようになっています。OpenAI、Google、Anthropicなどの主要プロバイダーはAPI経由のファインチューニングサービスも提供しています。

ファインチューニング手法の比較

ファインチューニングにはいくつかの手法があり、モデルのサイズ、利用可能なGPUリソース、データ量に応じて最適な方法を選択する必要があります。

手法 概要 必要VRAM(7Bモデル) 学習時間目安 メリット
フルファインチューニング 全パラメータを更新 約60GB(A100×1〜2) 数時間〜数日 最高精度、全層を最適化
LoRA 低ランク行列を追加して一部のみ学習 約16GB 1〜数時間 少ないリソースで高い効果
QLoRA 4bit量子化+LoRA 約6〜10GB 1〜数時間 消費者GPUで実行可能
DoRA 重みの方向と大きさを分離して学習 約16GB 1〜数時間 LoRAより高精度な傾向
API経由 OpenAI等のAPI経由で実行 不要(クラウド) 数時間 インフラ不要で手軽

AI初心者

AIを知りたい

LoRAってどういう仕組みなんですか?名前だけは聞いたことがあります。

AIエンジニア

AIエンジニア

LoRAは、元のモデルのパラメータは固定(凍結)したまま、小さな追加パラメータ(低ランク行列)だけを学習させる手法だよ。例えば70億パラメータのモデルがあっても、LoRAで実際に学習するのはその0.1%程度。だから圧倒的に少ないメモリで済むんだ。

AI初心者

AIを知りたい

QLoRAはさらに効率的なんですか?

AIエンジニア

AIエンジニア

そうだよ。QLoRAはモデルを4bit精度に量子化してからLoRAを適用する手法で、RTX 4090(24GB VRAM)のような消費者向けGPUでも70Bパラメータのモデルをファインチューニングできるんだ。2023年に発表されて以来、個人開発者や中小企業にとってのゲームチェンジャーになったよ。

ファインチューニング vs RAG vs プロンプトエンジニアリング

LLMをカスタマイズする方法はファインチューニングだけではありません。用途に応じてRAGやプロンプトエンジニアリングとの使い分けが重要です。

比較項目 ファインチューニング RAG プロンプトエンジニアリング
概要 モデル自体を追加学習で更新 外部データベースから情報を検索して回答 プロンプトの工夫で出力を制御
データの鮮度 学習時点で固定 リアルタイムに最新情報を参照 プロンプト内の情報のみ
導入コスト 中〜高(GPU・データ準備) 中(ベクトルDB構築) 低(追加コスト不要)
向いている用途 文体変更、専門知識、分類タスク 社内文書Q&A、最新情報の参照 簡単なタスク制御
ハルシネーション やや発生 根拠付きで抑制可能 抑制困難
保守コスト 再学習が必要 DBの更新のみ プロンプトの更新のみ

AI初心者

AIを知りたい

どういう場合にファインチューニングを選ぶべきなんですか?

AIエンジニア

AIエンジニア

ファインチューニングが有効なのは、モデルの振る舞いそのものを変えたい場合だよ。例えば「医療用語を正確に使えるようにしたい」「社内のメール文体に合わせたい」「特定の分類タスクの精度を上げたい」というケースだね。一方、最新の社内文書を参照して回答させたいならRAGが適しているし、簡単なタスクならプロンプトエンジニアリングで十分なことも多い。

AI初心者

AIを知りたい

まずはプロンプト、次にRAG、最後にファインチューニングという順番で検討するのが良さそうですね。

AIエンジニア

AIエンジニア

まさにそのとおり!2026年のベストプラクティスはRAGとファインチューニングの組み合わせで、ファインチューニングでモデルの専門性を高め、RAGで最新データへのアクセスを確保するハイブリッドアプローチが増えているよ。

ファインチューニングの実践手順

実際にファインチューニングを行う際の基本的なワークフローを紹介します。

まずデータセットの準備が最も重要です。一般的にはJSONL形式で「入力と出力のペア」を数百〜数千件用意します。データの品質がファインチューニングの成否を左右するため、ノイズの除去やフォーマットの統一を入念に行います。

次に、Hugging FaceのTransformersライブラリとPEFTライブラリを使ったLoRA/QLoRAでの学習が最も一般的な方法です。学習率は通常1e-4〜2e-5程度に設定し、過学習を防ぐためにバリデーションデータでの評価を必ず行います。

OpenAI APIを使う場合はさらに簡単で、JSONL形式のデータをアップロードしてAPI経由で学習を開始するだけです。2026年4月時点でGPT-4oのファインチューニングは1Mトークンあたり約$25で利用できます。

AI初心者

AIを知りたい

ファインチューニングで失敗しやすいポイントはありますか?

AIエンジニア

AIエンジニア

一番多い失敗は「データ品質の問題」だね。少量でも質の高いデータが大量の低品質データに勝る。また、過学習(Overfitting)で汎用性が失われるケースも多いから、必ず評価データで性能を確認しよう。それから、ファインチューニング済みモデルの安全性テスト(有害出力のチェック)も忘れずにね。

AI初心者

AIを知りたい

データの質が鍵なんですね。まずは少量の高品質データで試してみます!