梁文鋒署名DeepSeek新論文:公開V3大模型降本方法

梁文鋒親自參與的DeepSeek最新論文,來了!

這一次,團隊把DeepSeek-V3在訓練和推理過程中,如何解決「硬件瓶頸」的方法公佈了出來。

具體而言,DeepSeek-V3之所以可以只用2048塊H800,就能達到超大規模集群(如數萬塊GPU)相當的訓練效果,核心在於四項創新技術:

  • 內存優化

多頭潛在注意力(MLA)

  • 計算優化

混合專家模型(MoE)與FP8低精度訓練

  • 通信優化

多層網絡拓撲與低延遲設計

  • 推理加速

多token預測(MTP)

那麼這四項優化具體又是如何起到作用的,我們繼續往下看。

一、軟硬件協同的優化設計

在訓練大模型這條路上,可以說一直有「三座大山」在佔道。

首先就是內存不夠用

現在的大語言模型(比如GPT、Llama)變得越來越龐大,需要的存儲空間激增。特別是它們使用的「注意力機制」會產生大量臨時數據(KV Cache),佔用大量顯卡內存。

但高性能顯存的容量增長太慢了,每年才增加不到50%,遠遠跟不上需求。

其次是計算效率低

訓練超大規模模型需要海量計算資源,傳統 「稠密模型」(如 Llama-3)每次計算都要激活所有參數,導致計算成本極高。

而 「混合專家模型」(MoE)雖然更高效,但需要複雜的通信機制(如專家間數據傳輸),對網絡帶寬要求極高。

最後就是通信速度慢

當使用多個GPU一起訓練時,它們之間需要不斷交換數據,這個過程會產生延遲。即使用了高速網絡(如InfiniBand),這種延遲仍然會拖慢整體訓練速度,尤其是處理長文本或需要實時響應時更明顯。

而這篇論文所要解決的,正是上述的這些老大難的問題。

△DeepSeek-V3的基本架構△DeepSeek-V3的基本架構

DeepSeek團隊首先是對內存進行了優化,所採用的方法則是多頭潛在注意力(MLA),為的就是減少 「鍵值緩存」(KV Cache)的內存佔用。

傳統模型每個注意力頭都需要獨立緩存鍵值對,而MLA通過投影矩陣將所有頭的鍵值對壓縮成一個更小的 「潛在向量」,只需緩存這一向量。

相比其他模型(如LLaMA-3、Qwen-2.5),DeepSeek-V3的KV緩存大小每token僅需70 KB,是傳統方法的1/7到1/4,大幅降低顯存壓力,尤其適合長文本處理。

在計算優化方面,DeepSeek-V3所採用的方法,則是MoE和FP8低精度訓練。

MoE,即將模型參數分成多個 「專家」,每次只激活部分專家處理輸入,顯著減少實際計算量。

DeepSeek-V3採用類似的思路,其總參數雖然是6710億,但每次僅激活370億參數,訓練成本僅為同規模稠密模型的1/10(如Llama-3.1的訓練成本是其近10倍)

也正因推理時激活參數少,DeepSeek-V3可在消費級GPU(如售價1萬美元的顯卡)上運行,每秒生成近20個token,適合個人或中小型企業使用。

至於FP8低精度訓練,不同於傳統訓練使用BF16(16 位浮點),可將內存佔用和計算量減半,同時通過 「精細量化」(如分塊壓縮)保持精度。

而DeepSeek-V3是首次在開源大模型中成功應用FP8訓練,訓練成本降低50%,且精度損失小於0.25%。

除此之外,DeepSeek-V3在通信方面也做了相應的優化。

例如多層胖樹網絡(Multi-Plane Fat-Tree),將集群網絡分為多個 「平面」,每個GPU連接到獨立的網絡平面,避免不同任務的流量衝突(如訓練與存儲通信分離)

相比傳統三層網絡,兩層結構成本降低40%,延遲減少30%,支持上萬GPU擴展。

DeepSeek-V3在做推理時,還將 「注意力計算」 與 「專家間通信」 分階段執行,利用流水線並行(DualPipe)讓GPU在計算時同時傳輸數據,避免空閑等待,吞吐量提升近1倍。

