Administrator
Published on 2025-01-03 / 87 Visits
0

基于LLAMA.CPP量化部署大模型

一、环境介绍

当前环境

1. 硬件环境:

显卡:GTX 3060 12G * 1

服务器:8核 32G

2. 系统软件环境

ubuntu = 22.04.1

CUDA = 12.6

python = 3.11.11

cmake = 3.22.1

3. 大模型版本

Qwen2.5-0.5B

二、文件下载

下载llama.cpp的所有文件,点击这里进入他的github主页

可以直接下载压缩包,也能通过GIT命令拉取最新文件

git clone https://github.com/ggerganov/llama.cpp

三、格式转换

进入llama.cpp根目录下有文件 convert-hf-to-gguf.py 执行以下命令转换格式,并且量化模型

python convert-hf-to-gguf.py /root/autodl-tmp/models/qwen2.5-0.5b --outfile /root/autodl-tmp/models/qwen2.5-0.5b/qwen2.5-0.5b-Chat-q8_0.gguf --outtype q8_0

convert-hf-to-gguf.py : 为转换脚本

/root/autodl-tmp/models/qwen2.5-0.5b :safetensors后缀的模型位置

--outfile : 量化后的模型文件输出地址

--outtype: 量化到什么程度

四、编译环境

这里分为CPU版本和GPU版本,在编译时会略有不同

CPU版本

cmake -B build_cpu
cmake --build build_cpu --config Release

GPU版本

cmake -B build_gpu -DLLAMA_CUDA=ON
cmake --build build_gpu --config Release -j 12

五、再次量化

进入build文件夹下的bin文件夹

CUP版本在build_cpu

GPU版本在build_gpu

执行以下命令进行再次量化

./quantize --allow-requantize /root/autodl-tmp/models/qwen2.5-0.5b/qwen2.5-0.5b-Chat-q8_0.gguf /root/autodl-tmp/models/qwen2.5-0.5b/qwen2.5-0.5b-Chat-q4_1.gguf Q4_1