Goekdeniz-Guelmez/mlx-lm-lora
Train Large Language Models on MLX.
解決的問題
MLX-LM-LoRA 提供了一個全面的工具包,可在 Apple Silicon 上本地微調大型語言模型(LLM)。它支援使用多種高效訓練方法與偏好優化演算法,對 Llama、Mistral、Qwen 和 Gemma 等模型進行客製化,從而減少對昂貴雲端 GPU 基礎設施的依賴。
工作原理
本專案利用 MLX 框架優化 Mac 硬體上的訓練。支援多種訓練類型,包括 LoRA(低秩適應)、DoRA(權重分解低秩適應)、全精度訓練與量化訓練(QLoRA)。
實作了廣泛的訓練演算法:
- 監督式微調(SFT):標準的指令微調。
- 偏好優化:包含 DPO、CPO、ORPO 與線上 DPO,這些方法可在無需獨立獎勵模型的情況下,將模型對齊至人類偏好。
- 強化學習:實作了 GRPO、GSPO、Dr. GRPO、DAPO、RLHF Reinforce 與 PPO。
- 量化感知訓練(QAT):在訓練期間模擬量化效果,以提升最終量化模型的效能。
適用對象
- AI 開發者:希望在 Apple Silicon 上執行與微調 LLM 的人。
- 機器學習工程師:希望在本地實驗不同偏好優化與 RLHF 技術的研究人員。
- 模型客製化者:希望整合量化感知訓練以在量化後維持模型品質的使用者。
主要亮點
- Apple Silicon 優化:專為 MLX 框架打造。
- 廣泛的演算法支援:涵蓋從基礎 SFT 到高階 GRPO 與 PPO 的全部內容。
- QAT 集成:支援在 SFT、DPO 與 ORPO 訓練期間進行 4-16 位量化投影。
- 彈性配置:支援命令列旗標與 YAML 設定檔。
- 自訂獎勵函數:允許使用者為 GRPO 訓練定義自己的 Python 基礎獎勵函數。
相關
- 專案
- 專案
- 專案
- 專案
- Dispatch