问题:
在使用开源大模型时,多数情况下从HuggingFace或者modelscope中不提供gguf格式权重文件,此时需要对给定的权重文件进行转换。
解决办法:
Qwen-1.5 32B的模型为例。

第一步:下载模型权重

进入Qwen-1.5 32Bmodelscope网址下载模型文件,具体下载方法这里不再赘述。
在这里插入图片描述

第二步:克隆llama.cppgithub仓库,并编译

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

在这里插入图片描述
接着,进入llama.cpp目录,并使用make进行编译:

cd llama.cpp
make

编译完成后,llama.cpp目录相较于之前会多出来很多文件。
在这里插入图片描述

第三步:转gguf格式

首先使用以下命令安装所有依赖库。

pip install -r requirements.txt

然后使用如下指令生成gguf格式模型文件。

python convert-hf-to-gguf.py [Qwen-1.5 32B文件夹位置]

执行完成后在[Qwen-1.5 32B文件夹位置]目录下会产生gguf格式的模型文件。
在这里插入图片描述
此时模型文件大小并没有发生变化,只是转了格式而已,依然有65GB,下面尝试做模型量化

第四步:模型量化(可选)

模型量化的版本有很多,这里选择使用Q4_0版本进行量化。

 ./quantize [Qwen-1.5 32B文件夹位置/ggml-model-f16.gguf]  [Qwen-1.5 32B文件夹位置/ggml-model-Q4_0.gguf] Q4_0

在这里插入图片描述
可以看出经过Q4_0量化后生成的模型文件小很多(18GB)。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