
fine-tuningguidellmloragguftutorial
如何微調 LLM:2026 年完整指南
逐步學習如何微調大型語言模型——從準備訓練資料和選擇基礎模型,到配置 LoRA、評估結果和本地部署。
EEdward Yang··Updated
要 微調 LLM,你需要準備一個指令-回應對的 JSONL 資料集、選擇基礎模型(通常是 7B-8B 參數)、應用 LoRA 或 QLoRA 適配器、訓練 1-5 個週期,並將結果匯出為 GGUF 文件以進行部署。整個過程根據資料集大小和硬體,需要 30 分鐘到幾小時。根據 Hugging Face,像 LoRA 這樣的參數高效微調方法可以將可訓練參數減少 99% 以上,同時達到完整微調 2-5% 以內的結果。來自 Stanford HAI AI Index Report 的研究顯示,微調的較小模型在特定領域任務上一貫優於較大的提示工程模型,使微調成為建構生產 AI 最具成本效益的方法之一。
本指南涵蓋整個過程:微調何時有意義、如何準備資料、選擇哪個基礎模型、如何配置訓練,以及如何部署結果。
你應該什麼時候微調?
微調並不總是正確答案。在投入時間準備資料和運行訓練作業之前,考慮你的問題是否真的需要它。
微調有意義的情況:
- 提示工程遇到瓶頸。 你嘗試了少樣本示例、思維鏈 提示詞和系統指令,但模型仍然無法為你的領域產生一致結果。
- 你需要特定的輸出格式。 你的應用程式需要結構化 JSON、特定的寫作風格或基礎模型難以可靠產生的特定領域術語。
- 延遲和成本在規模上很重要。 在狹窄任務上,微調的 7B 模型可以優於提示工程的 70B 模型——以推論成本的一小部分。
- 隱私要求禁止雲端 API。 微調模型可以完全在你的基礎設施上運行,將敏感資料保持在第三方伺服器之外。
考慮替代方案的情況:
- 你的任務是廣泛的且頻繁變化——提示工程或 RAG 可能更靈活。
- 你有少於 100 個高品質訓練範例——微調需要足夠的資料來學習模式而不過擬合。
- 你需要模型訪問頻繁變化的外部知識——檢索增強生成更好地處理這個問題。
要進行更深入的比較,請參閱我們關於微調 vs RAG 的指南。
第 1 步:準備訓練資料
資料品質是微調成功的單一最大因素。在 500 個優秀範例上訓練的模型將優於在 10,000 個平庸範例上訓練的模型。
格式:JSONL
微調資料的標準格式是 JSONL(JSON Lines)——每行一個 JSON 物件。每行通常包含一個指令和所需的回應:
{"instruction": "Classify this support ticket as billing, technical, or general.", "input": "I can't log in to my account after resetting my password.", "output": "technical"}
{"instruction": "Classify this support ticket as billing, technical, or general.", "input": "When will I be charged for the annual plan?", "output": "billing"}
對於對話模型,使用訊息格式:
{"messages": [{"role": "system", "content": "You are a medical assistant."}, {"role": "user", "content": "What are common side effects of metformin?"}, {"role": "assistant", "content": "Common side effects include nausea, diarrhea, and stomach pain..."}]}
資料品質檢查清單
- 一致的格式 — 每個範例應遵循相同的結構
- 多樣的範例 — 涵蓋邊緣案例,而非只是順利路徑
- 準確的標注 — 垃圾進,垃圾出。讓領域專家審查你的資料。
- 平衡的分布 — 如果你在訓練分類器,每個類別大致相等的範例防止模型默認為多數標注
- 沒有資料洩露 — 保留驗證集與訓練資料分開以測量真實性能
你需要多少資料?
沒有通用答案,但以下是實際起點:
| 任務類型 | 最少範例 | 甜蜜點 |
|---|---|---|
| 分類 | 每類 100–200 個 | 每類 500–1,000 個 |