DeepSeek的「技術之美」:詳解R1是怎樣煉成的?

今天 AI 的滲透率只有 5%。剩下 95% 的人,他們的第一款 AI 應用會是什麼?
來源:真格基金(ID:zhenfund)
原標題:萬字賞析 DeepSeek 創造之美:DeepSeek R1 是怎樣煉成的?
原文連結:https://mp.weixin.qq.com/s/HB38prEMz275Rkj1g7mavA
大家好,我是 Monica.im 的產品合夥人張濤。
相信大家和我一樣,整個春節期間幾乎都在抱著手機刷資訊。白天看國內的反應,晚上看美國的反應。整個春節就這樣度過了。春節後這一週,大家已經在各種微信公眾號和其他平臺上刷了大量關於 R1 的分析文章,從技術到產品、再到長遠影響的探討,很多群也在轉發聊天記錄,有關於 R1 的十幾篇必讀文章。
我和雨森(真格基金管理合夥人)商量說來做這個分享時,就明白很多資訊可能會過時。既然我們這麼多人在這裡,如果仍然講一些比較常見或者宏觀的資訊,是浪費大家的時間。
這一週我在準備過程中,一方面讓我司首席科學家 Peak 幫我審查了很多技術和演算法方面的細節。另一方面,在整合各方資訊時,我發現了一個特別有趣的敘事角度。
今天的分享,既是為了讓大家更好地理解 R1 背後的脈絡,也是希望大家看到這次精彩冒險背後一個美妙的故事。
好了,今天的分享正式開始。
01
最好的致敬是學習
今年春節,我在上海過年,沒有回重慶,就透過影片給爸媽拜年。我給我媽說新年快樂時,聽到我爸在旁邊喊道:「你快問一下張濤,那個梁文鋒是不是真的那麼牛逼啊?」
今年的 DeepSeek 和 R1 話題真的是破圈的程度非常高,甚至像重慶這樣的二線城市的老頭老太太們都在關注這些話題,且真心關心它背後的原理到底是什麼。
首先我們回顧一下這些發生的事情,理清時間線,確保大家對這個事情有共同的認知。
去年 11 月 20 日,DeepSeek 在官方 Twitter 上釋出了 R1 Lite Preview。當時釋出的 R1 Lite Preview,實話說,離現在的影響力連 1% 都談不上,可能只有萬分之一。只有去年 11 月 o1 釋出後,有一些人試圖復現 o1,這時他們可能對這個 R1 Lite Preview 感興趣,甚至有人基於它進行一些蒸餾和 SFT 的工作。但這些工作在學術界內部並未出圈。
接著到 12 月 26 日,釋出了 DeepSeek V3。相比 R1 Lite Preview,它的影響力就更大了一些。稍後我會舉一個例子證明,至少在學術界,它是有出圈的。
第三個時間點是 1 月 15 日,DeepSeek 釋出了他們的 APP。當時如果大家仔細看,會發現 15 號釋出的 APP 中,已經有了 DeepThink 模式。
但是 DeepThink 這個模式一直無人在意,國內沒有,國外也沒有。如果大家能回到 15 號的語境下,其實可以理解為什麼。當時不僅是美國,包括我們在內,大家關注的新聞基本只有一個——特朗普即將登基。公眾的注意力還更多集中在這些政治事件上。直到 20 號,R1 才正式釋出,一方面是相關論文公開,另一方面是模型權重的開源。
從時間線來看,R1 最早的苗頭實際上在去年 11 月份就已經出現,並非一夜之間爆發的。在這個過程中,還有幾個關鍵節點需要關注,包括 V3 的重要性——這是我們今天討論的核心話題之一。
接下來,我給大家看一個有趣的現象。在 Google 上搜索 DeepSeek 這個關鍵詞,可以看到其關注度的起點是在 1 月 20 號,也就是 R1 釋出之後。隨著學術界開始小範圍討論,20 號到 24 號、27 號之間熱度逐漸升溫,直到 27 號,英偉達及一眾美國 AI 概念股「砸出巨坑」,DeepSeek 的搜尋量也隨之達到頂峰。即使熱度在一週後有所回落,相比 20 號之前接近 0% 的狀態,現在仍然維持在 20% 左右。這說明,儘管流量有所回撥,但關注度並未完全消退。
接下來是一個有趣的話題,不知道大家能不能猜到:在美國,按行政區域劃分,哪個地區對 DeepSeek 關注度最高?
我當時在看資料時覺得非常有意思。本以為會是加州,畢竟 AI 相關研究人員主要集中在那裡,但實際上,最高關注度出現在華盛頓特區。可以想象,在 27 號市場震盪後,華盛頓的一眾政客瘋狂在 Google 上搜索 DeepSeek 試圖搞清楚 DeepSeek 到底是個啥?
之後的排名則較為正常:加州、華盛頓州這些傳統 IT 公司和 AI 研究機構集中的地區關注度較高。但 DeepSeek 這麼高的關注度確實值得一提。
前面我們討論的是釋出方的反應,現在來看美國社會中精英 KOL 們的反饋。大家可能還記得,我之前提到,12 月 26 號 V3 釋出時,相比 R1 Lite Preview,這次在學術圈真正「破圈」了。
為什麼這麼說?可以看這張圖,右側是 Andrej Karpathy 的 Twitter。當天,他釋出了一條非常長的推文,詳細介紹了 V3,並評價其為「very nice and detailed tech report(非常出色且詳細的技術報告)」。可以確定的是,12 月 26 號 V3 釋出時,它已獲得美國主流學術圈的認可,只是當時很多人尚未意識到 V3 的更深層次價值。
我們再回到春節期間的「炸街」時刻。
第一次讓我意識到美國輿論開始轉變的節點是什麼?當時,我們都在各種群聊裡,應該有不少人看到了。那天,我特別興奮地轉發了 Marc Andreessen 的 Twitter。大家知道,他通常對中國科技持激進甚至有時候是輕蔑態度。
24 號時,他開始連發推文,驚歎這是什麼東西?太炸裂了吧。之前他會批註比如,這太厲害了,但請注意,我說它好,不代表我很高興,我是覺得它很危險。但僅僅一天後,他的語氣徹底改變了。這條推文沒有任何負面情緒,而是完全正面的表達。
到了 28 號,Sam Altman 也不得不出面表態,儘管說得彆彆扭扭的,比如暗示 「其實我是想開源的,但組織上不允許」之類的託詞。楊立昆也承認 R1 的影響力和研究質量,不過試圖將話題引向「開源」的勝利,而非某個國家的勝利。
無論如何,這項工作已經得到了美國 AI 界頂級領袖的認可。無論是對質量還是對這一事件本身的認可,其影響力已經顯而易見。至於這個影響是好是壞,原因是什麼,這是我們接下來要探討的話題。
到了 2 月 2 日或 3 日,仍然有一些持反對意見的人在稱這項工作是 DeepSeek 僱傭水軍炒作。實際上,主流圈子對此並未關注。但事實就擺在眼前,無需辯證。
最值得注意的是 1 月 27 日這一天,股市劇烈波動。左邊,從上到下依次是英偉達、臺積電、美光,股價瞬間砸一個天坑。右邊,從上到下是中芯國際、360 和金山雲,股價卻突然上漲,彷彿呈現出一種「東昇西落」的趨勢。這說明 R1 的出現對真實世界的影響同樣不容忽視。
在 Sensor Tower 的資料中,左圖顯示的是 DAU ,其中紫色線代表 ChatGPT。而在底部,原本較小的其他競品,如 Claude 和 Perplexity,雖然一直是 ChatGPT 的跟隨者,其使用者佔比相對恆定且較低。但在 1 月底的幾天裡,DeepSeek 出現了顯著增長,佔比大約達到 20%。
左圖顯示的是 DAU,右圖是新增下載量
右側的圖展示了新增下載量,在突破某個臨界點後繼續增長。我截圖的時候比較早,昨天檢視最新的資料,發現左圖趨勢持續向上,雖然右圖的下載量有所回落,但仍然高於 ChatGPT。目前來看,這一趨勢仍在持續。
不管是業界領袖的認可,股票市場的反應,還是真實使用者的選擇,都證明了這一事件的影響是真實存在的,並且具有使用者價值。這是過去半個月裡發生的重要變化。
接下來,我們回到為什麼要組織這次學習分享。這件事對我而言非常重要。我從 1 月 23 日開始關注,並頻繁閱讀中美兩地的各種言論,包括圈內和圈外的討論。隨著這個事件的破圈,越來越多非專業人士開始關注,人們對其歸因的方式也變得過於簡單。
比如,有人認為這是因為中國人工便宜,從而把美國頂尖科技的成本打下來了。也有人說這是抄襲,只要複製就能成功。此外,還有另一種敘事,即某個不知名的小團隊突然創造了全球頂級的科技創新。然而,無論哪種歸因,都顯得過於表面,脫離了產品,缺乏對技術本身的深入理解。
這個事件簡單歸因是傲慢的,最好的享用方式是學習它。
當面對一個如此重大的事件時,僅僅存入記憶是不夠的。去學習它、理解它,搞清楚為什麼會發生這樣大的影響力才是本次分享的核心目的。
02
什麼是推理模型?
對於大部分聽眾來說,我們不是專業研究演算法或工程的,我自己是做產品的。我們首先需要解決的一個基本問題是:什麼是推理模型?
我們已經有大語言模型了,為什麼還需要推理模型?
我這裡準備了一個小測試,不知道大家是否瞭解,人腦有一個特殊的能力叫「數量識別」。這不是簡單的數字識別,而是對數量的直覺判斷。比如,我會切換一張圖片,你需要在一秒內告訴我上面有多少顆黃球。一般來說,一個正常人只能識別 6 及 6 個以內的個數。好,現在準備——3、2、1,切換!
「數量識別」測試
透過這個實驗,我們可以發現,在幾千年的進化後,人類在數數時並不一定需要一個個地數,而是在一定範圍內可以憑直覺判斷。這一現象背後的認知機制,也是推理模型的一個重要基礎。
語言模型,特別是大語言模型,有一個特性相似的特點:模型在給出答案時,一般會直接做出回答,儘管這種方式往往容易出錯。舉個經典例子,比如 CoT(Chain-of-Thought,思維鏈),Jason Wei 強調了一個重要的思想:模型需要更多的 token 來進行思考。
Peak 曾經給我說過一個直擊本質的觀點。大家知道,語言模型的本質是啟用一個龐大的神經網路矩陣。當輸入一個 token 時,它能夠啟用矩陣中的某些部分,但這種啟用是有限的。當輸入更多的 token 時,能夠啟用的部分也更多,資訊量隨之增加。因此,更多的 token 意味著模型能夠得到足夠資訊,從而做出更為精準的決策。
模型需要更多 token 來「思考」,這也促使我們提出了推理模型(Reasoning Model)的概念。
什麼是推理模型?比如,我們可以用一個例子來說明。假設我們問一個問題:「從望京西到西直門坐地鐵需要幾站?」一個「直接回答型」的模型可能會像下圖左邊直接回答:「九站」。
而推理模型則會做出右邊的回答。它首先會考慮多種換乘路線,接著比較各路線的換乘站數,最後綜合得出最佳方案。推理模型不僅僅給出答案,它還會展示其思維過程。
大家可能會覺得,這和 CoT 有相似之處。那麼,推理模型和 CoT 有什麼區別呢?如果你已經習慣了使用 ChatGPT,你可能會直覺地認為,推理模型不就是 CoT 嗎?我直接寫個 CoT,讓它一步步進行推理就行了。比如,針對剛才的地鐵問題,我們可以跟模型講:請先列出所有可能的換乘路線,再計算每條路線的換乘站數,最後綜合得出最優答案。
如果你願意為每個問題都寫出如此詳細的 CoT,這也是可行的。
但這裡有個問題。我們來看一下去年震驚整個業界的事件——當時 ChatGPT 的 o1 系列模型釋出,它重新整理了多個記錄。比如在數學領域,它的得分從 13 分直接躍升至 56 分和 83 分;在寫程式碼方面,它從 11 分飆升至 89 分,快把榜單刷爆了。PhD 級別的科學問題雖然提升沒有那麼顯著,但也極為恐怖。如果你經常看論文,就會明白把基準測試重新整理一兩分都能發表論文。
其中,最讓人驚訝的是 PhD 級別的成績,尤其是右邊綠色,代表的是人類專家的得分。ChatGPT 已經超過了真正的 PhD。
推理模型的本質是讓模型自己構建 CoT,並將前面推理的步驟展示出來。雖然你也可以自己手動編寫 CoT,但問題是:我們能否對每一個問題都寫出完整的 CoT 呢?
比如,下面這兩個問題,分別出現在 2024 年 AI 的基準測試和 PhD 級別的評測中。假如你還是一個數學或物理 PhD,或許能寫出 CoT,但對於絕大多數人來說,能夠把每個問題的思維過程一步步寫出來並不容易。
左邊是 AIME 2024 的測試題
右邊為 PhD 水平 GPQA Diamond 的測試題
這就是推理模型的必要性。它能幫助我們處理一些特定領域的問題。舉個例子,推理模型非常適合解答謎題,比如翻譯二戰時期的密碼電文,或者進行數學證明,解決複雜的決策問題,甚至是開放式問題。推理模型不僅給出最終答案,還會展示思考過程。
而對於一些簡單的知識性問題,比如「哪個是中國的首都?」,我們顯然不需要使用推理模型,直接給出「北京」就可以。很貴,而且想得多容易搞錯。
推理模型有其適用場景。為什麼它在我們行業中如此重要呢?原因有兩點。
首先,大家看到的在數學、寫程式碼和 PhD 級別領域的突破,預示著大語言模型的應用不僅僅侷限於作為聊天機器人,它已經可以進入到加速國家科技研究的領域。推動 AI 發展的各大廠商都在追求 AGI,甚至更高層次的 ASI(超人工智慧)。
另外一個方面是,至少目前從 R1 的結果,以及之前大家在使用 o1 的過程中,我們發現,儘管訓練推理模型主要是為了處理數學、物理和寫程式碼的問題,但當一個模型掌握了推理過程後,它在處理一些更廣泛的場景時,包括寫作和對話,也變得更加有邏輯和思維能力。
從去年下半年開始,推理模型成為了大家都想攻克並解決的方向。
那問題就來了,如何復現 o1 呢?我們首先得看 o1,儘管今天我們沒有足夠時間深入探討,但我想分享一個特別有趣的事情。
o1 在釋出那天公佈了核心貢獻者名單。而 OpenAI 在 2023 年徹底「沉默」前還發布了最後一篇論文,名為《Let’s Verify Step by Step》。這篇文章講述了透過將一個問題逐步拆解,並對每一步進行打分進行強化學習來訓練一個模型。當時,很多人在 o1 釋出後回顧 OpenAI 的工作,發現去年公開的最後一篇研究論文就是這篇,後再也沒有新發布的工作。
很多人就認為《Let’s Verify Step by Step》可能是 o1 復現的關鍵,而他們還公佈了一個 PRM800K 的資料集。這個資料集的格式就是下面截圖所示:題目給出了每一步的推理過程,並對每一步進行打分,標註為 positive、neutral 或 negative。OpenAI 公佈了這個 PRM800K 資料集。
想一想,如果你是一位在 o1 釋出後開始研究 o1 的研究者,看到他們的論文,你很容易聯想到 o1 可能採用了類似的 PRM 模型(Process Reward Model),很難不往這個方向去推測。
如果你搜索如何復現 o1,我隨便搜尋了一下,點選了那篇排名最高的文章,它是去年 12 月 30 日釋出的。文章提到,o1 釋出後,國內陸續出現了很多類似 o1 的模型。那時提到的 R1 還不是我們現在所說的 R1,而是 R1 Lite Preview,包括 Kimi Math 的相關技術。
文章提到,業界大致分為兩個派系:一個是樹搜尋派,另一個是蒸餾派。樹搜尋派類似於 OpenAI 提到的《Let’s Verify Step by Step》的細分。而蒸餾派則是使用已有模型,如 o1、r1、Kimi Math 去做蒸餾。值得注意的是,當時沒有提到我們現在看到類似 R1 的純強化學習派,因為當時整個業界普遍認為 OpenAI 是採用了這種方法。我知道在矽谷和國內,很多公司都在準備類似 PRM800K 這樣的資料集。
這樣說可能有些陰暗,但我還是想分享一下當時我的一個想法:我覺得為什麼在這次事件中,Scale AI 的 CEO Alexandr Wang 跳腳跳得這麼急?我一直覺得,可能一個重要原因是他接了很多 PRM 資料的標註訂單,而現在發現這些資料似乎沒有太多用處。
當時的業界狀況就是這樣。雖然這篇文章是中文,但這不代表只有中國在這麼做。矽谷除了 Anthropic 和 OpenAI 之外,很多團隊也在探索類似的方向,比如 MCTS 等。幾乎所有團隊似乎都在朝著這個方向努力。
03
讓模型自由地思考
但這正是我們今天故事的第一個高潮——在所有人都走向一個至少目前看來是暫時錯誤的方向時,有兩個團隊卻在進行一場精彩絕倫的探索之旅。
更令人興奮的是,這兩個團隊都來自中國,一個是 DeepSeek,另一個是 Kimi。
首先,我們來看為什麼說這是一次精彩絕倫的探索之旅。Kimi 在 R1 釋出前後推出了 Kimi k1.5。雖然他們並未開源,但釋出了一篇詳盡的技術報告,介紹 k1.5 訓練背後的核心內容。
不過,從閱讀體驗的角度來看,k1.5 論文的可讀性較差。相比之下,閱讀 R1 和 V3 的論文時,體驗要精彩得多。
Kimi k1.5 論文則充滿了大量工程細節,如果想復現,這篇論文的價值極高。細節之豐富,甚至給人一種手把手教學的感覺。但正因如此,閱讀體驗相對較差。但是我在 Twitter 上找到了一篇 Kimi k1.5 團隊成員撰寫的文章,講述了 k1.5 背後的思考過程。這篇文章的文筆極其出色,讀來令人心潮澎湃。我必須和大家分享其中的內容。
知乎上 Kimi 員工的回答 @Flood Sung
https://www.zhihu.com/question/10114790245/answer/84028353434
首先,文章提到 9 月 12 日 o1 釋出,舉世震驚,隨後團隊注意到 long CoT 極為有效。他們意識到必須投入 long CoT,否則就會被甩在後面。因此,他們開始思考如何從 OpenAI 的工作中獲取靈感,並在研究過程中發現了兩個關鍵影片。
這兩個 OpenAI 釋出的影片並不是 9 月份的分享,而是更早的演講——由 Noam Brown 和 Hyung Wong Chung 主講。這兩個影片直到 o1 釋出時才被公開,讓他們去想:為什麼選擇這個時間點放出這些影片?一定與 o1 訓練有某種關係。
當時我看到這個分析,心想:「這思考角度太牛了。」 於是,他們深入研究這兩個影片,首先在 Noam 的影片中發現了一張關鍵的 slide,提到了 AlphaGo 及其後續版本 AlphaGo Zero。大家都知道,AlphaGo Zero 是一個完全基於強化學習(RL)的版本,而這張 slide 強調了 Test-Time Search。
許多人認為 Noam 強調這部分是為了講解 AlphaGo 的 MCTS,即蒙特卡羅樹搜尋——同時探索多條路徑,評估得分,最終找到最優解。但 Kimi 團隊有一個非共識的判斷:他們認為 Noam 其實是在強調 MCTS 中的 S,即 Search 本身,而非具體的 MCTS。這一認知帶來了他們的第一個關鍵想法:讓模型自行搜尋!讓模型自己學會探索不同路徑,而不是人為限定其思考方式。
這讓他們聯想到 Richard Sutton 著名的演講《The Bitter Lesson》。
第二個影片的內容同樣至關重要。他們總結出一個核心觀點:「Don’t teach, incentivize.」也就是說,不要去「教」模型,而是要「激勵」它自主探索。
在許多實驗中,模型的結構約束越少(less structure),當計算資源增加時,最終效能的上限就越高。反之,如果在早期給模型加入過多結構約束,它的最終表現可能會受到限制,失去了更多自主探索的可能性。
他們進一步思考:為什麼這個同學特別強調 structure?什麼是 structure?當時我讀這個特別爽,是因為我好像在看 Kimi 這個同學的腦內對話。
MCTS 是 structure,A* 演算法也是。這些都在限制模型的自由思考能力。他們認為,OpenAI 釋出的 PM-800K 訓練方式也存在類似的問題——它透過一個成型的推理資料集,告訴模型在不同情況下應該如何思考。這實際上是人為設定了一種思維路徑,限制了模型自身的探索能力。
最終得出結論:o1 沒有限制模型如何思考。這一點特別特別重要。Kimi 團隊因此決定不採用 MCTS。
我相信,在 o1 釋出後的 9 月份,他們花費了大量時間研究這個方向,並在 10 月份最終確定了自己的研究路徑。
大家想一想,很多團隊在 12 月份的時候仍然在沿著 MCTS 的方向探索,但像 Kimi 這個團隊在那個時候已經找到了另一條路線。我相信 DeepSeek 也在同一時間有所領悟,儘管我不確定他們的學習或理解過程是否相同,但他們應該也意識到了一些類似的關鍵點。
他們繼續思考:現有的許多所謂的 agent,其本質上只是一個 workflow,而這些 agent 的 workflow 其實是高度結構化的,這就限制了模型的能力。所以,他們做出了一個判斷——這種基於 workflow 的 agent 只具有短期價值,而沒有長期價值。是這樣吧?不過這是另一個話題了。
他最後總結說——「All in All 我們就是要訓練模型能夠像我們人一樣思考,自由的思考!」
他展示了 Noam 演講的最後一頁,也就是他們的 Future Work,其中闡述了他們未來的研究方向。這一部分對他的啟發最大。他們的核心觀點是什麼?就是要用真正的激勵來進行強化學習,而不要被 reward model 本身所限制。
Noam 在演講最後談及未來展望
這個概念可能有些抽象,我解釋一下。這裡涉及很多演算法細節,今天不適合暴露,但大家可以這樣理解:比如有時候要十步才能得出正確的答案。如果我們僅僅按照最終答案來進行激勵,就會擔心模型在漫長的中間過程中學偏了,所以過去大家都不敢直接採用 ORM 這種方式。取而代之的,是 OpenAI 所引導的 PRM,即關注訓練過程中的階段性獎勵。
但他們當時得出了一個關鍵結論:不要搞過程激勵,真正重要的是最終答案是否正確,應該以此為核心來激勵模型。
當時他們不知道,但後來他們發現,DeepSeek R1 的論文中也提到了類似的觀點,即不要依賴過程獎勵。
所以他們後來就定下來了——Practice Program,也就是「多練習」,給模型一個能不斷做題的環境。只要反覆訓練,就能夠取得提升。
菜就多練。文章中寫道:做題,做題,還是做題!做有標準答案的題,刷起來!
我覺得這篇文章非常精彩。它展示瞭如何逆向思考 o1,並結合各種資訊以及專業知識,最終推匯出正確的結論。
不過,稍顯遺憾的是,k1.5 在 Pure RL 上做得不夠徹底,還是用了一些前置的啟用引導環節,而不像 R1 Zero 那樣完全採用左腳踩右腳的 Pure RL 方式。
最大的侷限可能還是因為它沒有開源,因此在行業內的影響力遠不及 DeepSeek R1。
當然,如果你讀過 k1.5 的技術報告,你不得不對這兩個團隊都心生敬意。儘管今天的重點是 DeepSeek R1,我仍然想特別提一下 Kimi k1.5——這是一次非常精彩的探索過程。
04
DeepSeek R1 技術報告詳解
DeepSeek R1 論文的標題就是「Incentivizing Reasoning Capability」。這篇論文的核心思想正是如何透過激勵來增強模型的推理能力。相較於 V3,R1 的思路相對更容易理解,但仍然需要很長時間理解。
所以這裡我借用了 Sebastian 的一篇文章,其中關於如何理解推理模型的部分非常精彩,尤其是其中的一張圖。
這張圖的表達極其出色,因為在閱讀 R1 的論文時,即使是研究人員,從頭到尾閱讀仍可能感到困惑。因為在 R1 最終生成之前,它在 V3 和 R1 Zero 之間來回地你訓我我訓你,類似於「左腳踩右腳」,導致閱讀過程中容易迷失。但這張圖完美地呈現了 R1 的三方面的訓練結果。
第一個是標註為 R1 Zero,第二是 DeepSeek R1,第三則是它的蒸餾版本。目前,如果有人在本機嘗試執行,執行的通常都是這些蒸餾版本。
我們先來看最神奇的一點。如果你來自產業界,可能最震驚的並不是最終的 R1 模型,而是 R1 Zero。它簡單到令人難以置信。DeepSeek 首先有了一個強大的基礎模型 DeepSeek V3,這個模型就是 12 月份釋出、Andrej Karpathy 點讚的模型。
基於這個模型,他們採用了純強化學習進行訓練,但過程本身極為簡單。他們訓練時使用了一個固定的模板。
現在大家對 AI 產品應該比較熟悉,可以將其理解為 system prompt。具體來說,該 system prompt 設定為「這是一個使用者和 assistant 之間的對話」,使用者提問後 assistant 進行解答。但是該 assistant 需要先「在腦海中思考推理過程」,然後再給出最終答案。此外,assistant 還必須將推理過程標註在 think 標籤內,而答案則放在 answer 標籤內。
訓練時,他們使用這個簡單的模板,標紅的 prompt 在訓練的時候會填充各種問題,例如「1+2 等於幾?」或者「給定方程 a^2 + b^2 = c,求 b 的值」。但是它的訓練模版本身就是如此簡單。
他們的激勵模型同樣簡單,主要分成兩類激勵:
– 準確度激勵:判斷答案是否正確。例如,如果模型回答 1 + 1 = 2,則加 1 分;如果答案錯誤,則不加分。
– 格式激勵:模型必須按照要求的格式作答。例如,若問題是「1+1 等於幾?」,模型直接回答「answer 2」將得 0 分。但如果它在 think 標籤中先寫出推理過程,再在 answer 標籤中給出答案,則會獲得更高的分數。
由於這一強化學習過程並不使用 PRM 方法,因此它無法採用同等規模的模型來判斷。相反,他們採用了一種基於規則(rule-based)的激勵模型,確保判斷標準極為簡單清晰,即答案要麼正確,要麼錯誤。因此,他們在訓練時準備了大量具有明確對錯的題目,例如數學題、物理題、寫程式碼。
對於寫程式碼,相當於他們類似於資訊學競賽,準備了一個 sandbox,程式碼提交後執行,看輸出是否正確。
除了答案,第二就是要激勵格式。它要求把推理過程寫在 think 裡面。如果你在想 1+1 等於幾,想了一堆,就給你加一分。
他們還配合 GRPO 進行訓練。這裡值得注意的是,過去強化學習主要依賴 PPO,例如在 k1.5 論文中,作者曾提到是否應使用 PPO,不要。他們最終也是選擇了另一種方法。PPO 最大的問題在於,在強化學習的每一步中,不僅需要調整 policy model,還要最佳化 value model,導致計算量開銷極大。
GRPO 透過一個非常粗暴的方法,類似於將同樣的問題扔給這個 policy model,讓它答 8 次,結果我們根據正確答案給一個平均值。
大家記住 GRPO 就是在開銷上比較少,但能有效地計算出每一輪強化學習探索後,模型離正確方向的距離,以及如何激勵模型朝正確方向發展。
簡而言之,R1 Zero 只做了三件事情:一個基礎的訓練模板,一個簡單的激勵模型,以及 GRPO 策略。
需要注意的是,他們並沒有使用類似 PRM800K 那種複雜的推理資料集,也沒有教會模型什麼事情都要先想八步,什麼都沒有教。
訓練過程中,只給了問題、答案和規則。橫軸是 RL 的迭代次數,豎軸是響應的長度。他們發現模型學著學著,自己把答案越吐越長了。激勵模型裡,我們沒有激勵過長度這件事情,只判斷了對錯和你有沒有思考。
但是模型自己發現,一旦我思考地越長,我越能答對。這個發現十分驚人,因為之前的團隊沒有想到透過這麼簡單的手段就能解決這個問題。這是最重要的一張圖。
也就是標黃的這句話,「R1 Zero literally solves reasoning tasks with more thinking time」。這個模型在沒有任何激勵的情況下,透過增加思考時間,自主學會了如何解決需要推理的任務。
我們來看 Benchmark,R1 Zero 還不是大家每天用的 R1,但它在 AIME、MATH、GPQA 和寫程式碼等任務上,有的超越、有的逼近。除了 CodeForces 上略有不足,因為還是有點麻煩。
這一方法完全基於純 RL,沒有使用任何 SFT 資料。對於訓練模型的同學來說,這是一種難以想象的突破,左腳踩右腳把活幹上去了。
論文中沒有準確公佈,但我估計 RL 做了大約一萬步。其實相較於預訓練的高成本,RL 的成本我想象中、包括我諮詢了很多人是要低得多的。如果你已經有一個強大的基礎模型,透過這種 RL 方法,可以低成本快速提升模型的能力。
R1 Zero 路走對了,但接下來 DeepSeek 團隊發現了 R1 Zero 的一些問題。首先,可讀性較差。第二是經常出現語言混雜的問題,類似於上海外企白領的說話方式:「Maria,今天這個 schedule 有些滿」。
這個問題不僅僅出現在 R1 Zero,大多數推理模型都會有這種語言混雜的問題。
就像最近有一個梗,不知道大家有沒有看到。國外有些網友截圖了那個 o3 的思考過程,發現當 o3 用英文問問題時,在用中文推理。雖然我們知道這個現象背後的真實情況,但很多國外網友還是截圖並 @Sam Altman,問你們是不是在蒸餾 DeepSeek R1。天道輪迴。
其這背後的原因很簡單。就是模型自己在探索時,對模型來說,無論是中文還是英文,都只是一個 token。它自己在思考時,按照 token 來處理問題,而不在乎人類是否能讀懂。這其實是一個語言混合的問題。
第二點是它的格式有點混亂。現在大家使用 ChatGPT 或 Claude,可能已經習慣了那些寫得很精美的 Markdown 格式文章,或者是 bullets,但你看 R1 Zero 的輸出,你會發現,因為它專注於解決推理問題,輸出的可讀性相對較差。
為了解決這個問題,我們需要讓推理過程更具可讀性,方便共享給社群。我們就繼續在 R1 Zero 的基礎上,去做 R1,讓它的可讀性更好。
但說實話,最精華的工作剛剛已經講完了:提升模型能力,左腳踩右腳。
對於研究者來說,他們最關心的就是 R1 Zero,而後續做 R1 的過程也很有趣。
05
復現 DeepSeek R1 的「Aha Moment」
我們現在來看 R1 怎麼來的。DeepSeek 分享這個過程真的像 Marc Andreessen 所說的,「是給全世界人類的財富。」
前面的 Pure RL 過程,只要掌握了原理,大家都能做,但不意味著你就能做出來 R1。
首先,既然我已經有了一個強大的 R1 Zero 作為基礎,那在訓練 R1 時,我就不需要從 0 開始了。我們用了 R1 Zero 生成了右側那個高質量的 SFT 資料,也就是 cold start 資料,這些資料由 R1 Zero 輸出的高質量帶有推理過程的資料,作為 cold start 資料重新去 SFT 了 Deepseek V3 base 模型。
你會發現一個非常神奇的事情:V3 base 促使了 R1 的誕生,而 R1 強大的推理能力又反向去 SFT V3。
這又是一個左腳踩右腳,這樣不僅讓 R1 更強,也讓 V3 更強。比如,使用 cold start 資料訓練的 checkpoint,每個小圓點代表一個 checkpoint,簡單來說,就是模型訓練到某一階段時的「存檔」。
第一個 checkpoint 是用 R1 Zero 的高質量 cold start 資料進行 SFT,完成了一個 fine-tuning。然後,他們拿著這個 checkpoint 去做了一輪類似 R1 Zero 的強化學習。但這次有一些不同。除了激勵準確度和格式,但他們加入了一個新的激勵項——一致性(consistency)。
一致性指的是語言的一致性。也就是說,在這個 RL 過程中,不僅要確保答案的準確度和格式,還要檢查推理過程是否出現了語言混雜。如果是中英文混雜,我就給你打 0 分;如果你全程用中文或英文,就給你高分。就只加入了這一項激勵。
經過這一步,就得到了第二個 checkpoint。這時的版本不僅具備了強大的推理能力,而且語言沒有混雜。他們用這個版本再生成了第二輪的高質量 CoT 資料。這時的 CoT 資料質量比前面的 cold start 更好,主要因為它的推理過程是語言統一的。
最後,他們透過人工篩選和規則匹配等方式,剔除了一些冗餘、可讀性差部分,得到了一個經過篩選和最佳化的高質量 CoT 資料。這些資料在後續還有其他用途,大家要記住這一點。
前面的 RL 過程是數學、物理、寫程式碼這類任務,但他們的目標是最終能夠將這個模型應用於整個開放社群。要會回答像「1 + 1 = 2」這樣簡單的算式,或是「中國的首都是北京」等常識性內容。
因此,他們從已經強化過一輪的 V3 base 中,輸出了右邊這個,通用知識的 SFT 資料。這些資料與之前的高質量 CoT 資料合併後,用於進行最後一次的強化學習。在這次強化學習中,整個過程更像是我們通常訓練一個模型的方式,包括了 human preference 的部分,也就是我們對模型輸出格式、內容等的偏好。最後得出的模型便是大家現在使用的 DeepSeek R1。
為什麼我認為這個過程很重要呢?因為透過模型的訓練過程,我們能看到從 R1 Zero 到 R1 的轉變。
這是他們的探索路線。如果沒有他們的解釋,你可能有很多不同的探索路徑,不一定能搞得出來。
但 DeepSeek 在他們的論文中詳細講述了從 R1 Zero 到 R1 的訓練過程。你可以看到他們是如何構建 cold start 資料的,如何為 reasoning-oriented 強化學習做準備,如何準備高質量的推理資料和通用知識資料,為了讓模型面向各種場景而不侷限於數學和程式設計任務,進行 RL 訓練的。他們寫得非常詳細,對於那些希望復現工作的研究人員來說,這些內容非常有幫助。
完成第二步後,拿到 R1,我們可以看到 R1 的表現。在所有的分數上,除了 GPQA 還差 OpenAI o1 0912 一點,其他方面的資料已經全面超過了 o 系列模型,甚至在 CodeForces 上也取得了非常好的成績。這就是 SFT 加 RL 的強大威力,模型達到了一個新的高度。
接下來是第三步,我認為這是 DeepSeek R1 工作中的一項突破,尤其是在學術界和技術界產生了重要影響。如果他們只做到前兩步,工作已經非常重要了,但如果沒有第三步,破圈的機率會低很多。
到這裡為止,工作已經非常完整,論文字身已經非常有價值,但 DeepSeek 還做了一些額外工作。他們將中間 checkpoint 產生的 R1 Zero 到 R1 的版本生成的高質量 CoT 資料與 V3 的世界通用知識資料結合後,不去微調他們自己的 V3,去微調別人的模型。
他們想驗證一個問題:雖然其它模型沒有做 RL,沒有做純強化學習,但他們是否能透過 DeepSeek 輸出的高質量推理資料,學會這種推理過程?他們不僅驗證了這個問題,還做了實驗,並將結果公開。
這產生了一個非常有趣的效果:他們用這個高質量資料去蒸餾了其他模型,比如千問。從 1.5B 到 32B,千問在中國確實有很大影響力,但要打破圈層,僅僅做千問是不夠的,他們還進行了 Llama 的蒸餾。這其實是「羞辱」Llama 哈哈哈,因為使用相同的高質量資料蒸餾後,Llama 70B 在一些任務上的表現和千問 32B 差不多,非常接近。
那這項工作重要的意義是什麼?首先,DeepSeek 不僅完成了自己的研究,還向全世界證明了一個事實:用透過一個超大 size 高質量的推理模型產生的資料進行 SFT 的成本非常低,與傳統的預訓練方法相比。它讓現有模型的表現拔地而起,不用做 RL。
這項工作的另一個重要意義在於,它讓大家看到了在自己的電腦上覆現這個結果的可能性。
技術社群也不是每個研究者家裡有八張 A100。大家復現一個工作,直接 LM Studio,Ollama 拉下來,本地就開始部署執行,大家很容易就可以對比原始和蒸餾版本。很快就可以發現「哇,這個中國團隊真厲害」。這是大破圈的非常重要的原因。
06
兩次不太成功的嘗試
DeepSeek 在論文裡還提到了 PRM 和 MCTS 兩次不太成功的嘗試。
他們嘗試 PRM 時發現非常難以定義和評分。如果推理過程中有 800 字的內容,怎麼分步驟?如何將每個步驟打分?有時候前面想歪了,後面就是因為想歪了所以能得出正確答案。如何評估這些步驟的貢獻,成為了一個巨大的挑戰。這在資金和時間成本上都是一個不太可控的事情,故而他們認為 PRM 做不下去。
另一個問題是關於 MCTS。雖然大家不需要深入瞭解 MCTS,但有一點我認為值得分享,就是為什麼在語言模型中做 MCTS 很難。簡單來說,MCTS 的核心是每一步的搜尋空間有限。以 AlphaGo 為例,圍棋能落子空間是有限的,棋子只能落在空位上,因此每一步的選擇是有範圍的。雖然長度放長可能有無窮多種選擇,但每一步的選擇空間都是有限的。
而在大語言模型中,推理每一次都是整個詞表都能選,還沒有圍棋的規則。因此,嘗試將 MCTS 應用到語言模型中時,你會發現搜尋空間變得非常難以控制,也很難定義激勵模型。
他們在論文裡沒有把話說死,我們搞不通不代表不行,但大家都懂的,你行你上。一時半會有個成功版都開始轉向了 ORM。
他們還做了一些微小的工作,就是利用高質量的資料去 SFT 其他模型。那大家可能會問,既然用了高質量的 CoT 資料做 SFT,為什麼不直接用他們的 R1 Zero 訓練方法,採用純強化學習去訓練其他模型呢?
DeepSeek 也考慮過這個問題,並且做了實驗。他們選擇了千問 32B 作為基礎模型,採用了與 R1 Zero 相同的純 RL 訓練方法,結果發現並沒有明顯提升。
你可以看到,千問 32B 用純 RL 訓練出來的模型和用了 CoT 資料做 SFT 後的千問 32B 在表現上有很大差距。
這個實驗讓他們得出一個結論:左腳踩右腳也要有一個基礎。
這個道理其實很容易理解,就像 Peak 給我講的一個點,大家不要把 reasoning 想成人在思考,reasoning 也是 next token prediction,只不過讓它產生更長的 CoT,讓它有更多犯錯搜尋的空間和思考的可能性,能推出正確答案。
比如,如果你把一個二年級的小朋友關在房間裡,給他一道大學高數題,讓關在房間裡想一個月,他也不可能解出來。所以 Pure RL 對 base model 是有要求的。
為什麼這能引向下一個高潮?我們之前一直在講 R1,但 R1 的一切起點都是 DeepSeek V3。這個 671B 的 MoE 模型。
我們發現我們繞不過去這個模型,並不是 R1 靠自己左腳踩右腳就昇天了。如果沒有這個強大的基礎模型,DeepSeek 不可能做出現在的工作。前面我提到 k1.5 之所以沒有取得與 DeepSeek 相同的突破,我也不知道內幕,雖然 Kimi 也沒開源,也許是 Kimi 的基礎模型沒有達到 V3 的高度,這是有可能的。

