重磅微软开源1比特推理框架CPU跑千亿模型速度起飞
微软刚刚开源了一个名为bitnet.cpp的1比特LLM推理框架,号称能在普通CPU上运行千亿参数级模型!
这个消息一出,网友们顿时沸腾了。毕竟,能在本地设备上运行大型语言模型,还不需要GPU,这简直就是AI 的一大步啊!
但是,真的有这么神奇吗?
一起来看下这个bitnet.cpp到底是何方神圣。
bitnet.cpp:1比特的"魔法"
bitnet.cpp是微软开发的一个专门用于1比特LLM(大型语言模型)推理的框架。它的主要特点是:
直接在CPU上运行 , 不需要GPU
速度提升最高可达6倍
能耗降低高达82%
支持运行100B参数的模型处理
技术原理:优化的秘密
bitnet.cpp的核心在于其 优化的内核 ,这些内核支持 快速且无损 的1.58比特模型推理。
具体来说,bitnet.cpp提供了三种核心内核:
I2_S :适用于x86和ARM CPU
TL1 :主要用于ARM CPU
TL2 :主要用于x86 CPU
这些内核针对不同的CPU架构进行了优化,以实现最佳性能。
支持的模型

目前,bitnet.cpp支持以下几种模型:
bitnet_b1_58-large :0.7B参数
bitnet_b1_58-3B :3.3B参数
Llama3-8B-1.58-100B-tokens :8.0B参数
这些模型都是在研究设置下训练的,可以在Hugging Face上找到。
性能表现:数据说话
根据官方数据,bitnet.cpp在不同CPU上的表现如下:

ARM CPU :
速度提升: 1.37x到5.07x
能耗降低: 55.4%到70.0%

x86 CPU :
速度提升: 2.37x到6.17x
能耗降低: 71.9%到82.2%
更令人惊讶的是,它声称能在单个CPU上运行100B参数的BitNet b1.58模型,速度可以达到 每秒5-7个token ,相当于人类阅读速度。
使用方法:简单直接
使用bitnet.cpp非常简单,主要分为以下几步:
克隆仓库 : git clone --recursive https://github.com/microsoft/BitNet.git
安装依赖 :使用conda创建环境并安装依赖
构建项目 :使用 setup_env.py 脚本下载模型并构建项目
运行推理 :使用 run_inference.py 脚本进行推理
例如,运行推理的命令如下:
python run_inference.py -m models/Llama3-8B-1.58-100B-tokens/ggml-model-i2_s.gguf -p "Your prompt here" -n 6 -temp 0
争议:1比特量化的代价
尽管性能数据令人印象深刻,但也有人对1比特量化的效果表示怀疑。
Vlado Boza(@bozavlado)就直接表示:
我们知道从16位降到8位就已经损害了Llama 405B,但这里我们直接降到1位,还假装一切都很好...
确实,有用户测试发现,使用bitnet.cpp运行的模型在某些任务上表现得相当糟糕。
ATeRSa NDUcC(@ATeRSa_NDUcC)分享了一个令人担忧的测试结果:
提示是"写一篇关于生态系统服务及其对生态系统影响的文章",但输出的全是重复的车轱辘话,完全无法使用。
相比之下,他用14B参数的Q4_K_L量化模型得到了更好的结果:

这种差距确实令人担忧。不过,也有人指出,这可能是因为模型还需要进一步调优。
未来展望
尽管存在争议,但bitnet.cpp的出现可谓是为AI的发展开辟了新的可能性,迈出了一大步。可以预见接下来的可能趋势:
降低硬件门槛 :让更多人能在普通设备上运行大型AI模型。
提高能效 :大幅降低AI运行的能耗,有利于可持续发展。
推动技术创新 :1比特量化技术的突破可能激发更多相关研究。
虽然 bitnet.cpp 仍存在技术上的局限性,但也代表着一个激动人心的进展。它展示了AI技术朝着更轻量、更高效方向发展的潜力。
FXTUREVESCENT(@fxturevescent) 就表示:
版权声明:
作者:shadowrocket
链接:https://www.shadowrocket8.top/122.html
来源:Shadowrocket官网
文章版权归作者所有,未经允许请勿转载。


共有 0 条评论