在Amazon SageMaker AI上訓練亞塞拜然語語言模型
亞塞拜然電信公司Azercell與AWS生成式AI創新中心合作,在Amazon SageMaker AI上構建了針對亞塞拜然語的大語言模型,透過自定義分詞器、分散式訓練和Liger Kernel最佳化,實現了23%的訓練吞吐量提升、58%的GPU記憶體峰值降低和2倍的分詞效率提升。
文章情報
要點
- Azercell使用Amazon SageMaker AI為亞塞拜然語開發了首個大語言模型生產框架。
- 自定義分詞器將每個詞的令牌數從3.22降至1.59,效率提升2倍。
- 透過FSDP和Liger Kernel最佳化,訓練吞吐量提升23%,GPU記憶體佔用降低58%。
- 三階段流程:分詞器開發、持續預訓練、帶LoRA的監督微調。
為什麼重要
這條新聞值得關注,因為Azercell使用Amazon SageMaker AI為亞塞拜然語開發了首個大語言模型生產框架。
技術影響
可能影響模型選型、推理成本、產品能力和評測基準。
亞塞拜然領先的電信提供商Azercell Telecom LLC希望構建一個亞塞拜然語大語言模型,用於電信用例和麵向客戶的聊天機器人。挑戰在於將基礎模型適應於形態豐富的語言,且訓練資料有限,缺乏現成的亞塞拜然語大模型訓練藍圖。在為期六週的合作中,Azercell與AWS生成式AI創新中心在Amazon SageMaker AI上建立了一個生產就緒的框架。該框架透過核心級最佳化,在ml.p5.48xlarge例項上實現了23%的訓練吞吐量提升和58%的峰值GPU記憶體降低。此外,自定義分詞器將每個詞的令牌數提高了2倍,有效使模型上下文視窗中能容納的亞塞拜然語文本量翻倍。
該框架實施三個順序階段,每個階段產生供下一階段使用的工件。階段1:分詞器開發——為亞塞拜然語構建高效分詞器。團隊評估了三種方法:基線英語最佳化分詞器、詞彙擴充套件和自定義單語分詞器。自定義單語分詞器表現最佳,將每個詞的令牌數相比基線減少了一半。階段2:持續預訓練——透過分散式訓練和Liger Kernel最佳化,在Amazon SageMaker AI訓練作業上將基礎模型(Llama 3.2 1B)適應於亞塞拜然語理解。階段3:帶低秩適應的監督微調——透過LoRA將預訓練模型轉換為對話助手。
在分詞器開發中,團隊訓練了詞彙量為10萬的自定義分詞器,使用位元組級位元組對編碼演算法。與基線分詞器相比,自定義分詞器在驗證集上的每位元組位元數達到0.5795,優於基線的0.6830,證明編碼效率提升未犧牲模型質量。持續預訓練階段採用兩階段方法:先凍結模型骨幹僅訓練嵌入層,再解凍進行完整訓練。在ml.p4d.24xlarge例項上使用FSDP和Liger Kernel,最大批次大小從DDP的2提升至14,訓練吞吐量顯著增加。監督微調使用LoRA,秩為64,α為28,僅訓練約1%的引數。
該框架的模組化架構允許獨立最佳化每個階段。分詞器改進惠及後續訓練階段,持續預訓練配置可遷移至不同微調任務。訓練作業按需啟動EC2例項,任務完成後終止,使用者僅需支付實際計算時間。該解決方案基於PyTorch、Hugging Face Transformers和Liger Kernel等開源工具構建。