跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
C++AI算法

大模型 llama.cpp 量化转换与部署指南

大模型 llama.cpp 量化转换涉及将 HuggingFace 模型转为 GGUF 格式并进行不同精度压缩。通过 CMake 编译 llama.cpp 工具,使用 convert-hf-to-gguf.py 脚本完成格式转换,支持 f16/f32/bf16 等输出类型。进一步利用 quantize 工具进行 q4_k/q8_0 等量化操作,在模型体积与推理精度间取得平衡。K-quant 策略可针对 attention 层优化精度,适用于 CPU/GPU 等多种硬件环境部署。

未来可期发布于 2026/3/22更新于 2026/8/2146 浏览
大模型 llama.cpp 量化转换与部署指南

概述

llama.cpp 是一个高性能的 LLM 推理库,支持在各种硬件(包括 CPU 和 GPU)上运行量化后的大语言模型。本文档详细介绍如何使用 llama.cpp 将 HuggingFace 格式的模型转换为 GGUF 格式,并进行不同程度的量化。

GGUF 格式:GGUF(Georgi Gerganov Universal Format)是 llama.cpp 专门设计的模型文件格式,针对快速加载和保存模型进行了优化,支持单文件部署,包含加载模型所需的所有信息,无需依赖外部文件。

1. 安装 CMake

CMake 是跨平台的构建工具,用于编译 llama.cpp 项目。

下载地址:https://cmake.org/download/

安装建议:

  • Windows 用户建议下载 cmake-3.x.x-windows-x86_64.msi 安装包
  • 安装时选择'Add CMake to the system PATH',以便在命令行中直接使用

验证安装:

cmake --version

2. 克隆 llama.cpp 项目

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

主要组件说明:

  • convert_hf_to_gguf.py:HuggingFace 格式转 GGUF 的脚本
  • llama-quantize(或 quantize.exe):量化工具
  • main(或 main.exe):推理主程序
  • examples/:各种示例程序

3. 编译项目

cd llama.cpp
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements/requirements-convert_hf_to_gguf.txt
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -B build
cmake --build build --config Release

4. 模型转换

将 safetensors 转换为 gguf 格式。

convert-hf-to-gguf.py D:\Project\2026\llama3-lora-merge --outtype f16 --outfile D:\Project\2026\my_llama3.gguf

参数说明:

  • D:\Project\2026\llama3-lora-merge:输入模型路径(包含 config.json 和权重文件的目录)
  • --outtype f16:输出类型,f16 表示半精度浮点数(16-bit),可选 f32(全精度)或 bf16
  • --outfile:输出 GGUF 文件路径
类型精度说明
f3232-bit全精度,文件最大,精度最高
f1616-bit半精度,平衡选择
bf1616-bitBrain Float,动态范围更大
q8_08-bit直接量化为 8 位

5. 进一步量化

D:\Project\2026\test_llama3.cpp\llama.cpp\build\bin\Release quantize.exe D:\Project\2026\my_llama3.gguf D:\Project\2026\quantized_model.gguf q4_0

使用 llama-quantize 可执行文件来对模型进行进一步量化处理。量化可以帮助我们减少模型的大小,但是代价是损失了模型精度,也就是模型回答的能力可能有所下降。权衡以后我们可以选择合适的量化参数,保证模型的最大效益。

量化使用 q 表示存储权重的位数。位数越低,模型越小,速度越快,但精度损失越大。

量化类型位宽精度损失适用场景典型压缩率
q2_k2-bit高极低资源环境,实验用途~75%
q3_k_s / q3_k_m / q3_k_l3-bit中高资源受限,可接受一定质量损失~60%
q4_0 / q4_14-bit中最常用,平衡大小与质量~50%
q4_k_s / q4_k_m4-bit中改进的 4-bit,质量更好~50%
q5_0 / q5_15-bit低较高质量要求~40%
q5_k_s / q5_k_m5-bit低改进的 5-bit~40%
q6_k6-bit很低接近原始质量~35%
q8_08-bit极低几乎无损,文件较大~25%
f1616-bit无原始转换,未量化0%

K-quant 说明:

  • 后缀带 _k 的(如 q4_k_m)使用改进的量化算法
  • 混合量化策略:对 attention 层使用更高精度,其他层使用较低精度
  • _s(small)、_m(medium)、_l(large)表示混合程度

目录

  1. 概述
  2. 1. 安装 CMake
  3. 2. 克隆 llama.cpp 项目
  4. 3. 编译项目
  5. 4. 模型转换
  6. 5. 进一步量化
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Linux 下调试 C/C++ 程序的核心 GDB 命令
  • Linux 系统 PostgreSQL 12.0 安装部署详细步骤
  • 程序员入行门槛低但发展要求高,如何规划职业路径
  • 大模型时代:新手与程序员转型 AI 行业的最佳路径
  • 纯 Web 架构智慧 PACS/RIS 系统技术解析
  • 基于Python的多模态数据分块存储优化实践
  • 前端如何实现用户回到上次阅读的位置
  • 在 Windows 上本地运行 DeepSeek 的三步指南
  • Milvus 开源向量数据库技术解析与实战
  • OpenClaw Dashboard 无法登录:systemd 缺失时的网关启动方案
  • 66 个可直接访问的机器人项目合集:科研、教育、工业与医疗
  • Java 云门诊 HIS 系统技术架构与核心功能介绍
  • 队列(Queue)数据结构详解及例题
  • LLM 评估框架详解:Arthur Bench 实践指南
  • IntelliJ IDEA 集成 GitHub Copilot 安装配置与实战技巧
  • OpenClaw 龙虾机器人本地部署与配置指南
  • 大模型学习的五个进阶阶段与路线指南
  • Arrow游戏叙事工具:三步构建专业级交互剧情设计
  • 实现一行或多行文本溢出省略效果的常用方法
  • 用 pthread 实现一个 C++ 线程池

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online