最後,在推理加速方面,DeepSeek-V3採用的是多token預測(MTP)的方法。

傳統模型每次只能生成1個token,而MTP通過輕量級子模型並行預測多個候選token(如一次預測2-3個),驗證後選擇最優結果。

從實驗效果來看,生成速度提升1.8倍,例如每秒生成 oken數從10個增至18個,同時保持準確率在80%~90%。

以上就是DeepSeek-V3通過硬件與模型的協同設計,在有限資源下可以實現高效訓練和推理的關鍵技術了。

不過除此之外,這篇論文還對未來的工作有著一定的啟發作用。

二、從「被動適配」到「主動設計」

既然已經知道了當前AI在硬件上的瓶頸,就可以提出對下一代AI硬件的期待。

DeepSeek團隊從五大維度做出了展望,希望在這一方面能夠從過去的「被動適配」逐步過渡到「主動設計」。

1. 低精度計算支持

針對計算效率低的問題,下一代的AI硬件需要提高累積寄存器的精度,支持FP32累加,或可配置精度(如訓練用FP32,推理用FP16)。這樣才能在不同的模型訓練和推理需求中實現性能和準確性的平衡。

硬件還需要支持本地的細粒度量化,使張量核心能夠直接接收縮放因子(scaling factors),在計算單元內部完成量化和反量化,減少數據搬運。

此外,建議支持LogFMT(對數浮點格式),在相同比特寬度下提供更高精度,並提高編解碼的速度。

2. 擴展與擴展融合

針對傳輸速度慢的問題,建議未來的硬件將節點內(縱向擴展)和節點間(橫向擴展)的通信整合到一個統一的框架中,通過集成專門用於網絡流量管理的協處理器。

這樣的設計可以降低軟件複雜性並最大化帶寬利用率,包括以下內容:

  • 統一網絡適配器:設計連接到統一擴展和縮減網絡的NIC(網絡接口卡)或I/O芯片,讓網卡直接支持所有通信需求。

  • 專用通信協處理器:將數據搬運、Reduce、類型轉換等任務卸載到專用硬件,釋放GPU SM資源。

  • 增加智能傳輸功能:自動轉發數據,支持廣播和彙總操作,並自動處理數據順序問題。

  • 動態帶寬分配:支持流量優先級調度(如EP通信>KV緩存傳輸)

  • CPU-FPU高速互聯:用NVLink連接CPU與GPU,進一步優化節點內通訊。

3. 網絡拓撲優化

針對網絡卡頓的問題,建議以太網供應商開發專門針對RDMA工作負載進行優化的RoCE交換機,移除不必要的以太網功能。

還需要優化路由策略,支持自適應路由(Adaptive Routing,AR)通過動態向多個路徑發送數據包,即可顯著提高網絡性能。

或者可以通過虛擬輸出隊列(VOQ)改進流量隔離或擁塞控制機制,隔離不同流量,避免擁塞。

4. 內存系統優化

針對AI模型記性越來越差,聊天時難以記住上下文的問題,可以通過3D堆疊DRAM的方法,把內存芯片像三明治一樣疊在計算芯片上。

或者學習Cerebras,直接在晶圓上進行集成工程,最大化內存帶寬和計算密度,讓硬件能記得更多。

又或者,在硬件存儲層部署稀疏注意力加速器,讓硬件直接幫忙整理記憶,只記重點。

5. 魯棒性與容錯

針對大規模訓練中網絡閃斷、GPU故障會導致任務失敗的問題,期待下一代硬件能夠支持鏈路層重試和快速故障切換,在閃斷後能夠立刻自己找備用路線。

還可以增加基於信用的流控(CBFC)+ 智能擁塞控制算法(如R湯臣-CC),避免網絡集體卡死。

簡單來說,下一代AI硬件要向算數快(低精度計算+本地細粒度量化)、傳話快(直連網絡+智能路由)、記性好(3D內存+近存計算)、不宕機(自愈網絡)的方向改進,才能更好地應用於大模型訓練,實現高效擴展。

論文地址:https://arxiv.org/pdf/2505.09343

本文來自微信公眾號:量子位,作者:金磊、不圓