AG百家乐是真实的吗 微软开源“原生1bit”三进制LLM:2B参数,0.4GB内存/单CPU就能跑

发布日期:2024-04-18 17:18    点击次数:177

西风 发自 凹非寺量子位 | 公众号 QbitAIAG百家乐是真实的吗

微软以小搏大,发布首个开源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等东说念主类偏好数据集,玩AG百家乐有没有什么技巧模子通过无奖励模子的平直优化,培植了修起的安全性与用户重生度,幸免了传统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‑efficient-ai-that-uses-up-to-96-less-energy/