8種LLM架構設計大比拼:從 DeepSeek-V3 到 Kimi K2,究竟有啥不同 精華
自從GPT-2(2019)開啟Decoder-only模型以來,到今天DeepSeek-V3和Llama 4(2024-2025),大家會覺得這些模型在結構上仍然相似。 當然,位置嵌入已經從絕對到旋轉(RoPE)發展,多頭注意力在很大程度上讓位于Grouped-Query Attention,更高效的SwiGLU已經取代了像GELU這樣的激活函數。

接下來,將重點介紹一下,模型的變遷。
1.DeepSeek V3/R1
DeepSeek R1在2025年1月發布時產生了巨大影響。DeepSeek R1 是一個基于 DeepSeek V3 架構構建的推理模型,該模型于 2024 年 12 月推出。
雖然我們專注于2025年發布的架構,但我們認為包括DeepSeek V3是合理的,因為它在2025年推出DeepSeek R1后才獲得廣泛關注和采用。
在本節中,我將重點介紹DeepSeek V3中引入的兩種關鍵架構技術,這些技術提高了其計算效率,并將其與許多其他LLM區分開來:
- 多頭潛在注意力(MLA)
- 混合專家(MoE)
1.1 多頭潛在注意力(MLA)
在討論多頭潛在注意力(MLA)之前,先簡要地回顧一下一些背景,為什么使用它。讓我們從Grouped-Query Attention(GQA)開始,它已成為近年來多頭注意力(MHA)的更計算和參數效率替代品的新標準替代品。
這里有一個簡短的GQA摘要。與MHA不同,每個頭部都有自己的鍵和值集,以減少內存使用,GQA對多個頭進行分組,以共享相同的鍵和值預測。
例如,如下圖2所示,如果有2個鍵值組和4個注意頭,則頭1和2可能共享一組鍵和值,而頭3和4共享另一組鍵和值。這減少了密鑰和值計算的總數,從而降低內存使用率和效率提高(根據消融研究,在不明顯影響建模性能的情況下)。

IMG
在這里,組大小為2,其中一個鍵和值對在2個查詢之間共享。
因此,GQA背后的核心思想是通過跨多個查詢頭共享key和value header來減少key和value的數量。 這么做:(1)降低了模型的參數計數,(2)在推理過程中降低了鍵和值張量的內存帶寬使用,因為需要從KV緩存中存儲和檢索更少的鍵和值。
現在,多頭潛在注意力(MLA)提供了一種不同的內存保存策略,與KV緩存特別匹配。MLA 不再像 GQA 那樣共享key和value header,而是將鍵和值張量壓縮到低維空間中,然后將它們存儲在 KV 緩存中。
在推理時,這些壓縮張量在被使用之前被投射回其原始大小,如下圖所示。這增加了額外的矩陣乘法,但減少了內存的使用。

IMG
備注:查詢也被壓縮,但僅在訓練期間,而不是推理。
順便說一句,MLA在DeepSeek V3中并不新鮮,DeepSeek-V2 predecessor因為它的DeepSeek-V2前身也使用(甚至引入)它。此外,V2論文包含一些有趣的消融研究,可以解釋為什么DeepSeek團隊選擇MLA而不是GQA。

如上圖所示,GQA似乎比MHA表現更差,而MLA提供比MHA更好的建模性能,這可能是DeepSeek團隊選擇MLA而不是GQA的原因。MLA是一個巧妙的技巧,可以減少KV緩存內存的使用,同時在建模性能方面甚至略顯優于MHA。
1.2 混合專家(MoE)
DeepSeek中值得強調的另一個主要建筑組件是它使用混合專家(MoE)層。
MoE核心思想是用多個專家層替換transformer塊中的每個FeedForward模塊,其中每個專家層也是FeedForward模塊。這意味著我們將單個 FeedForward 塊替換為多個 FeedForward 塊,如下圖 所示。