接下來,我們進入今天的第二個高潮。

07
羅馬不是一天建成的
羅馬也不是一天建成的。雖然 DeepSeek 在突破圈層時引起了廣泛的關注,但一些敘事講得好像這個專案是中國一個量化基金的 side project,他們只是「隨便做做」就出了這麼一個成果。
雖然這種敘事符合好萊塢的風格,但如果你認真看待這個工作,你會發現它是非常嚴謹的。
DeepSeek 是一個認真在做 AGI 和模型研究的公司,它們很多投入非常長期,很多貢獻也並不侷限於 R1。
羅馬不是一天建成的,但我們可以看看它是怎麼建成的。
但它的背後有許多關鍵支撐。去年 2 月,DeepSeek 釋出了 DeepSeekMath,在解決數學問題時引入了 GRPO 方法。GRPO 的優點是效率高,但它主要解決的是那些答案明確、規律性強的任務,例如數學和物理問題。所以在 DeepSeekMath 的過程中,GRPO 被用來大大降低強化學習的計算量。這個論文其實是 2023 年釋出的,模型 2 月才開源。
在 5 月,DeepSeek 釋出了 DeepSeek V2,這是一起的起點。因為在 V2 中引入了 DeepSeekMoE、MLA。接著,在 12 月,他們釋出了 V3,引入了 FP8 和 MTP 這樣的訓練與推理方法。所有這些都為構建強大的 V3 模型,打下了 RL 基礎。
現在我們來看一下 DeepSeekMoE 的優勢。MoE 是混合專家模型(Mixture of Experts)的縮寫。簡單來說,MoE 解決了一個關鍵問題:當模型規模變得越來越大時,訓練難度也會顯著增加。
大家都知道,模型本質上是一堆大量矩陣,這些矩陣中儲存了大量的數。
每次訓練單個 token 時都要從頭到尾來一遍,計算量和資料量太大,訓練越來越慢,越訓越崩。很容易崩潰。MoE 的概念其實很早就有了,是一個老概念。但最近幾年,第一個讓它重新被業界關注的是 Mistral,歐洲的一個團隊做的 8×7B 的 MoE 模型。
他們發現,不需要每次訓練或推理時都啟用整個模型。實際上,我可以將模型做得非常大,比如說做成 8×7B,但每次只啟用其中一個專家,也就是說每次只啟用 7B 的部分。這樣一來,訓練和推理的開銷都會變小,訓練時也更不容易崩潰。
這是之前的探索,比如 8×7B、8×22B 等,還有騰訊去年年底釋出的混元模型,它是一個 300B 左右的 MoE 模型。雖然這些探索都很有價值,但 MoE 的問題之一是專家數量通常不夠多。比如 Mistral 的 8×7B 和 22B 模型都是有 8 個專家,稀疏度不夠,總 size 難以進一步提升。
DeepSeekMoE 在 V2 中做了很多創新。
首先,V2 中的模型已經超大規模,達到 236B,而每次啟用 21B。到 V3 時,這個模型已經擴充套件到 671B,是目前 MoE 模型中最大的,每次啟用 37B。

