はじめに
「Fine-tuning と RAG を使用するべきですか?」 — これは、2025 年から 2026 年のあらゆる AI ミートアップ、フォーラム、インタビューで最もよく聞かれる質問です。正解: 解決している問題によって異なります。この記事では、正しく答えるためのフレームワークを提供します。
1. 診断: 知識のギャップと行動のギャップ
基本原則
┌─────────────────────────────────────────────────────┐
│ │
│ Model KHÔNG BIẾT thông tin bạn cần? │
│ → Knowledge Gap → RAG 📚 │
│ │
│ Model BIẾT nhưng KHÔNG LÀM ĐÚNG cách bạn muốn? │
│ → Behavior Gap → Fine-tuning 🎯 │
│ │
│ Cả hai? │
│ → Fine-tuning + RAG (Hybrid) 🔀 │
│ │
└─────────────────────────────────────────────────────┘
2. 詳細を比較する
2.1 総合比較表
| 基準 | ラグ | 微調整 |
|---|---|---|
| 解決済み | 知識ギャップ(情報不足) | 行動ギャップ(行動) |
| データは変更される可能性があります | 通常→強 RAG | 少し変化→FT適 |
| 更新 | インスタント(DB更新) | 遅い (モデルを再トレーニング) |
| 説明可能 | 曹操 (出典引用) | 低 (ブラック ボックス) |
| セットアップ費用 | $50–$500 | $50–$10,000+ |
| メンテナンス費用 | 低 (更新データのみ) | 高 (必要に応じて再トレーニング) |
| レイテンシ | 遅い (取得ステップが増える) | より高速 (取得不要) |
| 精度 | 検索の品質に依存 | トレーニングデータに依存 |
| 幻覚 | リデュース(ソースあり) | (データが悪い場合は) それでも可能です。 |
| 大規模 | 回収コスト/時間 | 1 回のトレーニング セッションの費用 |
2.2 実践例
Case 1: Chatbot hỗ trợ khách hàng cần biết chính sách công ty
→ Chính sách thay đổi thường xuyên
→ Cần cite nguồn cho customer
→ RAG THẮNG ✅
Case 2: Model phải trả lời bằng tiếng Việt, formal, format markdown cụ thể
→ Đây là "hành vi" không phải "kiến thức"
→ Prompt engineering không ổn định
→ FINE-TUNING THẮNG ✅
Case 3: Model y khoa cần biết thuật ngữ chuyên ngành VÀ access medical records
→ Thuật ngữ = behavior (fine-tune)
→ Medical records = knowledge (RAG)
→ HYBRID THẮNG ✅
Case 4: Model cần trả lời giá sản phẩm real-time
→ Giá thay đổi liên tục
→ Fine-tune sẽ bị outdated ngay lập tức
→ RAG (hoặc Tool Use) THẮNG ✅
Case 5: Model nhỏ (Flash/Mini) cần perform như model lớn (Pro/4o)
→ "Chắt lọc" kiến thức từ model lớn xuống nhỏ
→ Distillation = một dạng fine-tuning
→ FINE-TUNING THẮNG ✅
3. 意思決定のフローチャート
┌─────────────────────┐
│ Bạn cần gì từ LLM? │
└──────────┬──────────┘
│
┌────────────────┼────────────────┐
▼ ▼ ▼
┌─────────────┐ ┌──────────────┐ ┌──────────────┐
│ Kiến thức │ │ Hành vi │ │ Cả hai │
│ mới/riêng │ │ /Style/Format│ │ │
└──────┬──────┘ └──────┬───────┘ └──────┬───────┘
│ │ │
▼ ▼ ▼
┌──────────┐ ┌─────────────┐ ┌──────────────┐
│ Data thay│ │Prompt eng. │ │ FT cho style │
│ đổi nhiều│ │ đã thử? │ │ + RAG cho │
│ không? │ │ │ │ knowledge │
└─────┬────┘ └──────┬──────┘ └──────────────┘
Yes │ No No │ Yes
│ │ │ │
▼ ▼ ▼ ▼
┌───┐┌────┐ ┌───┐┌─────────┐
│RAG││Cả 2│ │Thử││Fine-tune│
│ ││ │ │PE ││ │
└───┘└────┘ └───┘└─────────┘
4. ハイブリッド アプローチ — 両方の長所を活かす
4.1 ハイブリッド アーキテクチャ
# Fine-tune model cho: style, format, domain terminology
# RAG cho: factual data, recent information
class HybridAI:
def __init__(self):
self.model = "ft:gpt-4o-mini:xdev:customer-support:abc123" # Fine-tuned
self.rag = RAGPipeline(collection="company_docs") # RAG
def answer(self, question):
# Step 1: Retrieve relevant context
context = self.rag.search(question, top_k=3)
# Step 2: Use fine-tuned model with context
response = openai.chat.completions.create(
model=self.model, # Fine-tuned model → đúng style/format
messages=[
{"role": "system", "content": f"Context:\n{context}"},
{"role": "user", "content": question}
]
)
return response.choices[0].message.content
4.2 ハイブリッドをいつ使用するか?
- 個別のスタイルと個別のデータの両方が必要
- 大規模エンタープライズシステム
- 専門領域(医療、法律、金融)
- 予算は両方とも十分です
5. 実践的なケーススタディ
ケーススタディ 1: カスタマー サポート ボット — RAG が勝利
問題: チャットボットは 500 以上の製品に関する質問に答える必要があり、ポリシーは毎週変わります。
微調整を試す: モデルは古いポリシーに基づいており、更新ごとにトレーニングが必要です。コストは $200/回 × 4 回/月 = $800/月です。
RAG を試す: データベースを 5 分で更新します。取得コストはクエリあたり ~0.001 ドルです。月額料金: ~$50。
結論: RAG は 16 倍安く、常に最新の状態です。
ケーススタディ 2: コード レビュー ボット — 微調整が成功
問題: モデルは、チーム独自のコーディング標準 (命名規則、アーキテクチャ パターン、非常に特殊なエラー処理スタイル) に従ってコードをレビューする必要があります。
プロンプトを試行: システム プロンプトが長すぎます (3000 トークン)。まだ一貫性がありません。
RAG を試してください: コーディング標準ドキュメントに十分なコンテキストがありません。出力が汎用的すぎます。
微調整を試す: 200 例 (コード + レビュー コメント) → モデルの一貫性 95% 以上、システム プロンプトが 3000 → 200 トークンに減少しました。
結論: 微調整により、トークン コストが 93% 削減され、一貫性が向上します。
ケーススタディ 3: 医療 Q&A — ハイブリッドの勝利
問題: 医療チャットボットは専門用語を理解し、患者記録に基づいて応答する必要があります。
解決策: ベトナム語の医療用語と患者記録の RAG を微調整します。
6. コストの比較: 具体的な数値
シナリオ: 10,000 クエリ/日、30 日間
| アプローチ | セットアップ費用 | 月次推論 | 合計/月 |
|---|---|---|---|
| ベースモデル + プロンプト | $0 | ~$300 | $300 |
| ラグ | $200 (1回) | ~$400 (取得オーバーヘッド) | $400 |
| 微調整 | $100–$500 (1 回) | ~$250 (短いプロンプト) | $250 |
| ハイブリッド | 500ドル | ~$350 | $350 |
💡 システムプロンプトを短縮できれば、微調整は基本モデルより 安価 になります (トークンが少なくなる = お金が減ります)。ただし維持費込み!
レッスンの概要
- 知識ギャップ → RAG | 動作のギャップ → 微調整 | 両方 → ハイブリッド
- データが頻繁に変更される → RAG (即時更新)
- スタイル/フォーマットに高い一貫性が必要 → 微調整
- 80% のケース → プロンプト エンジニアリングまたは RAG で十分
- ハイブリッド アプローチは企業の業界標準です
- 総コスト (トレーニング + 推論 + メンテナンス) を常に計算します
演習
- 社内の 5 つのユースケースを分析 → 知識と行動のギャップを分類する
- 特定のユースケースの意思決定フローチャートを作成する
- 推定コストを計算します: RAG とそのユースケースの微調整
- 実用的なシステムを実現するためのハイブリッドアーキテクチャ設計