transformer塊內的FeedForward塊(如上圖中的暗灰色塊)通常包含大量模型的總參數。(請注意transformer塊是FeedForward塊,在LLM中重復多次;在DeepSeek-V3的情況下,61次。
因此,用多個FeedForward 塊替換單個FeedForward 塊(如在 MoE 設置中所做的那樣)可大大增加模型的總參數計數。然而,關鍵的訣竅是,不使用(“激活”)所有專家的token。相反,路由器每個令牌只選擇一小部分專家。
由于只有少數專家一次處于活動狀態,因此MoE模塊通常被稱為稀疏模塊,dense密集模塊始終使用完整的參數集。然而,通過MoE的大量參數增加了LLM的容量,這意味著它可以在訓練期間占用更多的知識。然而,稀疏性保持推理效率,因此不會同時使用所有參數。
例如,DeepSeek-V3每個MoE模塊有256名專家,共6710億個參數。然而,在推理過程中,一次只有9名專家處于活動狀態(1個共享專家加上路由器選擇的8個)。這意味著每個推理步驟僅使用370億個參數,而所有6710億個參數。
DeepSeek-V3的MoE設計的一個顯著特點是使用共享專家。這是一個專家,總是活躍于每一個token。這個想法并不新鮮,已經在DeepSeek 2024MoE和2022 DeepSpeedMoE論文中引入。

DeepSpeedMoE paper擁有共享專家的好處在DeepSpeedMoE論文中首次指出,他們發現與沒有共享專家相比,它提高了整體建模性能。這可能是因為常見的或重復的模式不必由多個專家學習,這使他們有更多的學習更專業模式的空間。
1.3 DeepSeek 總結
DeepSeek-V3是一款6710億參數的龐大型號,在發布時優于其他開放重量型車型,包括405B Llama 3。盡管規模更大,但由于其混合專家(MoE)架構,它在推理時間效率要高得多,該架構僅激活每個令牌的一小部分(僅37B)參數。
另一個關鍵特征是DeepSeek-V3使用多頭潛在注意力(MLA)而不是分組查詢注意力(GQA)。MLA和GQA都是標準多頭注意(MHA)的推理效率替代品,特別是在使用KV緩存時。雖然MLA的實施更為復雜,但DeepSeek-V2論文中的一項研究表明,它比GQA提供了更好的建模性能。
2.OLMo 2
OLMo系列模型因為它在訓練數據和代碼方面具有透明度,以及相對詳細的技術報告。
雖然可能不會在任何基準或排行榜的頂部找到OLMo模型,但它們非常干凈,更重要的是,由于其透明度,它們是開發LLM的絕佳藍圖。

OLMo2中有趣設計是什么?
它主要歸結為正常化:RMSNorm層的放置以及添加QK-norm
備注:OLMo 2仍然使用傳統的多頭注意(MHA)而不是MLA或GQA。
2.1 規范化層放置
OLMo 2在很大程度上遵循原始GPT模型的架構。讓我們從規范化層開始。
與Llama,Gemma和大多數其他LLM類似,OLMo 2從LayerNorm切換到RMSNorm。
RMSNorm基本上是LayerNorm的簡化版本,可訓練參數較少。 然而,值得討論RMSNorm層的放置。原始transformer(Attention is all you need替換了兩層正則層,分別將兩個規范層放在transformer block中的的注意力模塊和FeedForward模塊之后。這也被稱為Post-LN或Post-Norm。
GPT和大多數其他LLM在注意和FeedForward模塊之前放置了歸化層前,這被稱為Pre-LN或Pre-Norm。后規范和前規范之間的比較如下圖所示。

IMG
Pre-LN在初始化時會產生更多表現良好的梯度。此外,研究人員提到,Pre-LN甚至在沒有仔細學習率熱身的情況下,也工作得很好。
OLMo 2采用了一種Post-LN形式(但使用RMSNorm而不是LayerNorm,所以我稱之為Post-Norm_)。
在 OLMo 2 中,它們不是將歸化層放在注意層和 FeedForward 層之前,而是將它們放在后面,如上圖所示。但是,請注意,與原始transormer架構相反,歸一化層仍然位于殘差層(跳過連接)內。
那么,他們為什么要移動歸一化層的位置呢?原因是它有助于訓練穩定性,如下圖所示。

IMG
不幸的是,這個數字顯示了與QK-Norm一起重新排序的結果,這是一個單獨的概念。因此,很難說歸一化層重新排序本身貢獻了多少。
2.2 QK-規范
Gemma 2和Gemma 3,中使用QK-norm。
QK-Norm本質上是另一個RMSNorm層。它放置在多頭注意(MHA)模塊中,并在應用RoPE之前應用于查詢(q)和鍵(k)。 與Post-Norm一起,QK-Norm穩定了訓練。請注意,QK-Norm不是由OLMo 2發明的,而是追溯到2023年Scaling Vision Transformers論文。
2.3 OLMo 2 總結
簡而言之,的OLMo 2架構設計決策主要是RMSNorm位置:RMSNorm不是在注意力和FeedForward模塊之前(后規范的一種),而是在之后,以及為注意力機制(QK-Norm)內的查詢和鍵添加RMSNorm,它們一起有助于穩定訓練損失。

3. Gemma 3
谷歌的Gemma模型一直很好,我認為與其他流行型號(如Llama系列)相比,它們一直有點不受歡迎。
Gemma與其他模型相比,最大的的區別是相當大的詞匯量(更好地支持多種語言),以及更關注27B大小(相對于8B或70B)。
但請注意,Gemma2的尺寸也更小:1B,4B和12B。
27B尺寸達到了一個非常好的點:它比8B更強大,但不像70B型號那樣資源密集。
那么,《Gemma 3》中還有什么有趣的呢? 如前所述,其他模型如Deepseek-V3/R1使用混合專家(MoE)架構來降低推理時的內存需求,給定一個固定的模型大小。
Gemma 3使用不同的“技巧”來降低計算成本,即滑動窗口注意力。
3.1 滑動窗口注意
隨著滑動窗口的注意(LongFormer paper in 2020,最初在2020年的LongFormer論文中引入,并且Gemma 2已經使用),Gemma 3團隊能夠將KV緩存中的內存要求減少大量,如下圖所示。

IMG
那么,什么是滑動窗口注意力呢? 如果我們將定期的自我關注視為一種全局注意力機制,因為每個序列元素都可以訪問所有其他序列元素,那么我們可以將滑動窗口注意力視為局部注意力,因為在這里我們限制當前查詢位置周圍的上下文大小。如下圖所示。

請注意,滑動窗口注意力可以同時使用多頭注意和分組查詢注意力;Gemma3使用分組查詢注意力。
如上所述,滑動窗口注意力也稱為本地關注,因為本地窗口環繞并移動當前查詢位置。相比之下,定期關注是全局性的,因為每個token都可以訪問所有其他token。
現在,如上所述,Gemma 2前身架構之前也使用滑動窗口注意。Gemma3的區別在于它們調整了全局(常規)和本地(滑動)注意力之間的比例。
例如,Gemma 2使用混合注意力機制,將滑動窗口(本地)和全局注意力以1:1的比例組合在一起。每個token都可以進入附近上下文的4k令牌窗口。
Gemma2在其他層中使用滑動窗口注意力,Gemma3現在有5:1的比例,這意味著每5個滑動窗口(局部)注意力層只有1個完整的注意力層; 此外,滑動窗口尺寸從4096(Gemma 2)減少到1024(Gemma3)。這將模型的重點轉移到更高效的本地化計算上。
根據他們的消融研究,使用滑動窗口注意力對建模性能的影響最小,如下圖所示。

上圖顯示滑動窗口注意力對LLM生成的輸出復雜性幾乎沒有影響。
雖然滑動窗口注意是Gemma 3中最值得注意的架構方面,但我也想簡要介紹歸一化層的放置,作為上一個OLMo 2部分的后續。
3.2 Gemma3中的規范化層放置
需要強調的是,Gemma 3在預規范和后規范設置中都使用RMSNorm,圍繞其分組查詢注意力模塊。
這類似于Gemma 2,但仍然值得強調:
(1)原始transformer中使用的后規范(“注意是您需要的一切”)不同
(2)由GPT-2普及并隨后用于許多其他架構的預規范
(3)我們之前看到的OLMo 2中的后規范風味。

上圖:OLMo2和Gemma 3之間的架構比較;請注意Gemma 3中的附加規范化層。
這種規范化層放置是一種相對直觀的方法,因為它得到了兩全其美:前規范和后規范。 一點額外的正常化不會傷害。在最壞的情況下,如果額外的規范化是多余的,這增加了一些通過冗余的低效率。 在實踐中,由于RMSNorm相對便宜,這不應該產生任何明顯的影響。
3.3 Gemma 3 總結
Gemma 3是一個表現良好的開放重量LLM,在開源圈子中有點被低估。最有趣的部分是使用滑動窗口注意來提高效率(將來將其與MoE相結合會很有趣)。
此外,Gemma 3具有獨特的歸一化層放置,在注意和FeedForward模塊之前和之后放置RMSNorm圖層。
3.4 Bonus: Gemma 3n
在Gemma 3發布幾個月后,Google共享Gemma 3n,這是一款Gemma 3型號,經過優化,以實現小型設備效率,目標是在手機上運行。
Gemma 3n 為提高效率而發生的變化之一是所謂的“每層嵌入”(PLE)參數層。這里的關鍵思想是在GPU內存中只保留模型參數的子集。令牌層特定嵌入,例如文本,音頻和視覺模式的嵌入,然后按需從CPU或SSD流式傳輸。
下圖顯示了PLE內存的節省,列出了標準Gemma 3模型的54.4億個參數。這可能指的是Gemma 3 40億變種。

54.4億對40億參數差異是因為Google在LLM中報告參數計數的有趣方式。它們通常排除嵌入參數以使模型看起來更小,除非在這種情況下,它很方便地包含它們,使模型看起來更大。這并不是谷歌獨有的,因為這種方法已經成為整個領域的常見做法。
MatFormer另一個有趣的技巧是MatFormer概念(Matryoshka Transformer的縮寫)。 例如,Gemma 3n使用單個共享的LLM(變壓器)架構,可以切成更小的獨立可用的模型。每個切片都經過訓練以自行運行,因此在推理時間,我們可以運行您需要的部分(而不是大型模型)。
4.Mistral Samll 3.1
Mistral Small 3.1 24B于3月在Gemma 3發布后不久發布,值得注意的是在幾個基準測試(數學除外)上優于Gemma 3 27B,同時更快。
Mistral Small 3.1 over Gemma 3 的推論延遲較低的原因可能是由于它們的自定義標記化器,以及縮小 KV 緩存和圖層數。否則,它是如下圖所示的標準架構。

早期的Mistral模型利用了滑動窗口的注意力,但它們似乎在Mistral Small 3.1中放棄了它。 因此,由于Mistral使用常規的Grouped-Query Attention而不是Gemma 3中的滑動窗口的Grouped-Query Attention,因此可能由于能夠使用更優化的代碼(即FlashAttention)而節省額外的推理計算節省。例如,我推測,雖然滑動窗口注意力會減少內存使用,但它并不一定會降低推論延遲,這正是Mistral Small 3.1所關注的。
5.Llama 4
前文關于混合專家(MoE)的廣泛介紹性討論再次得到回報。Llama4 還采用了MOE方法,并遵循相對標準的架構,與DeepSeek-V3非常相似,如下圖所示。(Llama 4包括原生多模式支持,類似于Gemma和Mistral等模型)。

雖然Llama 4 Maverick架構看起來與DeepSeek-V3非常相似,但有一些有趣的差異值得強調。
首先,Llama 4使用類似于其前輩的Grouped-Query Attention,而DeepSeek-V3使用多頭潛在注意力。
現在,DeepSeek-V3和Llama 4 Maverick都是非常大的架構,DeepSeek-V3的總參數數量大約為68%。
然而,DeepSeek-V3擁有370億個有源參數,其活性參數是Llama 4 Maverick(17B)的兩倍多。
與DeepSeek-V3(9名活躍專家,每個2名隱藏尺寸為2名活躍專家,每個8,192個隱藏尺寸)相比,Llama 4 Maverick使用更經典的MOE設置,具有更少但更大的專家(每個專家,2,048個隱藏尺寸)。此外,DeepSeek在每個transformer塊(前3個除外)中使用MoE層,而Llama 4在所有其他變壓器塊中交替使用MoE和密集模塊。
鑒于架構之間的許多小差異,很難確定它們對最終模型性能的確切影響。然而,主要的收獲是,MOE架構在2025年的受歡迎程度顯著上升。
6.Qwen3
Qwen團隊始終如一地提供高質量的開放式LLM。 現在,Qwen3是排行榜頂部的另一個熱門系列,適合他們的尺寸類。有7個密集型號:0.6B,1.7B,4B,8B,14B和32B。有2種MoE型號:30B-A3B和235B-A22B。
6.1 Qwen3(Dense)
先討論密集的模型架構。0.6B型號可能是最小的當前一代開放型號。它具有出色的令牌/秒吞吐量和低內存占用空間,如果您計劃在本地運行它。但更重要的是,由于規模小,也很容易在本地進行訓練。
因此,Qwen3 0.6B已經取代了Llama 3 1B。下面顯示了這兩種架構的比較。

IMG
上圖是Qwen3 0.6B和Llama 3 1B之間的架構比較;請注意,Qwen3是一個更深層次的架構,具有更多的圖層,而Llama 3是一個更廣泛的架構,具有更多的注意力。
可以看出Qwen3的內存占用空間較小,因為它總體上是一個較小的架構,但也使用更小的隱藏層和更少的注意力。然而,它使用比Llama 3更多的transformer塊,這導致運行時更慢(較低的令牌/秒生成速度)。
6.2 Qwen3(MOE)
Qwen3還有兩種MoE口味:30B-A3B和235B-A22B。 為什么一些架構,如Qwen3作為常規(密集)和MoE(稀疏)變體?
MOE變體有助于降低大型基礎模型的推理成本。提供密集版和MoE版,根據用戶的目標和限制為用戶提供靈活性。
密集的模型通常更直接地在各種硬件上進行微調、部署和優化。
另一方面,MoE模型針對縮放推理進行了優化。例如,在固定的推理預算下,它們可以實現更高的整體模型容量(即由于更大而在訓練期間吸收知識),而不會按比例增加推理成本。
通過發布這兩種類型,Qwen3系列可以支持更廣泛的用例:用于魯棒性,簡單性和微調的密集模型,以及用于大規模高效服務的MoE模型。

IMG
如上圖所示,DeepSeek-V3和Qwen3 235B-A22B架構非常相似。不過,值得注意的是,Qwen3模型不再使用共享專家(Qwen3模型早期的Qwen模型,Qwen2.5-MoE如Qwen2.5-MoE確實使用了共享專家)。
Qwen3團隊沒有透露他們離開共享專家的原因。猜測,當他們將專家從2(Qwen2.5-MoE)增加到8(在Qwen3中)時,也許根本沒有必要為他們的設置訓練穩定性。
然后,他們能夠通過使用8而不是8+1專家來節省額外的計算/內存成本。(然而,這并不能解釋為什么DeepSeek-V3仍然保留他們的共享專家。
7.SmolLM3
SmolLM3SmolLM3可能不像本文所涵蓋的其他LLM那樣受歡迎,但它仍然是一個有趣的模型,因為它在相對較小且方便的30億個參數模型尺寸下提供了非常好的建模性能,位于1.7B和4B Qwen3模型之間,如下圖所示。
而且,它還分享了很多訓練細節,類似于OLMo,這是罕見的,總是值得贊賞!
如下圖所示,SmolLM3架構看起來相當標準。也許最有趣的方面是它使用NoPE(沒有位置嵌入),不過。

IMG
7.1 無位置嵌入(NoPE)
在LLM中,NoPE是一個較早的想法,可以追溯到2023年的論文(位置編碼對變壓器中長度泛化的影響),以刪除顯式位置信息注入(例如通過早期GPT架構或現在的RoPE中的經典絕對位置嵌入層)。
在基于transormer的LLM中,位置編碼通常是必要的,因為自我注意獨立于順序對待token。絕對位置嵌入通過添加一個額外的嵌入層來解決這個問題,該層為token嵌入添加信息。

IMG
另一方面,RoPE通過旋轉查詢和鍵向量相對于其令牌位置來解決這個問題。
然而,在NoPE層中,根本不添加這樣的位置信號:不是固定的,沒有學習的,不是相對的,什么都沒有。
即使沒有位置嵌入,由于因果注意掩碼,模型仍然知道之前有哪些token。這個mask阻止每個token關注未來。因此,位于 t位置的token只能看到位置 ≤ t的token,這保留了自動遞歸順序。
因此,雖然沒有明確添加的位置信息,但模型的結構中仍然存在隱含的方向感,并且LLM在常規梯度下降訓練中,如果發現它有利于優化目標,則可以學習利用它。
因此,總體而言NoPE論文不僅發現不需要位置信息注入,而且還發現NoPE具有更好的長度泛化,這意味著LLM應答性能隨著序列長度的增加而惡化較少,如下圖所示。

請注意,上述實驗是使用相對較小的GPT風格模型進行的,該模型具有約1億個參數和相對較小的上下文大小。目前尚不清楚這些發現對更大的當代LLM的推廣程度。
出于這個原因,SmolLM3團隊可能只在每個第4層“應用”NoPE(或更確切地說是省略的RoPE)。
8.Kimi 2
Kimi2 最近在AI社區掀起了巨浪,因為它是一個開放式模型,性能非常好。根據基準測試,它與谷歌的Gemini,Anthropic的Claude和OpenAI的ChatGPT模型等最好的專有模型相當。
Muon一個值得注意的方面是它使用相對較新的Muon優化器的變體而不是AdamW。
這是Muon第一次被使用超過AdamW用于這種尺寸的任何生產型號(以前,它只被證明可以擴展到16B)。這導致了非常好的訓練損失曲線,這可能有助于將這個模型彈射到上述基準的頂部。
雖然人們評論說損失非常順利(由于缺乏峰值),我認為它不是特別順利(例如,在下圖中看到OLMo 2損失曲線;此外,梯度的L2規范可能是跟蹤訓練穩定性的更好指標)。然而,值得注意的是損失曲線衰減的程度。
它可能是這一代最大的LLM(考慮到Llama 4 Behemoth沒有發布的限制,專有的LLM不計算在內,Switch TransformerGoogle的1.6萬億switch transformer是來自不同一代的編碼器解碼器架構)。
Kimi 2使用了在本文開頭介紹的DeepSeek-V3架構,使它們更大,如下圖所示。

IMG
如上圖所示,Kimi 2.5與DeepSeek V3基本相同,除了它使用了更多的MoE模塊專家,在多頭潛在注意(MLA)模塊中使用了更少的頭部。
因此,在DeepSeek R2發布之前,最有可能的是Kimi K2團隊將這些課程牢記在心,并將Kimi K2作為開放重量模型分享。在撰寫本文時,Kimi K2是最令人印象深刻的開放重量模型。
??https://sebastianraschka.com/blog/2025/the-big-llm-architecture-comparison.html??
本文轉載自??CourseAI??,作者:CourseAI

