很多人覺得 MoE 模型很 low,認為大模型訓不下去了,訓一堆小模型,「三個臭皮匠,頂一個諸葛亮」。但 MoE 不是這樣。

大家腦子裡 MoE 認為它是有 8 個專家,訓練時就從中選擇一個專家回答問題。其實並非如此。模型裡是多層的,每一層都有很多專家。在 DeepSeek MoE V3 中,每層有 256 塊,有很多層,token 經過每一層時都會被分配到不同的塊中。因此,token 在模型內部會經過多層多個不同專家的處理,而「專家」這一名稱其實有些誤導。
在 DeepSeek V2 和 V3 中,創新的地方在於他們不再簡單地用 router 分流演算法將 token 直接扔給專家,而是在每個 token 被送往專家之前,V2 加了一層,V3 加了三層 FFN,可以理解成加了個小模型。這些小模型能夠理解潛空間中的一些概念,提高了模型的智慧處理能力。
MoE 也可以類比為醫院的分診臺。在過去,醫院的所有病人都必須先找全科醫生,效率很低。而 MoE 模型則相當於有一個分診臺,將病人分配到不同的專科醫生那裡。DeepSeek 在這方面也有創新,之前分診的或許只是一個完全沒有醫學知識的「保安」,而他們用的是一個有醫學知識的「本科生」來處理分流任務。
DeepSeek 還引入了共享專家(shared experts)的概念,圖片裡綠色的部分,每一層 shared experts 一定會被啟用。有些通用的能力會被共享。
他們還設計了一個粗暴但實用的 router 演算法,也做了一個極致的跨節點通訊效率方案,使用了 NVIDIA 收購的 InfiniBand 和 NVLink。
這些創新都非常厲害,MoE 大家都探索了一年多了,沒人在這麼大尺度上做這些事情。而且他們訓 V3 一次就訓過去了,都沒有訓崩,這也是為什麼他們能以 500 多萬的訓練成本完成訓練的重要原因。
接下來是 MLA。MLA 就更偏演算法。
大家知道 Transformer 中的 MHA 對視訊記憶體佔用很大,但是視訊記憶體裡除了存了模型權重,有 30-40% 的空間都在存上下文,很多透過 KV cache。
而 MLA 是用時間換空間。訓練時雖然多花時間,把一個本來是 m*n 的矩陣直接壓縮成了一個一維的 lora,壓縮率非常高。這樣推理的時候 KV 比別人小,這樣承載的上下文就會變多。不僅壓縮尺寸承載更多推理,而且在測試中,發現相比 MHA 智力效能沒有下降,反倒有提升。
最後是 DeepSeek 在 V3 引入的 FP8 訓練。傳統的訓練模型既有 16 位浮點,也有 32 位,而 FP8 是 8 位浮點。大家都覺得 8 位浮點表達的精度太淺了。但是絕大部分團隊搞不定。你可以用 8 位浮點運算,但到底哪個部分可以呢?沒法知道。有可能你前面換了 8 位,後面就崩了,也不知道什麼導致的。
DeepSeek 團隊是第一次,在那麼大規模的模型裡,真的把 FP8 混合精度訓練做出來了。這是很難想象的。而且穩定性還非常好。
這個工作的意義是什麼呢?它不僅減少了運算量和傳輸量,還有一個重要的好處。如果有人真正部署自己的模型,應該都知道,我們很少會直接部署全尺寸的原始模型,而是通常會進行量化處理,以減少儲存和計算需求,使其能夠在低配置的裝置上執行。
FP8 訓練的一個優勢在於,它在訓練階段就已經使用 FP8 進行計算,相較於那些原本使用 16 位計算、隨後再透過量化方法轉換為 8 位的模型,FP8 訓練使得模型原生支援 8 位(native FP8),因此比後期再進行 8 位量化的方式更優。這一改進帶來了顯著的效能提升。
接下來是 MTP(Multi-Token Prediction),這是一個非常有趣的概念,Peak 花了不少時間才把我講懂。MTP,即多 Token 預測,其目的是讓模型在推理時看得更遠一點。大家知道,Transformer 採用的是單 Token 預測(Next Token Prediction),即每次只預測下一個 Token。
但學界提出了一個新的思路:如果在預測時,不僅推測下一個 Token,還能同時預測下兩個、三個甚至四個 Token,會不會讓模型在訓練過程中學到更全域性最優的策略?
具體而言,雖然某個 Token 在當前上下文下的機率最高、最優,但如果模型僅基於區域性資訊作出選擇,可能會導致下一個 Token 以及更遠的 Token 預測不佳。而如果模型能夠看到更長遠的影響,它便可以在訓練過程中最佳化整體策略,從而變得更加智慧。這便是 MTP 訓練的基本原理,它本質上是讓模型具備更強的遠期規劃能力。
同時,MTP 還帶來了一個重要的效果——推理時的效率提升。由於模型在訓練階段已經學會了這種預測方式,因此在推理時,它可以一次性推多個 Token。例如,在 DeepSeek V3 研究中,MTP 方法實現了一次性推兩個 Token 的能力。
當然,之前也有類似的技術,比如推測解碼(Speculative Decoding)。不過,之前需要額外配備一個類似 7B 的小型模型來先行推測 Token,再由 70B 的大模型進行最終驗證。而 MTP 直接在同一模型內完成這一過程,無需額外的小模型。
我在第一句中提到的:這是對創新的執著追求。為什麼這麼說呢?因為從收益上看,除了推理效率的提升,實際上效能上的收益並沒有那麼顯著。但這代表了 DeepSeek 團隊一個非常獨特的特徵——他們很想做新的挑戰。
就像我剛才給大家展示的這些內容,每一個部分單獨拿出來都可以成為一篇高質量的論文。
V3 這裡面有這麼多,光是目錄就能把你嚇一跳,我只是挑選了一些技術。而且 V3 質量高到什麼程度?從想法的提出、實驗的設計,到工程軟體和硬體如何實現,都講得非常清楚。
其實 R1 很快就讀完了,沒有多少內容,很快就看透了。但 V3 要看很久很久,非常精彩。V3 的樂趣遠不止此。
但我為什麼要挑出 FP8 和新的 MoE 架構等技術?
我們回顧一下關鍵詞:什麼 shared experts?為什麼選擇粗暴的 router 方法?為什麼不採用以前的分流演算法?為什麼要把跨節點通訊效率提升到極致?還在底層做了很多彙編層面的改動?為什麼要讓訓練時的啟用記憶體變小?為什麼要減少 KV cache?為什麼要減少運輸量和傳輸?
所有這些工程最佳化都指向一個目標——就是沒卡。
大家看,H800 和 H100 之間最大的區別是什麼?大家注意到沒有?互聯頻寬,H100 的互聯頻寬是雙向 900G,而 H800 只有 400G,差了一倍。
而且大家知道,現在每個節點上有 8 張卡,很多節點還需要透過 IB 或者 RoCE 連線在一起,節點使用 NVLink 來傳輸資料。如果你在節點內就已經比 H100 慢了一倍,你就很尷尬了。
你會發現,他們所有的工程最佳化措施,比如記憶體壓縮、視訊記憶體佔用減少、通訊量減少等,每一個都是提升 10% 到 20%,這些措施加起來,其實就是為了彌補 NVLink 頻寬不夠用的問題。
我當時還讀了一篇非常精彩的文章,就是 Ben Thompson 給美國人解釋的 DeepSeek。文章裡提到,如果你真正深入瞭解 V3 的實現,你就會做出一個判斷:這家公司根本沒有那麼多高階顯示卡,否則我真的搞不懂他們為什麼要在工程上進行那麼多的奇技淫巧。
特別有意思的是,當我準備這次分享時,發現文中提到的 NVLink 速率為 160G 每秒,而不是 H800 的 400G。這讓我很好奇,於是我在 GitHub 上查了一下,發現有人也提了類似的問題,問:「為什麼你們的 NVLink 速率是 160G,而不是 400G。」
最後,下面是幻方的人員回答說:「400G 是雙向理論值,而 160G 是單向實測值。」這就意味著他們真的在 H800 上在幹活,但仍然受限於物理頻寬的上限。
整個 V2 的 DeepSeek MoE,包括 V3 後的框架實現,都是為了降低運算量和通訊頻寬,以便能在他們的顯示卡上完成這些實驗。
因為大家知道,訓練只是最終跑的一輪,但研究人員平時還需要進行大量實驗,而高階顯示卡供應是不夠的。深入理解這篇論文後,你就會明白他們確實遇到了這些實際困難。
08
R1 的突破、未來與產品思考
接下來,我們來談談 R1 的「破圈」及其未來。
首先,我認為 R1 突破的基礎是真正的實力。它的效能確實非常強大,不需要過多的解釋,用過的人都知道。懂的都懂。
其次,它解決了困擾整個行業的難題。大家都在為 PRM、MCTS 各種卷、各種失敗、各種苦惱,它跳出來說不用這麼痛苦。
第三,當你讀到 R1 的研究時,你會驚訝於它的創新,想不到居然可以這麼做,結果越讀越發現,背後還有 V3,哈哈哈,原來如此。
第四,它把任何研究員想驗證的方向都做了一遍。R1 在研究過程中不僅提升了自己,還透過高質量的 CoT 訓練你們的模型也可以很牛逼。我還告訴你不要妄想簡單地複製我,如果你的 base model 不行你也搞不定。
如果你是研究人員或者大模型公司,你會覺得這東西想我所想,急我所急。
它還徹底開源,且有適用於 C 端的產品。所有這些因素共同奠定了 R1 破圈的基礎,這是真真正正的實力。
R1 的未來發展也給全球 AI 行業 2025 開了個好局。
首先,他們透過蒸餾實驗證明了高質量的 reasoning CoT 能夠激發現有模型的能力。這麼簡單的事情,這個其實並不複雜,很多現有的工作只需要重新做一遍就能立馬得到提升。
第二,R1 只是證明了「左腳踩右腳」的可行性,這是他們的第一個創新。大家可以回想以往所有正規化級的創新,像 o1 到 o3 的進化,R1 的團隊也許在未來幾個月到半年內,在 RL 領域會有更多的突破。
第三,全球 Infra 終於有事幹了。AI Infra 之前一直沒火起來,很大程度上是因為大家找不到值得部署的模型。大家想想如果 OpenAI 開源,全球 AI Infra 不是這個樣子。最近 AI Infra 都特別厲害。
第四,雖然 R1 嘗試了 RL,但他們還沒有進行可控的 inference time scaling。大家可以看到 o3,雖然取名方式「很挫」,想更多,想一般,想少點。R1 還沒做,做了這個之後效能提升是可以預期的。
最後,關於「long2short」的概念,我覺得這非常有趣。我們不要把推理過程看成是模型的旁路思考,它本身就是 Next Token Prediction 的一部分,而且這個過程不一定越長越好。現在有些地方推理顯得很長,實際上恰恰是訓練效率還不夠高的體現。k1.5 裡對這塊的探索會更多。未來,long2short 的推理過程會更加高效,很快想到一個該想的地方。
當然,我也問 Peak:那會不會有一天,短到沒有推理呢?他回答說這不太可能,因為模型本身還是需要更多 token 來思考。因此,未來推理的壓縮會達到極限,但不會完全消失。o3 mini 正是探索這個過程。這些可能會在未來的模型中實現,而 R1 正是走在這條路上。
講到這裡,希望大家還記得我的本職工作是做產品的。今天我也想分享一下 R1 在產品思路上的啟發。
首先,R1 能取得今天的成就,很重要的一點是它抓住了一個絕妙的時間差。當 o1 釋出時,全球能使用 o1 的人非常少,因為 o1 是付費的,且價格不低。而 DeepSeek 選擇免費開放,讓所有人都能直接使用。這意味著,很多人第一次接觸推理模型時使用的不是 ChatGPT 的 o1,而是 DeepSeek 的 R1,這讓人從 0 到 1 的體驗非常震撼。
另外,對於用過 o1 的使用者來說,o1 當時並不支援搜尋功能。對於這些使用者來說,使用 DeepSeek R1 時,他也會覺得非常爽,因為它將執行和搜尋功能結合起來,整個使用場景又擴充套件了。可以說,DeepSeek R1 的釋出時間點正好抓住了一個非常巧妙的時間差。
對於所有使用者來說,R1 都是一次全新的體驗,都是一個從 0 到 1 的過程。每個使用者在使用之後都會成為它的忠實使用者,都是「自來水」。這也是為什麼在那個過程中,我特別不屑於那些人的表達,說「中國水軍」之類的。我當時就想,天啊,你真的去看看 Twitter 上真實的美國使用者反饋,他們的截圖和使用場景都非常實在,這絕不是透過水軍能搞定的,而是有著極高的產品價值,使用者透過腳投票來表達他們的真實感受。在這持續半個月的 hype 中,除了媒體外,使用者的真實表達其實非常真誠和有力。
同時,這也給我帶來一個很大的啟示:ChatGPT 並不是終點。很多人覺得 OpenAI 做得那麼好,ChatGPT 已經那麼厲害,怎麼可能被超越?我在過去一年半的 AI 工作中,反覆強調這一點。
現在,AI 的滲透率僅有 5%。剩下的 95% 的人,他們用的第一款 AI 應用是什麼呢?
很多人不敢去想這個問題,很多人認為 ChatGPT 就是天花板,怎麼追上它?但 DeepSeek R1 的出現告訴我們,其實可以繞開 ChatGPT,完全開啟一個新的市場。ChatGPT 只接觸了地球上的 5% 的人,我完全可以去瞄準另外的 5% 或 10% 的人群,讓他們用第一款 AI,是什麼呢?
現在是推理模型,我相信這個領域會持續擴充套件,很多領域都會像去年那樣發生類似的變化。
比如說 Sora hype 了一年,但真實的成果被可靈、海螺摘了,這些都是相似的故事。所以,不要覺得一個領域的競爭已經結束,任何時候上車都不遲。

