微軟開源「原生1bit」三進製LLM:2B參數,0.4GB內存/單CPU就能跑,性能與同規模全精度開源模型相當
西風 發自 凹非寺
量子位 | 公眾號 QbitAI
微軟以小搏大,發佈首個開源2B參數規模「原生1bit」LLM——
BitNet b1.58 2B4T,單CPU就能跑,性能與同規模全精度開源模型相當。

它採用三進製{-1, 0, 1}存儲權重,相較於傳統的16位浮點數可大幅降低顯存需求。
只需0.4GB內存即可運行。
基於4T token語料訓練,BitNet b1.58 2B4T在保持性能的同時,計算效率突出。
單個CPU即可達到「與人類閱讀速度」相當的速度,每秒5-7個token,CPU端解碼延遲29ms,能耗低至0.028J。
這種效率使其可在普通筆記本電腦甚至邊緣設備上實時運行。
例如在蘋果M2 CPU上快速運行:

另外值得一提的是,BitNet b1.58 2B4T具有原生訓練優勢,與訓練後量化(PTQ)模型對比,避免了PTQ常見的性能衰減。
BitNet b1.58 2B4T剛發佈就吸引了大量網民點讚關注,作者們也當起了自己個兒的自來水。

如何實現原生1bit?話不多說,一起來看看技術詳情。
權重映射為三元值{-1, 0, +1}
BitNet b1.58 2B4T模型基於Transformer架構,對核心組件進行了系統性改造。傳統LLM依賴16bit或32bit浮點數存儲權重,而BitNet b1.58 2B4T採用一種稱為absmean的量化方案,將權重映射為三元值{-1, 0, +1},平均每個權重僅需1.58bit(log₂3≈1.58)來表示。
模型內存佔用驟降至0.4GB,僅為同類全精度模型的1/5-1/12。

另外,線性投影中的激活值被量化為8bit整數,採用基於每token的absmax量化策略,團隊還引入subln歸一化,增強量化訓練穩定性。
其它關鍵設計包括:
-
激活函數:前饋網絡(FFN)子層採用ReLU²替代常見的SwiGLU,通過提升模型稀疏性,優化了1bit環境下的計算特性。
-
位置編碼:使用旋轉位置嵌入(RoPE)。
-
偏置消除:與Llama等架構一致,所有線性層和歸一化層均移除偏置項,減少參數量並簡化量化流程。
訓練方面,BitNet b1.58 2B4T採用三階段訓練:大規模預訓練、監督微調(SFT)和直接偏好優化(DPO)。
先是大規模預訓練,模型經歷了兩階段學習率調度:得益於1bit模型的訓練穩定性,初期採用高學習率快速收斂;中期驟降至低水平,使模型能在高質量數據上精細化調整。配合動態權重衰減策略,模型在保持泛化能力的同時避免過擬合。
監督微調(SFT)階段,值得注意的是,訓練中採用損失函數求和而非平均策略,並延長了訓練輪次,這一調整被證明對低精度模型的收斂至關重要。
直接偏好優化(DPO)階段,基於UltraFeedback、MagPie等人類偏好數據集,模型通過無獎勵模型的直接優化,提升了回答的安全性與用戶滿意度,避免了傳統RLHF的高計算成本。
實驗效果方面,BitNet b1.58 2B4T內存佔用僅為0.4GB,CPU端解碼延遲29ms,能耗低至0.028J。
在數學推理任務GSM8K中,BitNet以58.38的準確率遠超Llama 3.2-1B(38.21)和Qwen2.5-1.5B(56.79);在常識推理任務WinoGrande中,BitNet 71.90的得分超同類模型均值(63.55)。

團隊特別指出,BitNet b1.58 2B4T具有原生訓練優勢。與訓練後量化(PTQ)模型對比,BitNet的原生1bit訓練策略避免了PTQ常見的性能衰減。

參數更大的Llama3-8B模型量化至1bit後,也難打BitNet b1.58 2B4T。
和其它1bit模型相比,BitNet b1.58 2B4T也有顯著更強的整體性能,絕大多數基準測試中取得SOTA。

有關BitNet b1.58 2B4T的具體表現,再來看幾個例子。
讓它生成幾個笑話,笑話簡短但也蠻有意思:
稻草人為何成為成功的神經外科醫生?回答是因為它在自己的領域很傑出(outstanding in his field)。

單CPU生成97個token,總耗時3.452秒,每秒處理 28.1 token。
再讓它基於2000年的背景,讓一位PowerPC處理器愛好者和一位英特爾處理器愛好者進行五行辯論。
BitNet b1.58 2B4T生成結果也很快,並且反映了那個時代科技行業的競爭特性。

微軟在1 bit LLM上的探索
1 bit LLM的實現方法,微軟其實早在2023年就有相關研究,當時就稱為BitNet,用BitLinear替換了nn.Linear。


之後,微軟原班人馬在上一篇論文的基礎之上做了優化,提出BitNet b1.58,在原始BitNet的基礎上增加了一個額外的0值。
也就是「The Era of 1-bit LLMs」這篇論文,用6頁研究引發網民廣泛關注。

這種方法發佈後,也有不少人在這項研究的基礎之上進行探索。Huggingface Transformers還曾整合了BitNet b1.58,運用一些技巧,使得現有模型可以直接微調到1.58bit。
接著,微軟還開發並開源了針對GPU和CPU平台的專用推理庫。
BitNet b1.58採用獨特量化方案(1.58bit權重和8bit激活值,W1.58A8)需要專門的實現,標準深度學習庫通常缺乏針對這種混合精度、低比特格式的優化內核,微軟開發了專門針對W1.58A8矩陣乘法的自定義CUDA內核。
另外,微軟還開源了bitnet.cpp——一個用於1 bit LLM CPU推理的官方參考C++庫,提供針對標準CPU架構優化的內核,旨在高效適配模型的特定量化方案,儘可能避免通用量化庫的開銷或複雜的底層位操作。
技術報告:https://arxiv.org/abs/2504.12285
抱抱臉鏈接:https://huggingface.co/microsoft/bitnet-b1.58-2B-4T
參考鏈接:https://arstechnica.com/ai/2025/04/microsoft-researchers-create-super%e2%80%91efficient-ai-that-uses-up-to-96-less-energy/
一鍵三連「點讚」「轉發」「小心心」
歡迎在評論區留下你的想法!