玩一玩微软的 1 BIT 模型:BITNET. 一个 CPU 就能跑起来的大模型
编译使用如下步骤可以编译这个 BitNet 模型的运行环境:git clone https://github.com/ahfuzhang/BitNet.git cd BitNet # 克隆子仓库 git submodule update --init --recursive # docker build docker build -t local-bitnet:latest . # 或者 make -f Makefile.docker build TAGlatest运行完后 docker image ls -a | grep -i bitnet 可以看见一个 1.7G 的镜像。运行直接输入提示词的模式docker run --rm -it \ --cpuset-cpus8 \ -m 512m \ local-bitnet:latest \ python3 run_inference.py -m models/BitNet-b1.58-2B-4T/ggml-model-i2_s.gguf -t 1 -c 4096 -n 1024 -temp 0.7 -p explain what is 1-bit model? 对话模式docker run --rm -it \ --cpuset-cpus8 \ -m 512m \ local-bitnet:latest \ python3 run_inference.py -m models/BitNet-b1.58-2B-4T/ggml-model-i2_s.gguf -t 1 -c 4096 -n 1024 -temp 0.7 -p -cnv可以发现1 个 cpu 512mb 内存就能跑起来出 token 的速度也很快-t 这个参数是设置线程数的线程数要与 docker 分配的核数一致-c 是上下文窗口大小-n 是输出内容的限制-temp是温度值。测试发现小于 0.7 会出现随机的重复单词。感受如果你问我 1045 乘以 6596 等于多少我会立即回答你2368794 你别管对不对你就说快不快吧……BitNet 的问题还非常多在 MacOS 下运行出现随机的无意义的单词有时候会把输出过的一段话循环的反复输出有时候会不断重复某个单词停不下来有时候对于知识性的问题还是勉强得到了正确可读的结果