不用英偉達GPU!華為盤古Ultra來了:昇騰原生、135B稠密通用大模型
終于,華為盤古大模型系列上新了,而且是昇騰原生的通用千億級語言大模型。
我們知道,如今各大科技公司紛紛發布百億、千億級模型。但這些大部分模型訓練主要依賴英偉達的 GPU。
而現在的情形下,國內研究團隊很難獲得足夠的計算資源,這也制約了國內大模型技術的快速發展。
我們看到華為盤古發布的這篇新研究,證明了基于全國產的昇騰也可以實現領先的大規模語言模型的研究與開發。
- 技術報告標題:Pangu Ultra: Pushing the Limits of Dense Large Language Models on Ascend NPUs
- 技術報告地址:https://github.com/pangu-tech/pangu-ultra/blob/main/pangu-ultra-report.pdf
研究稱華為盤古團隊成功開發出基于昇騰算力訓練的千億級通用語言大模型 Pangu Ultra。在效果上,Pangu Ultra 在多個領域和評測上超越之前 Llama 405B 和 Mistral Large 2 等稠密模型,并可以與 DeepSeek-R1 等更大規模的稀疏模型一較高下。
Pangu Ultra 是一個擁有 94 層架構、總參數量達 135B 的超大稠密模型。針對超深千億級大模型的訓練穩定性問題,研究團隊提出了新的穩定性架構和初始化方法,成功實現了在 13.2T 高質量數據上的全流程無 loss 突刺長穩訓練。同時,在系統實現層面,團隊通過一系列系統優化策略,在 8192 張昇騰 NPU 構建的大規模集群上將算力利用率(MFU)提升至 50%。
接下來,讓我們從模型架構、模型訓練等方面,詳細了解下 Pangu Ultra 的技術細節。
模型架構
基礎架構信息:Pangu Ultra 包含 1350 億參數、采用了 94 層的 Transformer 結構。其中 FFN 采用 SwiGLU 激活。注意力層采用 GQA 降低 KV 緩存占用。
Pangu Ultra 針對大規模極深模型的訓練穩定性問題提出了 Depth-scaled sandwich-norm 和 TinyInit 初始化兩項技術。
Depth-scaled sandwich-norm:與混合專家模型(MoE)側重在寬度上擴展不同,大規模稠密模型通常采用更深的層數。然而,深度增加會加劇訓練穩定性的挑戰。考慮到預訓練的巨大成本,保證大模型的穩定訓練至關重要。
Pre-LN 在基于 Transformer 的大語言模型架構中被廣泛應用,但采用 Pre-LN 的模型中,各子層輸出尺度的波動容易導致訓練不穩定。為解決此問題,Sandwich-Norm 在殘差連接前對每個子層輸出額外施加 layer norm。雖然 Sandwich-Norm 能保持單個子層輸出的尺度穩定性,但跨越多層的殘差連接仍會導致輸出范數逐漸累積,進而引發訓練不穩定。
為此,Pangu Ultra 提出 Depth-Scaled Sandwich-Norm(DSSN)。該技術通過對每個子層輸出的 layer norm 的 gamma 參數來調控各層輸出尺度,通過把 gamma 參數初始化為與網絡深度的平方根倒數成比例。下圖展示了 Depth-Scaled Sandwich-Norm 與 Pre-LN 架構的差異。實驗結果表明所提出方法相比基準方法在穩定性和收斂性都具有較大優勢(見模型結果與分析)。
Pre-LN 與 DSSN 架構對比。相比 Sandiwich norm,DSSN 對 layer norm 系數做了特殊的 re-scale
TinyInit: 模型初始化對訓練穩定性和性能具有關鍵影響。基于 Transformer 的大語言模型普遍采用 small init 策略,即所有權重初始化為標準差為的正態分布。另外有工作將殘差層權重在初始化時縮放
倍。
Pangu 提出了同時根據模型深度和寬度縮放的參數初始化策略 TinyInit,所有權重初始化標準差,能加速 loss 收斂并提升下游任務性能。TinyInit 能使模型各部分的參數尺度更加一致,從而有利于優化和收斂(見模型結果與分析)。
Pangu Tokenizer:在 Pangu Ultra 的中,作者優化了分詞器(Tokenizer)。傳統方法在構建詞匯表時,常因數據分布導致通用文本占比過高,而代碼、數學等專業領域的詞元代表性不足。為解決此問題,Pangu Ultra 采用了「領域感知」的分詞詞表策略:
- 對通用中文、通用英文、代碼、數學等多個關鍵領域的數據獨立進行詞頻分析,生成領域專屬詞匯表。
- 隨后,將這些詞匯表合并與去重,形成了一個包含 153376 詞元的分詞詞表。
這種方法提升了詞匯表在不同領域間的均衡性,確保了模型在處理文本、代碼、數學等多樣化任務時,都能獲得更精準、高效的理解基礎,同時保持了良好的整體壓縮效率。
各領域詞在 Pangu 詞表中的分布
模型訓練
預訓練策略與數據:Pangu Ultra 的預訓練過程的三個階段:12T tokens 的通用能力訓練、0.8T tokens 的推理能力增訓以及 0.4T tokens 的退火階段。
Pangu Ultra 預訓練各個階段的數據配比
Pangu Ultra 模型的預訓練語料覆蓋了高質量、多樣化的 13.2T tokens,如上表所示,整個預訓練過程分為三個階段:通用階段(General)、推理階段(Reasoning)和退火階段(Annealing)。
通用階段(12T)旨在幫助模型積累知識和語言表達能力,推理階段(0.8T)旨在強化模型推理技能,而退火階段(0.4T)則進一步教會模型如何運用已學到的知識和推理技能。
團隊為訓練語料打了質量與難度的標簽分數,并在上述三個階段中采用課程式的數據采樣策略,即完成一個從易到難的學習過程:
- 通用階段覆蓋了大量的書籍、網頁、百科、多語言以及各行各業的語料,實際訓練中分成了兩個子階段,訓練量分別為 7.4T 和 4.6T tokens;
- 推理階段重點提高泛數學、理科以及代碼數據的比重,強推理數據占比超過 60%;
- 退火階段將指令類數據占比提高到 20%,旨在激發模型更好的應用知識和推理技能。團隊設計了大量的指令類問答對,并且包含長、短思維鏈,這些推理路徑經過精心優化,以確保內容清晰且邏輯連貫。
數據質量評估是提升模型訓練效果的核心環節,Pangu Ultra 結合規則篩選與 AI 評估優化數據質量。團隊設計人工標注數據,微調盤古系列模型作為質量評估器,從數據干凈度、流暢性、教育價值和信息密度四個維度,對超過 10T 語料進行打分,并且賦予高質量語料更高的采樣概率。
團隊基于 Pangu 26 億參數的代理模型進行了大量的消融實驗,結果表明基于低質量數據訓練的模型需要多 1.6 倍訓練量才能達成基于高質量數據的同等效果,進一步印證了數據質量對于提升訓練效率的關鍵價值。
長序列擴展:Pangu Ultra 模型通過兩階段長度擴展訓練將可支持的輸入 token 數增加到 128K,可以輸入約 10 萬英語單詞或者 17 萬中文漢字。針對長序列訓練中 RoPE 基礎頻率這一重要參數,在訓練前首先在目標擴展長度的特定驗證集上對不同的參數進行評測來搜索出最優的參數,保證了長度擴展的效果。
后訓練策略與數據:在模型后訓練階段,通過兩階段優化實現能力躍升:首先采用監督微調(SFT)建立基礎指令跟隨能力,隨后引入基于結果的強化學習(RL)框架,顯著提升模型的復雜推理、價值對齊和指令執行能力。為充分發揮昇騰算力優勢,研究團隊特別設計了具有延遲容忍特性的強化學習框架,配合融合確定性信號與模型評估的混合獎勵系統,在數學推導、代碼生成和通用問題解決三大領域構建精準反饋機制,確保大規模策略優化的效率與穩定性。
模型在 AIME 2024、MATH-500、GPQA Diamond 和 LiveCodeBench 等核心推理基準上取得了理想的性能,驗證了后訓練架構的有效性,這既得益于預訓練階段 0.8T 規模的專項推理數據積累,也源于強化學習階段對模型潛力的深度激發。同時模型仍保持強大的通用語言理解能力(MMLU-pro 和 ArenaHard),彰顯了技術路徑的均衡性,結果見模型結果與分析部分。
系統優化
Pangu Ultra 135B 的訓練環境是一個配備了 8192 個昇騰 NPU 的大規模計算集群。團隊通過混合并行策略、細粒度負載均衡調優、高效融合算子、子序列切分以及數據緩存共享等技術手段,在 8192 卡規模的集群中實現了超過 50% 的 MFU(Model FLOPs Utilization)。
并行策略:為了擴展 Pangu Ultra 的訓練規模并提升集群線性度,團隊采用了混合并行策略。在 8192 卡規模的集群中,使用了 128 路數據并行(Data Parallelism)、8 路張量并行(Tensor Parallelism)和 8 路流水線并行(Pipeline Parallelism),同時結合了 ZeRO 和序列并行(Sequence Parallelism),以降低模型參數、優化器狀態和激活值的顯存占用。由于 batch-size 的限制,大規模集群訓練中每個數據并行(DP)組的批次較小,導致較高的流水線空泡率。為解決這一問題,團隊引入了 6 路虛擬流水線(Virtual Pipeline)調度算法,將訓練空泡率從 30.45% 降低至 6.8%。通過一系列精細的負載均衡優化,在 BF16 訓練精度下實現了 43% 的 MFU。
系統優化:為了進一步提升大規模集群的訓練效率,團隊從多個方面進行了系統優化,將 8192 卡訓練的 MFU 從 43% 提升至 52%。關鍵優化技術包括:
- MC2(Merged Compute and Communication)通算融合
通過將訓練中的矩陣乘法(MatMul)計算與張量并行(TP)切分引入的通信操作細粒度拆分,并對計算和通信操作進行深度流水線編排,實現了通信與矩陣乘法的高效重疊,顯著提升了資源利用率和訓練效率。
- NPU Fusion Attention(NFA)
針對昇騰 NPU 優化的自注意力(Self-Attention)融合算子,支持 Attention Mask 壓縮,避免了顯式構造 Attention Mask 帶來的計算和顯存開銷。在 Pangu Ultra 訓練中,根據每個樣本的結束標記(EOD)計算出實際序列長度(actual_seq_len),并將其傳入 NFA。NFA 內部使用一個 2048×2048 的下三角矩陣作為素材庫,根據 actual_seq_len 動態構造訓練時的 Attention Mask,從而在重置 Attention Mask 的場景下實現高效的自注意力計算。
- 其他融合算子
除了 MC2 和 NFA,訓練還采用了 RMSNorm、SwiGLU、RoPE 融合算子、梯度累加融合以及 PP send/recv 融合等技術,進一步提升了系統性能。
- 子序列切分
上下文并行(Context Parallelism,CP)是長序列訓練中常用的優化方法。為了實現 CP 切分下的負載均衡,Megatron-LM 將序列切分為 2×CP 個子序列,每個設備負責計算上下兩個 chunk 的數據(見圖 1.(b))。然而,這種切分方式在重置 Attention Mask 的場景下仍會導致負載不均(見圖 1.(c))。Pangu Ultra 采用了改進的子序列切分并行方式,針對每個樣本中的子序列采用負載均衡的切分策略,每個節點負責計算子序列中的兩個 chunks(見圖 1.(d))。
圖 1. 子序列切分的序列并行方式
- 顯存優化
允許同一計算設備上的不同 vpp stage 之間共享 attention mask/actual_seq_len,RoPE sin/cos, position embedding 等數據。避免重復的計算和顯存開銷。
模型結果與分析
Pangu Ultra 實現了昇騰近萬卡大集群上約 13T 數據的長穩訓練,DSSN 和 TinyInit 保障訓練全程沒有出現任何 loss 突刺,如下圖:
Pangu Ultra 預訓練 Loss,全流程無 loss 突刺
Pangu Ultra 的預訓練基座模型測評結果如下。對比稠密架構的代表 Qwen2.5-72B 和 Llama 405B 以及 MoE 架構的代表 DeepSeek V3。Pangu Ultra 在大多數 benchmark 上取得了最好的效果,和同為稠密架構的模型對比優勢更加明顯。
Pangu Ultra Base 測評結果,粗體表明最好結果,下劃線表明該模型在 dense 中最好
經過后訓練之后,Pangu Ultra 在主要的 Reasoning benchmark 上的表現如下所示。
Pangu Ultra 在 Reasoning Benchmarks 上的表現
Pangu Ultra 在 AIME24,MATH-500,GPQA,MMLU-Pro 等指標上超越 DeepSeek R1。關于盤古后訓練使用的相關技術將在之后的報告中發布。
針對訓練穩定性,團隊發現 DSSN 和常見的 Pre-Norm(Pre-LN)架構對比能夠完全杜絕訓練中的 loss 突刺現象。在 gradient norm 上,使用 DSSN 的模型也更加平穩,突刺更少。經過測評,DSSN 架構的模型效果也超出 Pre-LN 架構,說明避免訓練突刺的重要性。
DSSN 與 Pre-LN 的訓練對比
DSSN 架構和 Pre-LN 架構的測評效果對比
使用 Sandwich-Norm 架構時,RMSNorm 的 affine 參數 \gamma 初始化非常重要,該研究提出的 DSSN 方案與普通 Sandwich-Norm 架構對比訓練 loss 也更加平穩,且收斂更快,如下圖所示。
DSSN 對比普通 Sandwich-Norm
關于 TinyInit,團隊在 135B 的模型規模上訓練了約 100B tokens,和經典基線初始化方案相比取得了較為明顯的優勢。
TinyInit 對比普通初始化的模型測評效果
感興趣的讀者可以閱讀論文原文,了解更多研究內容。