第三點是,R1 + Search 之所以那麼火,根本原因是因為它本質上是一個非常簡單的 Agent Framework。R1 的推理模型再怎麼厲害,它依然只能停留在自己的腦內腦補,無法瞭解外部世界。

當它加上 Search 後,獲得了外部世界的觀察,才真正讓 R1 + Search 的體驗變得獨特。這也是很多人,包括我們的同行,在觀察 R1 時忽視的要點。大家會認為 R1 因為是推理模型所以很厲害,自己公司沒有推理模型,所以產品就做不起來。但如果沒有 Search 的功能,R1 在全球產生的影響可能會大不相同,因為有無 Search 是本質的區別。
我們可以進而思考:如果 R1 已經開源了,並且加了 Search,那它為什麼不可以加更多東西呢?
是不是 R1 + Search,只是起點,加入更多外部 Observation 後,模型的表現可能會有不一樣的效果。至於具體會是什麼樣的效果,這可能需要行業一起探索,但我覺得這給產品設計帶來了許多啟發。
最後一個環節,就是我本來想說「回應」流言,但我不是 DeepSeek。我沒法回應,那我就「怒嗆」下。第一個就是所謂的「滿血版 R1」。這首先是美國某些公司開了個壞頭。比如 Groq,大家知道 Groq 是做硬體架構來加速語言模型推理的公司。
R1 出來後,Groq 的 CEO 很快就在 Twitter 上發文,說他們的 DeepSeek R1 推理速度比官方推理快很多倍。我當時想,這 Groq 的架構應該不夠靈活吧?而且理論上說,他們的硬體架構應該是和 Llama 繫結比較死的,怎麼能支援這麼大尺寸的 MoE 呢?我還挺好奇的,結果仔細研究後才發現,Groq 實際上部署的是一個 DeepSeek R1 Distill Llama 70B 版本。
真的難以想象一個公司 CEO 會做這種事。從那以後,很多平臺開始散佈類似的故事,有人上了千問 32B 的模型,也說自己上了 R1。很多人就覺得效果不好,就有人回覆說你沒用「滿血版」。其實 R1 並沒有「滿血版」,R1 始終只有一個版本,就是 R1,其他的 Distill 版本不是 R1。真正的 R1 和 Distill 有巨大的差別。
第二個謠言是經典的「600 萬訓練成本」。我之前反覆跟很多人解釋過這個問題。我們可以看一下 V3 裡面的內容,他們提到一共用了 278.8 萬個 H800 小時。
如果按照 H800 一個小時租金兩美元來算,這個價格現在有些偏高,但根據他們給出的資料,V3 的單次訓練成本大概是 557 萬美元。他們還在下面特別強調,這個訓練成本只包括最後一輪訓練。因為他們的工程設計非常巧妙、穩定,所以只用一次就跑通了,沒有出現大規模的訓練崩潰。
至於這個 600 萬的估算,沒有包括之前的研究,消融實驗,架構探索,演算法探索和資料準備等。行業通常只計算單次的訓練成本,在學術和產業界是非常常見的表達。這個成本也無法掩蓋,因為模型引數量就擺在那裡,訓練的 token 數量是 17.6T,懂行的人只要看這個模型的規模和資料集大小,大概就能推算出它的訓練成本。

