端侧AI 模型部署实战三(模型转换)

0 阅读2分钟

为什么必须把原始模型转成 GGUF,才能用 llama.cpp 跑?

原始模型(HuggingFace 下载的那种):

  • 格式:.bin / .safetensors
  • 框架:PyTorch
  • 结构:为训练、微调设计
  • 运行:必须依赖 Python、Torch、Transformers、显卡驱动……

而 llama.cpp 是纯 C/C++ 推理引擎它不认识 PyTorch 格式,完全读不懂原始模型。 所以必须转成它能识别的格式:GGUF

原始模型 = 训练用
GGUF 模型 = llama.cpp 推理用不转 GGUF:

  • 你编译的 llama.cpp 完全用不了
  • 跑不起来、读不懂、加载失败

转了 GGUF:

  • 能本地运行
  • 能量化变小
  • 能 CPU 跑
  • 能开网页服务
  • 能在 Android / Windows / Linux 通用

本地环境

  • Windows + VS 2026
  • Anaconda(Python 环境)
  • llama.cpp 已编译
  • 有原始 HF 模型(pytorch_model.bin/safetensors + config.json)

一、整体流程(3 步)

  1. 激活 Anaconda 环境

  2. 安装依赖(一次安装)

  3. 运行 llama.cpp 自带转换脚本 → 输出 GGUF

二、第一步:打开 Anaconda 终端(隔离出来的python环境)

方法 A

开始菜单 → 打开 Anaconda Prompt

方法 B

VS 2026 终端 → 切换到 Anaconda Prompt

三、第二步:创建 / 激活环境(必做)

如果你已有conda 环境,运行

conda activate 你的环境名,

比如我的环境名aienv

如果你想新建一个干净环境(推荐)

conda create -n gguf python=3.10 -y conda activate gguf
conda activate gguf

四、第三步:安装依赖(必须)

pip install torch sentencepiece protobuf transformers -i pypi.tuna.tsinghua.edu.cn/simple

五、第四步:进入 llama.cpp 目录

我的llma.cpp路径:

cd D:\workspace\AI\tools\llama.cpp\llama.cpp

六、第五步:核心转换命令(转型加量化)

第一步:用 convert-hf-to-gguf.py 把原始 HF 模型 → 转成 FP16 精度的 GGUF 模型

第二步:用 quantize.exe 把 FP16 GGUF → 量化成 Q4_K_M 等低精度 GGUF 模型

其中:

  • 原始模型:D:\workspace\AI\models\gemma-3-4b-it
  • 输出 GGUF:D:\workspace\AI\models\gemma-3-4b-it-q4.gguf
  • convert-hf-to-gguf.py → llama.cpp 自带官方转换器,位置就在:llama.cpp/convert-hf-to-gguf.py

注意:huggingface官网下载原始模型很慢,可以通过国内镜像下载

pip install modelscope -U

modelscope download google/gemma-3-4b-it

下载成功:

下载文件包括:

最终转换命令: python convert_hf_to_gguf.py "D:\workspace\AI\lm_studio_models\Gemma-3-4B-it" --outfile "D:\workspace\AI\lm_studio_models\gemma-3-4b-it-fp16.gguf" --outtype f16

最终量化命令:

.\build\bin\Release\llama-quantize.exe "D:\workspace\AI\lm_studio_models\gemma-3-4b-it-fp16.gguf" "D:\workspace\AI\lm_studio_models\gemma-3-4b-it-q4_K_M.gguf" q4_K_M

七、转换完直接运行(测试)

build\bin\Release\llama-cli.exe -m "D:\workspace\AI\lm_studio_models\gemma-3-4b-it-q4_K_M.gguf"

本地运行如下:

注意:我是使用了visual studio的环境编译了llama.cpp, 源码下载地址:

git clone gitee.com/mirrors/lla…

编译指令:

cmake -B build -G "Visual Studio 18 2026" -A x64

cmake --build build --config Release

编译成功后这个路径下会输出相关dll和exe,

八、支持的模型(全部支持)

  • Llama / Llama2 / Llama3
  • Qwen 通义千问
  • Gemma
  • Mistral
  • Phi
  • Baichuan 百川
  • ChatGLM
  • 所有 HuggingFace 模型