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 上實作並行訓練,使用者可使用 RFModelConfigRFLoraConfig 定義 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 initrapidfireai start。系統提供基於 MLflow 的儀表板,可於 http://localhost:3000 存取,以即時監控與控制,未來計畫支援 Trackio、W&B 與 TensorBoard。

Sources