DeepSeek 這個表達本身沒有任何問題,而且他們在自己的文章裡也明確指出了不包含哪些費用。站在 DeepSeek 本身的角度來看,他們沒有做任何作假的事。

完全是這次破圈傳播速度太快,覆蓋範圍太廣。大量非行業媒體和 KOL 的參與,往往會帶來流量話題,而這些話題的核心卻離不開「錢」、「人」、「地緣政治衝突」。找流量話題最容易的方式就是煽動這些情緒,導致很多人就集中討論了 600 萬的訓練成本,開始製造 hype,到最後已經沒有辦法理性討論了。
另外,關於 Alexandr Wang 提到的 5 萬張 H100。

但事實上上面是 SemiAnalysis,這個結果是比較公允的。上圖左下角是 2022 年 10 月 7 日,美國第一次禁運,那時候 H800 可以買的。

2025 年 1 月 13 日,第二次禁運之後,H800 也進入了限制範圍。對於 DeepSeek 來說,他們的 H800 合規購買是在 1 月 13 號之前完成的。這個資料(1 萬張 A100 版、1 萬張 H100 和 1 萬張 H800)是比較符合實際情況的,後面只能購買合規的 H20 卡。
回到剛才提到的 V3,我們討論了很多工程最佳化和奇技淫巧。如果他們真有這麼多 H100,就完全沒有必要做這些最佳化。
另外,關於小紅書、抖音上流傳的 9 塊 9 付費本地部署,我想大家聽完今天的分享應該明白,除非你家裡有礦,擁有 8 張 A100,否則本地部署幾乎不可能實現。許多宣傳所謂「本地部署」的其實只是蒸餾的模型,像千問 1.5B、7B 或者 32B 的模型。很多電腦跑不動 32B,可能只是 7B 的蒸餾版。對於本地部署,我本來非常反對,覺得這是欺騙,但後來我想了想,也許這是一個機會,讓很多人學會了如何在自己的電腦上跑 LLM,也許也是一個蠻不錯的事情。

