微软BitNet 2B模型开源:速度翻倍,内存仅Qwen六分之一
引言:
微软的研究团队近日宣布,他们成功研发了目前全球最大规模的原生 1-bit AI 模型——BitNet b1.58 2B4T。该模型在运行时仅需约 0.4GB(即 409.6MB)内存,能够在包括苹果 M2 芯片在内的普通 CPU 设备上流畅运行。初步评估显示,该模型在多项任务中的表现与当前主流的全精度开源大语言模型相当,且在计算效率方面展现出明显优势,如显著降低内存占用、减少能耗以及加快解码速度
目前,BitNet 2B模型已经100%开源,遵循MIT许可协议,可供公众自由使用。在Hugging Face平台上,微软还发布了BitNet b1.58 2B4T模型的多个版本权重,涵盖1.58 bit的打包权重、BF16格式的主权重以及GGUF格式的模型权重。
有网友这样评价该模型:“如果它真的能达到全精度模型的性能水平,那真是太让人难以置信了。”“BitNet b1.58 2B4T的发布是LLM发展历程中具有标志性意义的大事,其性能和效率表现相当出色。


论文的第一作者马树铭(Shuming Ma)是北京大学电子工程与计算机科学学院(EECS)的硕士研究生,目前正处于研究生三年级,专注于自然语言处理和机器学习领域的研究。第二作者王鸿钰(Hongyu Wang)是中国科学院(CAS)的三年级博士生,自2021年8月起在微软亚洲研究院GenAI团队担任研究实习生,其研究工作在韦福如(Furu Wei)和马树铭的指导下进行。

1:性能与同等参数模型相当,速度甚至是其两倍
作为首个拥有20亿参数(“参数”与“权重”在很大程度上是同义词)的BitNet模型,BitNet b1.58 2B4T在包含4万亿个token的数据集上完成了训练(据估算,这相当于约3300万本书的内容)。在涵盖语言理解、数学推理、编码能力和对话能力等多方面的基准测试中,该模型经过了严格评估,其性能与类似规模的同类模型相当,同时显著提高了效率。
需要指出的是,BitNet b1.58 2B4T并非在所有方面都超越了其他拥有20亿参数的模型,但其表现确实相当出色。根据研究人员的测试,该模型在ARC-Challenge、OpenbookQA、BoolQ、GSM8K(小学水平数学问题的集合)和PIQA(测试物理常识推理能力)等基准测试中,超过了Meta的Llama 3.2 1B、谷歌的Gemma 3 1B和阿里巴巴的Qwen 2.5 1.5B。

更加引人注目的是,BitNet b1.58 2B4T 在运行速度上超越了其他同级别模型,在某些场景下甚至可以达到数倍于它们的处理速度。与此同时,其内存占用却显著降低。该模型仅需 0.4GB 内存,CPU 推理延迟为 29ms;相比之下,其他类似规模的模型通常需要 1.4 到 4.8GB 的内存,其 CPU 推理延迟则在 41ms 至 124ms 之间。

从微软技术报告中的对比图可以看出,BitNet b1.58 2B4T在性能方面与Qwen 2.5 1.5B几乎持平,然而其内存占用仅为Qwen 2.5 1.5B的六分之一,且处理速度提升了两倍。此外,该模型的性能还优于需要2GB内存的Llama 3.2 1B模型,并且在处理token的速度上,BitNet b1.58 2B4T比Llama 3.2 1B快出40%。

