騰訊發佈最大開源MoE模型,3890億參數免費可商用
騰訊拿出看家本領,來擠開源賽道,突然發佈了市面上最大的開源MoE模型。
Hunyuan-Large,3890億總參數,520億激活參數。
跑分超過Llama 3.1 405B等開源旗艦,上下文長度支持也高出一檔來到256k。
雖然Hunyuan-Large還不算騰訊內部的旗艦模型,但騰訊介紹底層技術與混元大模型“同宗同源”:
很多細節都是內部業務打磨好再開源出來的,比如用到了騰訊元寶App的AI長文閱讀等功能裡。
現在這樣的一個模型徹底開源,免費可商用,算是很有誠意了。
這次騰訊Hunyuan-Large總共開源了三個版本:預訓練模型、微調模型、FP8量化的微調模型。
在開源社區掀起一陣熱議,HuggingFace首席科學家Thomas Wolf牆裂推薦並總結了幾個亮點。
各路開發者中,有立馬開始下載部署的動手派,也有人希望騰訊入局後,開源模型捲起來能迫使Meta造出更好的模型。
這次騰訊同步發佈了技術報告,其中很多技術細節也引起討論。
如計算了MoE的Scaling Law公式,C ≈ 9.59ND + 2.3 ×108D。
又比如用交叉層注意力節省KV緩存的內存佔用。
下面送上發佈會現場演講和技術報告精華內容總結。
Hunyuan-Large技術報告
MoE的Scaling Law
直接上公式:
C ≈ 9.59ND + 2.3 × 108D
其中C表示計算預算(單位FLOPs),N表示激活參數數量,D表示訓練數據量(單位tokens)。
與傳統密集模型的計算預算公式C=6ND相比,MoE模型公式的差異主要體現在兩個方面:
一是係數從6增加到9.59,反映了MoE額外的路由計算開銷,包含專家切換的計算成本。
二是增加了常數項2.3×108D,反映了長序列MoE模型attention計算的額外開銷。
爲了確定最優激活參數量,團隊投入大量成本展開實驗:
訓練一系列激活參數範圍從10M到1B的模型,使用最高1000億tokens的訓練數據,覆蓋100億到1000億tokens的不同數據規模。
使用isoFLOPs曲線,在固定計算預算下尋找最優點,同時考慮實際訓練batch size的影響,分析不同參數量和數據量的組合,計算得出最優激活參數量約爲58.1B。
而最終Hunyuan-Large選擇了52B的激活參數量,主要考慮到最優點附近曲線平滑,在58.1B附近有較大容差空間,以及計算資源約束、訓練穩定性要求和部署效率平衡等實踐因素。
路由和訓練策略
除了揭秘最優參數配比,技術報告中還詳解了Hunyuan-Large獨特的”MoE心法”。
混合路由策略:
Hunyuan-Large採用共享專家(shared expert)和特殊專家(specialized experts)相結合的混合路由。
每個token激活1個共享專家和1個專門專家,共享專家處理所有token的通用知識,而特殊專家則用top-k路由策略動態激活,負責處理任務相關的特殊能力。
回收路由策略:
傳統MoE常因專家超載而丟棄過多tokens。Hunyuan-Large設計了專家回收機制,保持相對均衡的負載,充分利用訓練數據,保證模型的訓練穩定性和收斂速度。
專家特定學習率適配策略:
不同專家承載的tokens差異巨大,應設定不同學習率,如共享專家使用較大的學習率,確保每個子模型有效地從數據中學習並有助於整體性能。
高質量合成數據
混元團隊開發了一套完整的高質量數據合成流程,主要包括四個步驟:指令生成、指令進化、回答生成和回答過濾。
在指令生成階段,混元團隊使用高質量的數據源作爲種子,覆蓋多個領域和不同複雜度,確保指令的多樣性和全面性。
接下來是指令演化階段,通過提升指令的清晰度和信息量,擴充低資源領域的指令,並逐步提升指令的難度,使得指令更加豐富、精準和具有挑戰性。
在回答生成階段,混元團隊採用專門的模型針對不同領域生成專業的答案。這些模型在規模和設計上各有不同,以確保生成的回答能夠滿足不同領域的要求。
最後是回答過濾階段,混元團隊採用critique模型對生成的回答進行質量評估,並進行自一致性檢查,以確保輸出的答案是高質量的。
通過這四步合成流程,混元團隊能夠生成大量高質量、多樣化的指令-回答數據對,爲MoE模型的訓練提供了豐富、優質的數據支持。
這種數據合成方法不僅提高了模型的訓練效率,也極大地促進了模型在多種下游任務上的表現。
長文能力優化
爲了實現強大的長文本處理能力,混元團隊在訓練過程中採用了多項策略。
首先是分階段訓練,第一階段處理32K tokens的文本,第二階段將文本長度擴展至256K tokens。在每個階段,都使用約100億tokens的訓練數據,確保模型能夠充分學習和適應不同長度的文本。
在訓練數據的選擇上,25%爲自然長文本,如書籍、代碼等,以提供真實的長文本樣本;其餘75%爲普通長度的數據。這種數據組合策略確保了模型在獲得長文理解能力的同時,也能保持在普通長度文本上的基礎處理能力。
此外,爲了更好地處理超長序列中的位置信息,混元團隊對位置編碼進行了優化。他們採用了RoPE位置編碼方法,並在256K tokens階段將base frequency擴展到10億。這種優化方式能夠有效地處理超長序列中的位置信息,提升模型對長文本的理解和生成能力。
除了在公開數據集上進行評測,混元團隊還開發了一個名爲”企鵝卷軸”的長文本評測數據集。
“企鵝卷軸”包含四個主要任務:信息抽取、信息定位、定性分析和數值推理。
不同於現有的長文本基準測試,”企鵝卷軸”有以下幾個優勢:
推理加速優化
爲了進一步提升Hunyuan-Large的推理效率,混元團隊採用了多種優化技術,其中最關鍵的是KV Cache壓縮。
主要結合了兩種方法:GQA(Grouped-Query Attention)和CLA(Cross-Layer Attention)。
GQA通過設置8個KV head組,壓縮了head維度的KV cache;而CLA則通過每2層共享KV cache,壓縮了層維度的內存佔用。
通過這兩種策略的組合,混元MoE模型的KV cache內存佔用降低了約95%,而模型性能基本保持不變。這種顯著的內存優化不僅大幅提升了推理效率,也使得模型更易於部署,適配各種實際應用場景。
後訓練優化
預訓練的基礎上,混元團隊採用了兩階段的後訓練策略,包括監督微調(SFT)和人類反饋強化學習(RLHF),以進一步提升模型在關鍵領域的能力和人類對齊程度。
在SFT階段,混元團隊使用了超過100萬條高質量數據,覆蓋了包括數學、推理、問答、編程等多個關鍵能力領域。爲了確保數據的高質量,團隊採用了多重質量控制措施,包括規則篩選、模型篩選和人工審覈。整個SFT過程分爲3輪,學習率從2e-5衰減到2e-6,以充分利用數據,同時避免過擬合。
在RLHF階段,混元團隊主要採用了兩階段離線和在線DPO結合。離線訓練使用預先構建的人類偏好數據集,以增強可控性;在線訓練則利用當前策略模型生成多個回覆,並用獎勵模型選出最佳回覆,以提高模型的泛化能力。
同時,他們還使用了指數滑動平均策略,緩解了reward hacking問題,確保了訓練過程的平穩和收斂。
One More Thing
在發佈會現場,騰訊混元大模型算法負責人康戰輝還透露,Hunyuan-Large之後,還會考慮逐步開源中小型號的模型,適應個人開發者、邊緣側開發者的需求。
另外騰訊同期開源的3D大模型可移步這裡瞭解。
官網:https://llm.hunyuan.tencent.com/Github地址:https://github.com/Tencent/Tencent-Hunyuan-LargeHugging Face 地址:https://huggingface.co/tencent/Tencent-Hunyuan-Large
參考鏈接:[1]https://x.com/Thom_Wolf/status/1853694513585303771