再說一下蒸餾和偷竊。我本來準備了長篇大論,尤其是如果說是蒸餾,舉證責任應該在對方,不應該由我來回應。我不是專業人士,不能代表 OpenAI 或者 DeepSeek,做回應挺無力的。

直到昨天我在研究 V3 時,看到一個意外的發現。大家還記得 12 月 26 號 Andrej Karpathy 轉發了 V3 的論文嗎?在他轉發的 Twitter 下,有一個美國老哥跳出來說,我用了這個模型,這個模型說自己是 ChatGPT,並且發了截圖。
結果 Andrej Karpathy 自己回應了這個問題,他說:我們根本沒必要做這種事情,問一個模型它是誰沒有意義。當你問模型「你是誰」時,你就陷入了「過度擬人化」的陷阱。
非從業人士往往會把 ChatGPT 看得太聰明,覺得它有自己的意識,知道自己是誰。但實際上,所有的模型,無論是預訓練模型還是其他模型,根本沒有「我是誰」這個概念。它們所回答的「我是 ChatGPT」或者「我是 OpenAI」,都是我們設計的資料訓練模型時告訴它的回答方式。
因為在 DeepSeek 訓練 V3 時,世界上已經有很多包含「ChatGPT」這個關鍵詞的資料,因此當模型被問到「你是誰」時,它會給出「ChatGPT」這種回答。從機率分佈上講,你應該挑最大機率的回答。
這個問題並非不可解決。所有的模型在預訓練後,在後期的對齊訓練中,會進行自我認知的調整。如果 DeepSeek 想做這個調整,完全可以透過不斷對齊資料,教模型在被問到「你是誰」時回答:「我是 DeepSeek 大模型,我是 DeepSeek V3。」
我對這個問題的看法是,AK 的回應已經很好了。如果以後還有人拿截圖說某個模型是 OpenAI,你只需要把 AK 的回應丟給他就行了,AK 的觀點比誰都更有說服力。
在巨大的創新面前,一切跳樑小醜看他們都很滑稽。噪音會隨著時間逐漸消減。
但是我相信像 DeepSeek 的 V2、V3 和 R1 這樣的論文肯定會持續產生影響。那種創造的美,你只要去體會它、理解它,你一定能感受到的。它非常非常地美。
正如我們去年學習 Stable Diffusion 時,那些論文都很老了,但現在回頭看,仍然覺得它們非常地美。
今天的分享就到這裡,謝謝大家!
*頭圖來源:真格基金
極客一問
你是從什麼時候開始關注 DeepSeek 的
熱點影片
速速體驗!DeepSeek 釋出官方攻略,最佳的 R1 模型設定。
點贊關注極客公園影片號
觀看更多精彩影片

更多閱讀


相關文章