此外,微软还展示了在苹果 M2 上运行 BitNet b1.58 3B 模型的演示视频(可在 Github 上查看)。值得一提的是,拥有 1000 亿参数的 BitNet b1.58 模型可以在单个 CPU 上运行,且处理速度与人类阅读速度相近(每秒处理 5 - 7 个 token),这为在本地设备上运行 LLM 提供了更多可能性.
视频播放:ttt-CSDN直播
2:技术架构的核心创新
微软在其技术报告中详细介绍了 BitNet b1.58 2B4T 的构建过程。该模型完全从零开始训练,基于标准的 Transformer 架构,并在 BitNet 框架的基础上进行了多项关键性改进。其核心创新在于将传统的全精度线性层(`torch.nn.Linear`)替换为自主研发的 BitLinear 层,实现了显著的性能提升。
与传统大语言模型普遍采用 32 位或 16 位浮点数存储权重不同,BitNet b1.58 2B4T 将权重量化至平均 1.58 位。这一目标是通过 absmean 量化方法实现的,该方法将权重映射为三个离散值:-1、0 和 1,从而大幅压缩模型体积并提升计算效率。考虑到三元权重无法用常规数据类型高效存储,研究人员采用了 absmax 量化策略,将多个权重打包成一个 8 位整数,并将其存放在高带宽内存(HBM)中,进一步优化了运行时的表现。
理论上,这种设计使该模型比当前主流模型更加高效。通常,在传统模型中,权重是以较高精度进行表示的,这虽然有助于模型表现稳定,但也带来了较大的内存消耗和计算负担。而 BitNet b1.58 2B4T 则通过从头开始就引入量化机制,而非在训练完成后才进行量化处理,使得整个训练和推理过程都适应了低比特环境。
除了 BitLinear 层之外,该模型还融合了多种成熟的大型语言模型技术,包括前馈网络(FFN)、位置嵌入以及偏差修正等,以增强其整体性能和稳定性。
在训练流程方面,BitNet b1.58 2B4T 分为三个主要阶段:
1. 大规模预训练:使用两阶段学习率调度和权重衰减策略,在大量公开文本、代码数据以及合成数学数据上进行广泛训练;
2. 监督微调(SFT):在此阶段,通过损失求和聚合方式结合特定超参数设置,对模型进行指令理解和对话能力的微调;
3. 直接偏好优化(DPO):利用人类偏好的数据对模型进行进一步优化,使其在实用性和安全性方面更贴合用户期望。
这一系列创新不仅推动了模型小型化的边界,也为未来高效 AI 推理系统的发展提供了新的思路。
3:背后是微软定制框架,硬件兼容性可能受阻
微软在其技术报告中详细介绍了 BitNet b1.58 2B4T 的构建过程。该模型完全从零开始训练,基于标准的 Transformer 架构,并在 BitNet 框架的基础上进行了多项关键性改进。其核心创新在于将传统的全精度线性层(`torch.nn.Linear`)替换为自主研发的 BitLinear 层,实现了显著的性能提升。
与传统大语言模型普遍采用 32 位或 16 位浮点数存储权重不同,BitNet b1.58 2B4T 将权重量化至平均 1.58 位。这一目标是通过 absmean 量化方法实现的,该方法将权重映射为三个离散值:-1、0 和 1,从而大幅压缩模型体积并提升计算效率。考虑到三元权重无法用常规数据类型高效存储,研究人员采用了 absmax 量化策略,将多个权重打包成一个 8 位整数,并将其存放在高带宽内存(HBM)中,进一步优化了运行时的表现。
理论上,这种设计使该模型比当前主流模型更加高效。通常,在传统模型中,权重是以较高精度进行表示的,这虽然有助于模型表现稳定,但也带来了较大的内存消耗和计算负担。而 BitNet b1.58 2B4T 则通过从头开始就引入量化机制,而非在训练完成后才进行量化处理,使得整个训练和推理过程都适应了低比特环境。
除了 BitLinear 层之外,该模型还融合了多种成熟的大型语言模型技术,包括前馈网络(FFN)、位置嵌入以及偏差修正等,以增强其整体性能和稳定性。
在训练流程方面,BitNet b1.58 2B4T 分为三个主要阶段:
1. 大规模预训练:使用两阶段学习率调度和权重衰减策略,在大量公开文本、代码数据以及合成数学数据上进行广泛训练;
2. 监督微调(SFT):在此阶段,通过损失求和聚合方式结合特定超参数设置,对模型进行指令理解和对话能力的微调;
3. 直接偏好优化(DPO):利用人类偏好的数据对模型进行进一步优化,使其在实用性和安全性方面更贴合用户期望。
。 
测试结果表明,bitnet.cpp在ARM CPU(苹果M2)上实现了显著的性能提升,提速幅度在1.37倍到5.07倍之间,同时能耗降低了55.4%到70.0%,整体效率得到进一步提高。在x86 CPU(英特尔i7-13700H)上,提速范围为2.37倍到6.17倍,能耗降低比例在71.9%到82.2%之间。
此外,bitnet.cpp在ARM和x86 CPU上的性能均明显优于llama.cpp,且随着模型规模的增大,这种优势愈发明显,速度提升从1.37倍到6.46倍不等,具体取决于模型和架构。在苹果M2上,当线程数量不受限制时,bitnet.cpp的速度提升最高可达5.07倍;而在英特尔i7-13700H上,当线程受限时,bitnet.cpp的速度提升最高可达6.46倍,这表明其在资源受限的本地系统推理运行中具有极高的效率。

