微软开源爆火1.58bit大模型推理框架!千亿参数模型量化后单CPU可跑,速度每秒5-7个token
内容提要
微软开源了BitNet b1.58,一个1.58bit大模型推理框架。通过将参数量化为{-1, 0, 1},大幅减少存储和计算需求,使千亿参数模型在单CPU上每秒处理5-7个token。该框架在ARM和x86 CPU上显著加速并降低能耗。虽然需要重新训练模型,但Huggingface已支持将现有模型微调到1.58bit。
关键要点
-
微软开源了1.58bit大模型推理框架BitNet b1.58。
-
该框架通过将参数量化为{-1, 0, 1},显著减少存储和计算需求。
-
千亿参数模型在单CPU上每秒处理5-7个token,接近人类阅读速度。
-
bitnet.cpp是1bit LLM的官方推理框架,支持在CPU上进行快速推理。
-
在ARM CPU上,框架可实现1.37至5.07倍的加速,能耗降低55.4%至70.0%。
-
在x86 CPU上,加速效果介于2.37至6.17倍,能耗减少71.9%至82.2%。
-
BitNet b1.58模型的权重被量化为三元值,采用absmean量化函数。
-
该模型在架构设计上借鉴了Llama,使用了RMSNorm、SwiGLU等组件。
-
与Llama相比,BitNet b1.58在矩阵乘法方面节省了71.4倍的计算能耗。
-
Huggingface已支持将现有模型微调到1.58bit,降低了训练成本。
延伸问答
BitNet b1.58的主要特点是什么?
BitNet b1.58是一个1.58bit大模型推理框架,通过将参数量化为{-1, 0, 1},显著减少存储和计算需求。
在单CPU上,BitNet b1.58的处理速度是多少?
在单CPU上,BitNet b1.58可以每秒处理5-7个token。
BitNet b1.58在ARM和x86 CPU上的加速效果如何?
在ARM CPU上,BitNet b1.58可实现1.37至5.07倍的加速;在x86 CPU上,加速效果介于2.37至6.17倍之间。
使用BitNet b1.58需要重新训练模型吗?
是的,使用BitNet b1.58需要从头开始训练模型,但Huggingface已支持将现有模型微调到1.58bit。
BitNet b1.58的量化方法是什么?
BitNet b1.58将模型权重量化为三元值{-1, 0, 1},使用absmean量化函数进行约束。
与Llama相比,BitNet b1.58在计算能耗上有什么优势?
与Llama相比,BitNet b1.58在矩阵乘法方面节省了71.4倍的计算能耗。