微軟開源“原生1bit”三進制LLM:2B參數,0.4GB內存/單CPU就能跑,性能與同規模全精度開源模型相當
微軟以小搏大,發布首個開源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)子層采用ReLU2替代常見的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架構優化的內核,旨在高效適配模型的特定量化方案,盡可能避免通用量化庫的開銷或復雜的底層位操作。




































