Hugging Face TRL 與 RapidFire AI 整合
Hugging Face TRL 正式與 RapidFire AI 整合,以加速大型語言模型(LLM)的微調與後訓練。此整合讓開發者能同時比較多個訓練配置——即使在單一 GPU 上——無需大量程式碼變更或提升 GPU 硬體需求。
加速實驗吞吐量
相較於順序配置測試,RapidFire AI 將實驗速度提升 16–24 倍。此加速透過自適應、基於區塊的排程與執行機制,使多個 TRL 配置能同時執行,讓團隊更快速達到最佳評估指標。
在 NVIDIA A100 40GB GPU 上使用 TinyLlama-1.1B 與 Llama-3.2-1B 模型進行的內部基準測試顯示,達到最佳訓練損失的時間加速如下:
| 情境 | 順序時間 | RapidFire AI 時間 | 加速比 |
|---|---|---|---|
| 4 個配置,1 GPU | 120 分鐘 | 7.5 分鐘 | 16× |
| 8 個配置,1 GPU | 240 分鐘 | 12 分鐘 | 20× |
| 4 個配置,2 GPU | 60 分鐘 | 4 分鐘 | 15× |
技術架構與核心能力
RapidFire AI 透過多項關鍵技術機制,優化 GPU 使用率與開發者工作流程:
自適應區塊式並行訓練
RapidFire AI 將資料集切分為指定數量的區塊,並在區塊邊界輪流將不同 LLM 配置分配至 GPU。此機制在所有配置上提供較順序訓練更早的評估指標增量訊號,促進更快速的比較決策。
共享記憶體協調
為維持穩定性與效能,系統採用高效的共享記憶體適配器與模型溢寫/載入機制,以自動檢查點。排程器利用這些共享記憶體機制自動協調可用 GPU 上的配置,免除手動設定的需求。
互動控制操作(IC Ops)
使用者可透過即時儀表板管理進行中的實驗。IC Ops 讓開發者能:
- Stop:終止表現不佳的配置以節省資源。
- Resume:重新啟動已暫停的執行。
- Delete:移除不必要的執行。
- Clone-Modify:根據有前景的執行建立新配置,修改超參數,並可選擇從父配置的權重熱啟動。
TRL 整合與實作
RapidFire AI 提供即插即用的 TRL 訓練器封裝,讓使用者在保持既有 TRL 思維模型的同時獲得並行性。支援的訓練器包括:
- SFT:使用
RFSFTConfig - DPO:使用
RFDPOConfig - GRPO:使用
RFGRPOConfig
實作範例
若要在單一 GPU 上實作並行訓練,使用者可使用 RFModelConfig 與 RFLoraConfig 定義 config_set,再以指定的 num_chunks 呼叫 experiment.run_fit 執行實驗。例如,在 2 GPU 設定下,RapidFire AI 可將比較決策的時間從約 15 分鐘(順序)縮短至 5 分鐘(並行),同時將 GPU 使用率從 60% 提升至超過 95%。
快速入門
可使用 pip install rapidfireai 從 PyPI 安裝 RapidFire AI。初始設定需透過 Hugging Face CLI 進行驗證,並執行 rapidfireai init 與 rapidfireai start。系統提供基於 MLflow 的儀表板,可於 http://localhost:3000 存取,以即時監控與控制,未來計畫支援 Trackio、W&B 與 TensorBoard。