
文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

文章圖片

機器之心編譯
作者:Sebastian Raschka
編譯:Panda
眾所周知 , OpenAI 并不夠 Open , 不僅研究論文發得越來越少 , 開源模型也是千呼萬喚始出來 。 其近日發布的兩個 gpt-oss 開源模型已經吸引了無數關注 , 網上也已經出現了不少解讀文章或視頻 。
近日 , 我們熟悉的 Sebastian Raschka 也發布了一篇深度技術博客 , 對 gpt-oss 進行了詳細分析 , 并回顧了自 GPT-2 以來 AI 社區取得的進步;此外 , 他還將其與 Qwen 3 進行了比較 。
博客標題:From GPT-2 to gpt-oss: Analyzing the Architectural Advances And How They Stack Up Against Qwen3 博客地址:https://sebastianraschka.com/blog/2025/from-gpt-2-to-gpt-oss.html以下為該博客文章的主要內容:
gpt-oss-120b 和 gpt-oss-20b 是自 2019 年 GPT-2 發布以來 OpenAI 發布的首批開放權重模型 。 得益于一些巧妙的優化 , 它們可以在本地運行 。
我花了幾天時間閱讀代碼和技術報告 , 總結出了其中最有趣的細節 。
本文主要包括以下內容:
與 GPT-2 的模型架構比較 MXFP4 優化 , 使 gpt-oss 模型能夠在單 GPU 上運行 寬度與深度的權衡(gpt-oss 與 Qwen3) 注意力偏差和 sinks 基準結果以及與 GPT-5 的比較1、模型架構概述
在更詳細地討論架構之前 , 我們先大概了解一下這兩個模型:gpt-oss-20b 和 gpt-oss-120b 。
圖 1:兩個 gpt-oss 模型的架構示意圖
如果你對 LLM 架構有所了解 , 可能乍一看會覺得這兩個 gpt-oss 并沒有什么新穎或不尋常之處 。
這并不奇怪 , 因為領先的 LLM 開發商傾向于使用相同的基礎架構 , 然后進行一些較小的調整 。 這純粹是我的猜測 , 但我認為這是因為:
這些實驗室之間存在大量的人員流動 。 我們仍然沒有找到比 Transformer 架構更好的架構 。 盡管現在已經有了狀態空間模型(SSM)和文本擴散模型 , 但據我所知 , 還沒有人證明它們在這種規模下的性能可媲美 Transformer 。 大部分改進可能來自數據和算法的調整 , 而非重大的架構變更 。話雖如此 , 它們的設計選擇仍然有很多有趣的方面 。 其中一些在上圖中有所展示(也有一些沒有 , 但我們稍后也會討論) 。 在本文的其余部分 , 我將重點介紹這些特性 , 并逐一將它們與其他架構進行比較 。
這里簡單說明一下 , gpt-oss-20b 模型可以在配備了 16 GB RAM 的消費級 GPU 上運行 。 gpt-oss-120b 模型可在配備 80 GB RAM 或更高配置的單塊 H100 處理器上運行 。 但后面還會提到一些重要的注意事項 。
2、自 GPT-2 以來的變化
在比較 gpt-oss 和更新的架構之前 , 讓我們先回到過去 , 將其與 GPT-2 對比一番(圖 2) , 看看它到底取得了多大的進展 。
圖 2:gpt-oss-20b 與 GPT-2 XL 1.5B 的比較 。
gpt-oss 和 GPT-2 都是基于 2017 年的論文《Attention Is All You Need》中提出的 Transformer 架構構建的僅解碼器 LLM 。
但多年時間已過 , 許多細節已經變化 。
然而 , 這些變化并非 gpt-oss 獨有 。 正如后面介紹的 , 它們也出現在許多其他 LLM 中 。
2.1 移除 Dropout
2012 年提出的 Dropout 是一種傳統的防止過擬合的技術 , 其實現方式是在訓練過程中隨機「丟棄」(即將其設置為零)一部分層激活值或注意力分數(圖 3) 。 然而 , Dropout 在現代 LLM 中很少使用 , GPT-2 之后的大多數模型都已放棄這種技術 。
圖 3:將 Dropout 應用于注意力分數矩陣的示意圖
我推測 , GPT-2 之所以使用 Dropout , 是因為它繼承自原始的 Transformer 架構 。 研究者可能后面注意到 , 它并沒有真正提升 LLM 的性能(我在小規模的 GPT-2 復現運行中也觀察到了同樣的情況) 。 這可能是因為 LLM 通常只在海量數據集上進行單輪訓練 , 這明顯不同于 Dropout 最初引入時針對的數百輪訓練方案 。 因此 , 由于 LLM 在訓練過程中每個 token 只被識別一次 , 因此過擬合的風險很小 。
有趣的是 , 雖然 Dropout 在 LLM 架構設計中多年來一直被忽略 , 但我找到了一篇 2025 年的研究論文《Drop Dropout on Single-Epoch Language Model Pretraining》—— 其中包含小規模的 LLM 實驗 (Pythia 1.4B) , 證實了 Dropout 在這些單輪訓練方案中會導致下游性能下降 。
2.2 RoPE 取代絕對位置嵌入
在基于 Transformer 的 LLM 中 , 由于注意力機制的存在 , 位置編碼是必需的 。 默認情況下 , 注意力機制會將輸入 token 視為無序的 。 在原始 GPT 架構中 , 絕對位置嵌入會通過為序列中的每個位置添加一個學習到的嵌入向量(圖 4)來解決這個問題 , 然后將其添加到 token 嵌入中 。
圖 4:絕對位置嵌入示意圖
RoPE(旋轉位置嵌入)則是一種不同的方法:它不是將位置信息添加為單獨的嵌入 , 而是通過根據每個 token 的位置對查詢和鍵向量執行旋轉來編碼位置 。
RoPE 于 2021 年首次提出 , 并隨著 2023 年原始 Llama 模型的發布而得到廣泛采用 , 此后已成為現代 LLM 的主要組成部分 。
2.3 Swish/SwiGLU 取代 GELU
早期的 GPT 架構使用 GELU 。 為什么現在的使用 Swish 而不是 GELU?
在我看來 , Swish 的計算成本略低 , 這就是它的全部優勢 。 在不同的論文中 , 兩者的建模性能都可能更優 。 在我看來 , 這些細微的差異可能在標準誤差范圍內 , 實際結果會根據超參數敏感度而有所不同 。
激活函數曾經是一個熱門的爭論話題 , 直到十多年前深度學習社區基本確定采用 ReLU 函數 。 此后 , 研究者提出并嘗試了許多類似 ReLU 的變體 , 這些變體具有更平滑的曲線 , 而 GELU 和 Swish(圖 5)是其中最受青睞的變體 。
圖 5:Swish 和 GELU 激活函數的比較 , 它們都是 ReLU 的更平滑版本 。
早期的 GPT 架構使用 GELU , 其定義為 0.5x * [1 + erf (x /sqrt (2))
。 其中 , erf(誤差函數的縮寫)是高斯積分 , 它使用高斯積分的多項式近似來計算 , 這使得它的計算成本比 Swish 中使用的 S 型函數(其中 Swish 只是 x * sigmoid (x))等更簡單的函數更高 。
實際上 , Swish 的計算成本略低于 GELU , 這可能就是它在大多數較新的模型中取代 GELU 的主要原因 。
如今 , Swish 已被應用于大多數架構 。 然而 , GELU 并未被完全遺忘;例如 , 谷歌的 Gemma 模型仍然使用 GELU 。
然而 , 更值得注意的是 , 前向模塊(一個小型多層感知器)已被門控的「GLU」所取代 , 其中 GLU 代表門控線性單元 , 是在 2020 年的一篇論文中提出的 。 具體來說 , 2 個全連接層被 3 個全連接層所取代 。
乍一看 , GEGLU/SwiGLU 變體似乎比常規前向層更好 , 因為僅僅是因為增加了一層 , 參數就更多了 。 但這并非易事 , 因為在實踐中 , SwiGLU/GEGLU 中的 W 和 V 權重層通常被選擇為傳統前向層中 W_1 層大小的一半 。
為了更好地說明這一點 , 來看看常規和 GLU 變體的具體代碼實現:
圖 7:常規前向模塊(上)和 SwiGLU 變體(下)
因此 , 假設嵌入維度為 1024 。 在常規前向情況下 , 將會有:
fc1:1024 × 4096 = 4194304 fc2:1024 × 4096 = 4194304也就是說 , fc1 + fc2 = 8388608 個參數 。
對于 GLU 變體 , 則有:
fc1:1024 × 1024 = 1048576 fc2:1024 × 1024 = 1048576 fc3:1024 × 1024 = 1048576即 3 × 1048576 = 3145728 個權重參數 。
因此 , 總體而言 , 使用 GLU 變體可以減少參數數量 , 并且性能也更好 。 性能更佳的原因是這些 GLU 變體提供了額外的乘法交互 , 從而提高了表示能力(這與深度細長的神經網絡比淺層寬廣的神經網絡表現更好的原因相同 , 前提是它們訓練得當) 。
2.4 混合專家取代單個前向模塊
除了將前向模塊升級為 SwiGLU 之外 , gpt-oss 還將單個前向模塊替換為了多個前向模塊 , 每個 token 生成步驟僅使用一個子集 。 這種方法被稱為混合專家模型 (MoE) , 如下圖 8 所示 。
圖 8:前向模塊被混合專家 (MoE) 取代 。
因此 , 用多個前向模塊替換單個前向模塊(就像在 MoE 設置中所做的那樣)會顯著增加模型的總參數數量 。 然而 , 關鍵在于我們不會為每個 token 使用(「激活」)所有專家模型 。 相反 , 路由器只會為每個 token 選擇一小部分專家模型 。
由于每次只有少數專家模型處于活動狀態 , 因此 MoE 通常被描述為稀疏模塊 , 而密集模塊則始終使用完整的參數集 。 然而 , 通過 MoE 形式積累的大量參數會增加 LLM 的容量 , 這意味著它在訓練過程中會積累更多知識 。 同時 , 稀疏性可保證推理的高效性 , 因為我們不會同時使用所有參數 。
(有趣的事實:在大多數 MoE 模型中 , 專家權重占模型總參數的 90% 以上 。 )
2.5 分組查詢注意力取代多頭注意力
近年來 , 分組查詢注意力 (GQA) 興起 , 成為了一種比多頭注意力 (MHA) 計算效率和參數效率更高的替代方案 。
在 MHA 中 , 每個注意力頭都有自己的一組鍵和值 。 GQA 通過將多個注意力頭分組以共享相同的鍵和值投影來減少內存占用 。
例如 , 如圖 9 所示 , 如果有 2 個鍵值組和 4 個注意力頭 , 則注意力頭 1 和 2 可能共享一組鍵和值 , 而注意力 3 和 4 則共享另一組鍵和值 。 這種分組會減少鍵和值的計算總量 , 從而降低內存占用并提高效率 , 而且根據消融研究 , 這不會顯著影響建模性能 。
圖 9:MHA 與 GQA 的比較 。 此處 , 分組大小為 2 , 其中鍵值對在 2 個查詢之間共享 。
因此 , GQA 的核心思想是通過在多個查詢頭之間共享鍵和值頭來減少鍵和值頭的數量 。 這可 (1) 降低模型的參數數量 , (2) 減少推理過程中鍵和值張量的內存帶寬占用 , 因為需要從鍵值緩存中存儲和檢索的鍵和值更少 。
雖然 GQA 主要是為了提高 MHA 的計算效率 , 但一些消融研究(例如原始 GQA 論文和 Llama 2 論文中的研究)表明 , 它在 LLM 建模性能方面與標準 MHA 相當 。
2.6 滑動窗口注意力
滑動窗口注意力(下圖 10)最早在 LongFormer 論文(2020 年)中提出 , 后來由 Mistral 推廣 。 有趣的是 , gpt-oss 每隔一層就應用一次它 。 你可以將其視為多頭注意力(在本例中為分組查詢注意力 (GQA))的一種變體 , 其中注意力上下文被限制在較小的窗口中 , 從而可同時降低內存使用量和計算成本 。
圖 10:常規注意力(左)與滑動窗口注意力(右)的比較 。
具體來說 , gpt-oss 會交替關注完整上下文的 GQA 層和滑動窗口限制為 128 個 token 的 GQA 層 。
實際上 , Gemma 2 (2024) 也使用了類似的 1:1 比例 。 今年早些時候發布的 Gemma 3 則更進一步 , 改為 5:1 的比例 , 這意味著每五個滑動窗口(局部)注意力層只有一個完整的注意力層 。
根據 Gemma 的消融研究 , 滑動窗口注意力對建模性能的影響微乎其微 , 如下圖所示 。 需要注意的是 , Gemma 2 中的窗口大小為 4096 個 token , 而 Gemma 3 將其減少到 1024 個 token 。 在 gpt-oss 中 , 窗口只有 128 個 token , 非常小 。
另外 , 有趣的是 , OpenAI 的官方文章指出 , 滑動窗口注意力顯然已在 GPT-3 中使用:「這些模型使用了交替的密集和局部帶狀稀疏注意力模式 , 類似于 GPT-3」
我回顧了 GPT-3 的原始論文 , 那里確實提到了這一點:「我們使用了與 GPT-2 相同的模型和架構 , 包括其中描述的修改后的初始化、預歸一化和可逆 token 化 , 不同之處在于 , 我們在 Transformer 的各層中使用交替的密集和局部帶狀稀疏注意力模式 , 類似于 Sparse Transformer 。 」
2.7 RMSNorm 替換 LayerNorm
最后一個不同于 GPT-2 的小調整是用 RMSNorm (2019) 替換 LayerNorm (2016) , 這是近年來的一個常見趨勢 。
類似于用 Swish 和 SwiGLU 替換 GELU , RMSNorm 也是合理的效率小改進之一 。RMSNorm 與 LayerNorm 類似 , 其目的都是對層激活進行歸一化 , 如下圖 11 所示 。
你可能還記得 , 不久前 , BatchNorm 還是這項任務的首選 。 但后來它逐漸失寵 , 主要是因為它難以高效并行化(由于均值和方差的批次統計數據) , 并且在小批量下表現不佳 。
圖 11:LayerNorm(左)和 RMSNorm(右)在小型線性層中的比較 。
如上圖 11 所示 , LayerNorm 和 RMSNorm 都會將層輸出縮放到合理的范圍內 。
LayerNorm 的做法是減去均值并除以標準差 , 使得層輸出具有零均值和單位方差(方差為 1 , 標準差為 1) 。
RMSNorm 則是將輸入除以均方根 。 這不會強制要求均值和方差為零 , 但均值和方差應處于合理范圍內:均值在 -1 到 1 之間 , 方差在 0 到 1 之間 。 在圖 11 所示的特定示例中 , 均值為 0.77 , 方差為 0.41 。
LayerNorm 和 RMNSorm 都能穩定激活尺度并改善優化效果 , 但 RMNSorm 通常更適合大規模 LLM , 因為它的計算成本更低 。 與 LayerNorm 不同 , RMNSorm 沒有偏差(平移)項 , 并將昂貴的均值和方差計算簡化為一次均方根運算 。 這將跨特征約簡的次數從兩次減少到一次 , 從而降低 GPU 的通信開銷并提高訓練效率 。
2.8 GPT-2 的遺產
我仍然認為 , 在學習 LLM 時 , GPT-2 是一個優秀的入門架構 。 它足夠簡單易懂 , 不會迷失在層層優化技巧中 , 但又足夠復雜 , 能夠讓你扎實掌握現代 Transformer 模型的工作原理 。
從 GPT-2 開始 , 你可以專注于基礎知識(注意力、位置嵌入、規范化和整體訓練流程) , 而不會被新架構中的額外功能和調整所淹沒 。
事實上 , 我認為在嘗試疊加新的變化之前 , 先花時間了解甚至實現 GPT-2 是值得的 。 你不僅能更容易地理解這些變化 , 而且你可能會更加欣賞它們 , 因為你將更好地理解它們試圖解決的局限性或問題 。
例如 , 我最近從我的 GPT-2 代碼入手 , 從零開始實現了 Qwen3 架構 , 它與 gpt-oss 非常相似 , 這就引出了下一個話題:將 gpt-oss 與更新的架構進行比較 。
從頭開始實現 Qwen3:https://github.com/rasbt/LLMs-from-scratch/tree/main/ch05/11_qwen3
3、比較 gpt-oss 與最新架構 (Qwen3)
現在我們已經了解了從 GPT-2 到 gpt-oss 的演變過程 , 接下來我們將 gpt-oss 與更新的架構 Qwen3 進行比較 , 后者于三個月前(2025 年 5 月)發布 。
我之所以選擇 Qwen3 , 是因為截至撰寫本文時 , 它是頂級的開放權重模型之一 。 此外 , Qwen3 也是 MoE 模型 , 由于其可訓練參數的總體規模相對相似 , 幾乎可以直接與 gpt-oss 相比 。
下圖對比了 gpt-oss-20B 與大小相當的 Qwen3 模型 。
圖 13:大小相當的 gpt-oss 和 Qwen3 模型 。
可以看到 , gpt-oss 20B 和 Qwen3 30B-A3B 在架構組件上非常相似 。 除了尺寸之外 , 主要區別在于 gpt-oss 采用了滑動窗口注意力 , 而 Qwen3 則沒有 。
我們將在以下小節中逐一介紹值得注意的細節 。
3.1 寬度與深度
仔細觀察這兩個模型 , 我們會發現 Qwen3 的架構更深 , 它有 48 個 Transformer 模塊 , 而不是 24 個 。
另一方面 , gpt-oss 的架構更寬:
嵌入維度為 2880 , 而非 2048 中間的專家(前向)投影維度也為 2880 , 而非 768還值得注意的是 , gpt-oss 使用了兩倍的注意力頭 , 但這并不會直接增加模型的寬度 。 寬度由嵌入維度決定 。
在參數數量固定的情況下 , 哪種方法更有優勢?根據經驗 , 更深的模型更靈活 , 但由于梯度爆炸和梯度消失(RMSNorm 和 shortcut 連接旨在緩解這些問題)導致的不穩定性問題 , 訓練起來可能更困難 。
更寬的架構具有推理速度更快的優勢(每秒 token 吞吐量更高) , 這是因為并行化程度更高 , 但內存成本也更高 。
就建模性能而言 , 遺憾的是 , 據我所知 , 除了 Gemma 2 論文(表 9)中的一項消融研究(ablation study)之外 , 目前尚無很好的同類比較(在參數大小和數據集保持不變的情況下) 。 該研究發現 , 對于 9B 參數架構 , 較寬的設置略優于較深的設置 。 在 4 個基準測試中 , 較寬的模型平均得分為 52.0 , 而較深的模型平均得分為 50.8 。
3.2 少量大型專家 vs. 大量小型專家
如上圖 14 所示 , 值得注意的是 , gpt-oss 的專家數量出奇地少(32 個而不是 128 個) , 并且每個 token 僅使用 4 個而不是 8 個活躍專家 。 然而 , 每個專家的數量都比 Qwen3 中的專家數量要多得多 。
這很有意思 , 因為最近的趨勢和發展表明 , 更多、更小的模型是有益的 。 在總參數大小不變的情況下 , 這種變化在來自 DeepSeekMoE 論文的下圖中得到了很好的展示 。
圖 15:來自《DeepSeekMoE: Towards Ultimate Expert Specialization in Mixture-of-Experts Language Models》的圖片 , https://arxiv.org/abs/2401.06066
值得注意的是 , 與 DeepSeek 的模型不同 , gpt-oss 和 Qwen3 都沒有使用共享專家 。
公平地說 , gpt-oss 中專家數量較少可能是 20B 規模的副作用 。 查看下面的 120B 模式 , 它們確實增加了專家(和 Transformer 模塊)的數量 , 同時保持其他所有參數不變 , 如下圖所示 。
圖 16:兩個 gpt-oss 架構比較 , 其中更大的 120B 模型僅擴展了 Transformer 模塊和專家的數量 。
20B 和 120B 模型如此相似的一個無聊解釋可能是因為 120B 模型是主要關注點 。 而創建較小模型最簡單的方法是使其更短一些(減少 Transformer 模塊)并減少專家數量 , 因為大多數參數都存儲在專家數量中 。 然而 , 有人可能會猜測他們是否先訓練 120B 模型 , 然后砍掉一些 Transformer 模塊和專家數量用于繼續預訓練(而不是從隨機權重開始) 。
無論如何 , 這是因為只縮放這兩者(Transformer 模塊和專家數量)的情況并不常見 。 例如 , 在查看多種尺寸的 Qwen3 MoE 模型(下圖 17)時 , 它們在更多方面彼此之間進行了更均衡的縮放 。
圖 17:各種 Qwen3 模型的架構差異 。
3.3 注意力偏差和 sinks
gpt-oss 和 Qwen3 都使用分組查詢注意力 。 主要區別在于 , 如前所述 , gpt-oss 通過在每個第二層中滑動窗口注意力來限制上下文大小 。
然而 , 有一個有趣的細節引起了我的注意 。 gpt-oss 似乎為注意力權重使用了偏差單元(bias units) , 如下圖所示 。
圖 18:gpt-oss 模型在注意力層中使用了偏差單元 。
自 GPT-2 時代以來 , 我就沒見過這些偏差單元被使用 , 它們通常被認為是多余的 。 事實上 , 我發現了一篇最近的論文 , 從數學上證明了至少對于鍵變換 (k_proj) 來說 , 情況確實如此 。 此外 , 實證結果表明 , 使用和不使用偏差單元之間幾乎沒有差異(見下圖 19) 。
圖 19:來自 https://arxiv.org/pdf/2302.08626 的表格 , 顯示了使用和不使用偏差單元從頭開始訓練模型時的平均測試損失 。
你可能注意到的另一個細節是圖 18 代碼截圖中 sinks(sinks)的定義 。 在一般模型中 , 注意力 sinks 是放置在序列開頭的特殊「始終關注」token , 用于穩定注意力 , 這在長上下文場景中尤其有用 。 也就是說 , 如果上下文變得很長 , 開頭這個特殊的、被關注的 token 仍然會被關注 , 并且它可以學習存儲一些關于整個序列的普遍有用的信息 。
在 gpt-oss 實現中 , 注意力 sinks 并非輸入序列中的實際 token 。 相反 , 它們是學習到的每人偏差邏輯單元 (per-headbias logits) , 并附加到注意力分數中(圖 20) 。 其目標與上述注意力 sinks 相同 , 但不修改 token 化的輸入 。
圖 20:gpt-oss 中注意力 sinks 的使用
3.4 許可證
最后 , 與 Qwen3 類似 , gpt-oss 模型采用了 Apache 2.0 開源許可證 , 這非常棒(這也是我自己的開源項目所偏好的許可證) 。 這意味著這些模型可以不受限制地蒸餾成其他模型或用于商業產品 。
開放權重 LLM vs 開源 LLM:這種區別多年來一直存在爭議 , 但值得澄清以避免混淆 。 一些模型開發者只發布模型權重和推理代碼(例如 Llama、Gemma 和 gpt-oss) , 而另一些模型開發商則會將所有東西都開源 , 包括訓練代碼、數據集和權重 。 (例如 OLMo)
按照更嚴格的定義 , gpt-oss 是一個開放權重模型(就像 Qwen3 一樣) , 因為它包含權重和推理代碼 , 但不包含訓練代碼或數據集 。 然而 , 業界對這一術語的使用并不一致 。
我曾經以為「gpt-oss」中的「oss」表示開源軟件(open source software);然而 , 令我驚訝的是 , OpenAI 在其官方公告文章中明確地將 gpt-oss 描述為開放權重模型 。
4、其他有趣細節
雖然前面幾節描述了該架構自 GPT-2 以來的演變 , 并討論了它與 Qwen3(以及大多數其他近期模型)的相似之處 , 但還有一些值得注意的細節尚未提及 。
這些要點不適合放在前面幾節 , 但仍然值得一提 。
4.1 訓練概況
遺憾的是 , 關于 gpt-oss 的訓練集大小和算法的信息并不多 , 但我從其模型卡 (1) 和宣布文章 (2) 中找到了一些有趣的拼圖碎片:
由此 , 我們知道 gpt-oss 模型是推理模型 。 訓練計算量是 210 萬個 H100 GPU 小時數 , 與規模約 5.6 倍的 DeepSeek V3 模型所需的 278.8 萬個 H800 GPU 小時數的訓練計算量大致相當 。 遺憾的是 , 目前尚無關于 Qwen3 訓練時間的信息 。
有趣的是 , gpt-oss 的訓練時間估算包含了用于指令遵循的監督學習和用于推理的強化學習 , 而 DeepSeek V3 只是一個預訓練的基礎模型 , DeepSeek R1 是在此基礎上單獨訓練的 。
4.2 推理工作
如上一節所述 , gpt-oss 模型是推理模型 。 然而 , 特別有趣的是 , 它們的訓練方式使得用戶可以通過推理時間縮放輕松控制推理程度 。
具體來說 , gpt-oss 模型可以接收「推理工作量:低 / 中 / 高」指令作為其系統提示詞的一部分 , 這可直接影響響應長度和準確率 , 如圖 21 所示 。
圖 21:不同推理工作量下 gpt-oss 模型的響應長度和質量
這種可調整性非常有用 , 因為它使我們能夠平衡成本、計算量和準確率 。 例如 , 如果任務很簡單 , 例如回答一個簡單的知識問題或修復一個小拼寫錯誤 , 我們可以跳過擴展推理 。 這能節省時間和資源 , 同時避免不必要的冗長響應和冗長的推理痕跡 。
與 Qwen3 或 OLMo 不同 , OpenAI 沒有發布強化學習訓練之前的基礎模型 , 這多少有些遺憾 。 基礎模型對于研究推理方法的研究者來說是極其寶貴的起點(這也是我目前喜歡使用 Qwen3 Base 的原因之一) 。 我猜測 , OpenAI 的決定更多是出于行業和生產用例的考慮 , 而非研究方面的考慮 。
請注意 , 原始 Qwen3 模型也有一個用于啟用 / 禁用思考(推理)模式的開關(通過在 tokenizer 中設置 enable_thinking=True/False 來啟用 / 禁用推理行為) 。 然而 , Qwen3 團隊在過去幾周更新了他們的模型 , 并從混合模型轉向了專用的 Instruct/Thinking/Coder 變體 。
原因是混合模式下的模型性能低于單個模型:「在與社區討論并反思此事后 , 我們決定放棄混合思考模式 。 現在我們將分別訓練 Instruct 和 Thinking 模型 , 以實現最佳質量 。 」
4.3 MXFP4 優化:一個細小卻重要的細節
一個有趣的驚喜是 , OpenAI 還發布了為 MoE 專家采用了 MXFP4 量化方案的 gpt-oss 模型 。
量化格式曾經是一個小眾話題 , 主要與移動或嵌入式 AI 相關 , 但隨著模型規模的擴大 , 這種情況發生了變化 。 在這種情況下 , MXFP4 優化能讓模型在單臺 GPU 設備上運行 。
實際效果如下:
大型模型(例如 120B)可安裝在單臺 80GB H100 或更新的 GPU 上 。 雖然不是消費級硬件 , 但租用一臺單 H100 的機器比租用多臺 H100 的機器便宜得多 。 此外 , 我們不必擔心在 GPU 之間分配模型并增加通信開銷 。AMD MI300X 顯卡從第一天起就支持 , 真是太好了! 較小的 20B 模型甚至可以使用 16 GB 顯存;需要注意的是 , 它必須是 RTX 50 系列或更新的 GPU 才能支持 MXFP4 。請注意 , 這些模型也可以在較舊的硬件上運行 , 但不支持 MXFP4 , 因此會消耗更多內存 。 如果沒有 MXFP4 優化 , bfloat16 模型將消耗更多內存 , 例如 48 GB(gpt-oss-20b)和 240 GB(gpt-oss-120b) 。
順便說一句 , 我可以在 Mac Mini 上使用 ollama 輕松運行 gpt-oss-20b 模型 。 它占用大約 13.5 GB 的內存 。 嗯 , 很合理 。
4.4 基準成績
這些模型還比較新 , 還沒有多少可靠的獨立基準測試結果 。 比如 LM Arena 排行榜上 , gpt-oss 尚未上榜 。 因此 , 根據 LM Arena 用戶的數據 , Qwen3-Instruct 目前仍然引領開放權重模型(圖 22) 。
圖 22:LM Arena 排行榜當前視圖(截至 2025 年 8 月 12 日)
只看 gpt-oss 發布博文中提供的推理基準測試 , 我們可以看到 gpt-oss 模型與 OpenAI 的專有模型以及 Qwen3 的性能相當(圖 23) 。
圖 23:主要基準測試圖表來自官方 gpt-oss 官方公告 。 「no tools」的 gpt-oss-120b 數據取自官方模型卡 , Qwen3 數據取自官方 Qwen3 代碼庫 。
然而 , 需要注意的是 , gpt-oss-120b 的大小幾乎只有 Qwen3 A235B-A22B-Thinking-2507 模型的一半 , 而且可以在單臺 GPU 上運行 。
然而 , 基準測試性能并不總是反映實際可用性 。 在過去幾天有限的使用中 , 我發現 gpt-oss 相當強大 。 不過 , 正如其他人所觀察到的 , 它似乎確實有相對較高的幻覺傾向(這一點在其模型卡中也有提到) 。
這可能源于它在訓練過程中過于注重數學、謎題和代碼等推理任務 , 這可能導致它「遺忘了一些常識」 。 不過 , 由于 gpt-oss 在設計時就考慮到了工具的使用 , 因此隨著時間的推移 , 這一限制可能會逐漸減弱 。 開源 LLM 中的工具集成仍處于早期階段 , 但隨著它的成熟 , 我預計我們會越來越多地讓模型在回答事實或基于知識的查詢時參考外部資源(例如搜索引擎) 。
屆時 , 更明智的做法是優先考慮推理能力而不是記憶能力 。 這很像人類在學校(或生活中)的學習 , 解決問題的能力往往比記憶事實更重要 。
5、gpt-oss 和 GPT-5
OpenAI 度過了忙碌的一周 , 在 gpt-oss 發布后不久就發布了備受期待的 GPT-5 模型 。 GPT-5 的發布非常有趣 。 如果說有什么要說的 , 那就是我真的很驚訝 , 他們的開源模型在基準性能方面與他們最好的產品相比竟也如此出色(圖 24) 。
圖 24:主要基準圖表來自 GPT-5 官方公告 。 gpt-oss 數據取自官方模型卡和公告 , Qwen3 數據取自官方 Qwen3-Coder 代碼庫 。
總而言之 , 盡管有些人認為該版本被過度炒作 , 但我很高興我們擁有了一套真正強大的開放權重模型 , 它們與最好的專有模型并無太大差距 。
【從GPT-2到gpt-oss,深度詳解OpenAI開放模型的進化之路】當然 , 基準測試通常不能準確反映實際使用情況 , 而且由于使用情況有限 , 現在下結論還為時過早 。 但我認為 , 對于喜歡使用開放權重和本地(或私有托管)模型的人來說 , 這是件好事 。
推薦閱讀
- 英國政府主動要求加裝后門!蘋果拒絕:從未構建,將來也絕不會!
- 從3699降到2325元,好評數超10萬條,鴻蒙OS+麒麟8000+衛星通信
- 從圖書館到宿舍:大一新生筆記本的真實使用場景解析
- 從2499跌至1486元,2k屏+金屬中框+驍龍8Gen 3,可以低價撿漏
- 榮耀徹底“攤牌了”,從5699元跌至2989元,進入清倉倒計時
- 當中國用戶將手機更換周期拉長到33個月,手機市場進入到了小冰期
- 機械革命星耀14冰晶藍全面登錄線下門店,歡迎到店品鑒
- 國產從3個方向圍攻ASML,一旦突破EUV光刻機,芯片戰就結束了
- 從一張照片到26TB的宇宙:西部數據如何重新定義影像存儲?
- 鴻蒙5到底好不好玩?這里有500+答案|2025年輕人嗨玩鴻蒙報告
