hiyouga/LlamaFactory
Unified Efficient Fine-Tuning of 100+ LLMs & VLMs (ACL 2024)
LlamaFactory – 一鍵微調 100+ 種 LLM
簡介 LlamaFactory 是一個開源 Python 函式庫(亦可在 PyPI 上取得),讓您可以微調各種大型語言模型,從經典的 LLaMA 風格模型到多模態的 LLaVA、Mistral、Mixtral‑MoE、Qwen、Gemma、GLM、Phi 等等。它提供 零程式碼 CLI 和 基於 Gradio 的網頁 UI (LlamaBoard),讓您無需編寫 Python 腳本即可在筆記型電腦、雲端筆記本或多 GPU 叢集上開始訓練。
重要性 微調現代 LLM 通常需要處理底層函式庫(PEFT、DeepSpeed、FSDP 等)。LlamaFactory 隱藏了這些複雜性,並整合了大量最先進的訓練技巧(LoRA、QLoRA、FlashAttention‑2、Unsloth、Liger‑Kernel、KTransformers 等)和優化器(GaLore、BAdam、APOLLO、Muon、Adam‑mini、DoRA、LongLoRA 等)。結果就是一個單一的設定檔,可以在普通硬體上訓練從幾百萬參數到 70 B 規模的模型。
主要功能(列於 README 中)
- 模型覆蓋 – LLaMA‑1/2/3/4, LLaVA, Mistral, Mixtral‑MoE, Qwen 2/3, Qwen‑VL, DeepSeek, Gemma 3, GLM‑4, Phi‑4, InternLM, MiniCPM‑o, PaliGemma 等。
- 訓練方法 – 標準監督式微調、持續預訓練、獎勵模型、PPO、DPO、KTO、ORPO 以及其他偏好學習演算法。
- 參數高效微調 – 全精度 16‑bit、凍結微調、LoRA 以及 2‑8‑bit QLoRA (AQLM, AWQ, GPTQ, LLM.int8, HQQ, EETQ)。
- 效能技巧 – FlashAttention‑2, Unsloth, Liger‑Kernel, KTransformers, RoPE scaling, NEFTune, rsLoRA 等。
- 硬體靈活性 – 適用於 NVIDIA GPU、AMD ROCm 和 Ascend NPU;支援在 2 × 24 GB GPU 上使用 FSDP + QLoRA 訓練 70 B 模型。
- 推論後端 – OpenAI 風格 REST API、Gradio UI、CLI,並可選配 vLLM 或 SGLang 以實現高吞吐量服務。
- 實驗追蹤 – 內建支援 TensorBoard、Weights & Biases、MLflow 和 SwanLab。
- 部署 – 將檢查點匯出為 Hugging Face、ModelScope、Modelers Hub 或 Ollama modelfiles;並可作為 OpenAI 相容的 API 容器執行。
- 社群與生態 – 被 Amazon、NVIDIA、Alibaba Cloud 使用;擁有 Discord、微信群組、專屬部落格以及 Docker Hub 上的 Docker 映像檔。
典型工作流程
- 安裝 (
pip install llamafactory或拉取 Docker 映像檔)。 - 準備資料 – README 指向
data-preparation章節,並提供文字、聊天、工具呼叫、影像、影片和音訊資料集的範例腳本。 - 編寫小型 YAML 設定檔,選擇模型、訓練方法、LoRA/QLoRA 設定以及您想要的任何效能技巧。
- 執行 – 使用
llamafactory train config.yaml(CLI) 或啟動 Gradio UI (llamafactory gui) 開始訓練,透過 LlamaBoard 監控並查看日誌。 - 匯出 – 訓練完成後,使用
llamafactory export產生可供推論的模型,然後透過內建的 OpenAI 相容 API 或 vLLM 工作節點進行服務。
入門資源
- README 中的 Quickstart 章節展示了最簡 CLI 指令。
- Colab notebook (免費 GPU) 和 PAI‑DSW 連結,用於雲端試用。
- 文件 (進行中) 位於
llamafactory.readthedocs.io以及效能比較 wiki。 - 部落格文章 涵蓋 KTransformers、以資料為中心的管線以及多模態微調。
適用對象
- 需要實驗多種 LLM 系列而無需重寫訓練迴圈的研究人員。
- 需要無程式碼 UI 來微調和部署自訂助理的產品團隊。
- 希望使用 LoRA/QLoRA 在單一 GPU 上微調 7‑B 模型的愛好者。
- 需要可擴展、可重現的大規模模型適應管線的企業(Amazon, NVIDIA, Alibaba)。
安裝片段 (來自 README)
# via pip
pip install llamafactory
# or pull the official Docker image
docker pull hiyouga/llamafactory
授權 – Apache 2.0 (如授權章節所示)。
以上所有細節均直接取自儲存庫的 README;未發明任何額外功能。
相關
- 專案
- Dispatch
- 專案
- 專案
- 專案