除了性能差异外,带宽限制也在不同架构的bitnet.cpp功效中扮演着关键角色,尤其是在对比苹果M2和Intel i7-13700H时。由于苹果M2的带宽更大,相比Intel i7-13700H,bitnet.cpp在运行大体量模型时的速度提升更为显著。
在能耗成本对比方面,微软对参数为700M、7B和70B的模型分别进行了测试。结果显示,在苹果M2上,随着模型体量的增加,bitnet.cpp的能效提升愈发明显,这凸显了其在大规模推理部署中更高效地平衡速度与能源使用的能力,这对于移动设备或边缘计算等能源受限的场景极为关键。而在英特尔i7-13700H芯片上,bitnet.cpp的节能效果更为突出。尽管目前尚未有70B模型在该英特尔CPU上运行的直接能耗数据,但对较小模型的测试结果已清晰表明,bitnet.cpp能够显著降低大语言模型在高性能多核心处理器上执行推理时的能耗需求。

为了衡量推理的准确性,微软从WildChat中随机抽取了1000条提示词,运用700M BitNet b15.8模型,并对比了bitnet.cpp和llama.cpp生成的输出与FP32内核生成的输出。评估是逐token进行的,每个模型最多输出100个token,只有当推理样本与全精度输出完全一致时,才判定该样本为无损。结果显示,bitnet.cpp能够实现1-bit LLM的准确且无损的推理。
值得注意的是,目前 BitNet 的运行依赖于名为 bitnet.cpp 的推理框架,而该框架现阶段仅支持特定类型的硬件设备。在当前的兼容列表中,并未包含在人工智能基础设施中广泛使用的图形处理器(GPU)。这意味着,尽管 BitNet 在资源受限的设备上展现出良好的应用潜力,但其硬件兼容性仍是一个不可忽视的限制因素,可能会影响其大规模推广和实际落地。
不过,微软在技术报告中也提到,他们正在积极扩展 bitnet.cpp 框架,以适配更多类型的平台和设备。未来的支持计划涵盖了移动终端(如 iPhone 和安卓手机)、神经网络处理器(NPU)以及 GPU 等主流 AI 计算硬件,这将大大提升模型的适用范围。
此外,微软还表示,后续的研究重点将不仅限于推理端的优化,还将包括对 1-bit 大语言模型训练过程的改进,以及针对 1-bit 模型特点进行软硬件协同设计,打造更加定制化的计算系统。这一系列举措有望进一步推动低比特人工智能模型的发展,并逐步克服当前面临的硬件兼容性挑战。
4:结论
BitNet b1.58 2B4T 是一项极具说服力的概念验证,它挑战了在大规模大语言模型(LLM)中实现高性能必须依赖全精度权重的传统观点,为在资源受限的环境中部署强大的语言模型开辟了新的途径,解决了以往模型在这些环境中难以应用的问题,有望推动先进 AI 技术的进一步普及。
微软指出,除了当前取得的性能成果,BitNet b1.58 2B4T 还揭示了几个令人兴奋的研究方向,包括探索原生 1 bit 大模型的缩放特性、扩展序列长度、增强多语言能力以及集成多模态架构等。
论文链接:
https://arxiv.org/pdf/2504.12285
https://arxiv.org/pdf/2410.16144
模型权重:https://huggingface.co/microsoft/bitnet-b1.58-2B-4T
试用链接:https://bitnet-demo.azurewebsites.net/
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)