🎯 什麼情境該想到我
當你已經確定「提示工程與 RAG 都不夠,這次真的要微調」(那個判斷見 工具-微調與RAG的取捨),接下來要決定用哪種微調方式、吃多少 VRAM、用哪個框架的時候。
⚙️ 怎麼用(步驟 / 公式)
-
先確認 SFT 能不能解你的問題:SFT 教的是「怎麼回答」——結構化輸出、遵循指令、對話格式。它只能重新喚起預訓練already有的知識,無法憑空教會模型新的語言或領域能力。要灌新知識請走 RAG。
-
資料優先於超參數:高品質的指令—回應配對,效果勝過在爛資料上狂調參數。先把資料集做對。
-
依 VRAM 選訓練方式:
方式 做法 代價 Full Fine-Tuning 更新全部參數 VRAM 隨模型大小暴增,彈性最大,產出全新 checkpoint LoRA 凍結原權重,在注意力層加上低秩矩陣 W' = W + BA可訓練參數大幅減少 QLoRA 基礎模型存成 4-bit NormalFloat + LoRA adapter 用 FP16/BF16 訓練 單張 48GB GPU 就能微調 65B,品質相對 LoRA 掉很少 -
設定 LoRA 關鍵參數:
r(秩):分解的維度,常用 16–128alpha(縮放):通常設 rank 的 1–2 倍target_modules:要掛 adapter 的層,常見q_proj、v_proj、k_proj、o_proj
-
選框架:
TRL(Hugging Face 官方,SFTTrainer自動處理資料格式,同一套還能接 DPO/PPO)、Axolotl(設定檔驅動)、Unsloth(速度與記憶體優化)。
🧪 我實際套用的紀錄
- 2026-08-01:從 LLM Course 收錄,尚未實際跑過。
⚠️ 注意 / 什麼時候不適用
- SFT 只是表層適配。期待它教會模型全新領域知識會失望——那是預訓練或 RAG 的工作。
- 微調完必須有評估集才知道有沒有變好,否則只是換個貴的方式瞎調(見 工具-AI系統評估)。
- QLoRA 省 VRAM 但訓練較慢;資源夠的話 LoRA 品質與速度較平衡。
🔗 相關工具
- 工具-微調與RAG的取捨 —— 上游決策,先用它判斷「這題該不該微調」,再進來看怎麼做
- 工具-偏好對齊方法選擇 —— 下一階段,SFT 讓模型會聽指令,偏好對齊才調整回答的品質與風格
- 工具-模型量化格式選擇 —— QLoRA 的基礎,4-bit 量化是它省下 VRAM 的關鍵
- 工具-AI系統評估 —— 微調的硬前提,沒有評估集就證明不了微調後真的比較好