大模型基于llama.cpp量化详解

大模型基于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 ```bash 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 位

6.进一步量化

 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)表示混合程度

Read more

唤醒80年代记忆:基于百度地图的一次老式天气预报的WebGIS构建之旅

唤醒80年代记忆:基于百度地图的一次老式天气预报的WebGIS构建之旅

目录 一、省会城市信息构建 1、省会城市空间查询 2、Java后台查询 二、Java省会城市天气查询 1、与百度开放平台集成天气 2、响应对象属性介绍 3、省会天气实况展示 三、WebGIS应用构建 1、背景音乐集成 2、城市标记及天气展示 3、城市轮播 4、成果展示 四、总结 前言         在数字技术飞速发展的今天,我们常常沉浸于各种高科技带来的便捷与震撼之中,却容易忽视那些曾经陪伴我们成长、承载着时代记忆的旧事物。80年代的天气预报,便是这样一份珍贵的文化遗产。它以简洁而质朴的方式,传递着天气信息,也传递着那个时代的气息。那种对自然的敬畏、对信息的渴望,以及一家人共同分享的温馨氛围,都深深烙印在我们的记忆中。然而,随着时间的推移,天气预报的形式已经发生了翻天覆地的变化。高清的画面、精准的数据、个性化的推送……这些现代技术带来的便利固然令人欣喜,但也在一定程度上让我们失去了那份对天气预报本身的纯粹情感。于是,

Windows 下 OpenClaw (小龙虾) 极速部署指南:从零基础到 Web 界面成功运行

🚀 [保姆级教程] Windows 下 OpenClaw (小龙虾) 极速部署指南:从零基础到 Web 界面成功运行 摘要:OpenClaw(开源 AI 代理框架)功能强大但配置项繁多,新手极易在插件配置阶段劝退。本文记录了一次在 Windows 环境下“极简启动”的完整实战过程。我们将采用**“核心优先,插件后置”**的策略,跳过所有非必要的第三方依赖(如 Notion/GitHub),仅配置核心大模型 API(以 Moonshot/Kimi 为例),快速跑通本地服务并验证 Web 控制面板。适合希望快速搭建本地 AI 助手的开发者。 关键词:OpenClaw, AI Agent, Windows 安装, Kimi API, Moonshot,

3分钟体验macOS Web:无需苹果设备的在线系统模拟器

3分钟体验macOS Web:无需苹果设备的在线系统模拟器 【免费下载链接】macos-web 项目地址: https://gitcode.com/gh_mirrors/ma/macos-web 想要体验macOS的优雅界面却苦于没有苹果设备?macOS Web为你带来了完美的解决方案!这是一个基于现代Web技术构建的开源项目,让你在浏览器中就能感受到macOS Ventura的桌面体验。🎯 项目概览 macOS Web是由开发者PuruVJ创建的创新项目,它使用Svelte框架和Vite构建工具,将macOS的桌面环境完整地呈现在网页上。从菜单栏到Dock栏,从窗口管理到应用程序启动,每一个细节都精心设计,力求还原真实的macOS操作体验。 核心功能详解 完整的桌面环境 项目提供了完整的macOS桌面模拟,包括: * 菜单栏:包含苹果菜单、应用程序菜单和系统状态区域 * Dock栏:可自定义的应用程序启动器 * 窗口系统:支持窗口拖拽、最小化、最大化等操作 * 应用程序:内置多种模拟应用,如计算器、日历、VSCode等 丰富的应用程序 根据src

AI 生成的 UI 太丑?3 步让你的前端秒变高级感

AI 生成的 UI 太丑?3 步让你的前端秒变高级感

🚀 AI 生成的 UI 太丑?3 步让你的前端秒变高级感 你是不是也遇到过这种情况:满心期待地用 AI 生成一个前端页面,结果得到的是一个土到掉渣的蓝紫色界面,丑到自己都看不下去?🤦‍♂️ 别担心,你不是一个人!这是目前 90% 开发者使用 AI 写前端时都会遇到的痛点。 好消息是,经过一番研究和实践,我们发现了一些有效的方法!通过几个简单的技巧,不需要手写任何 CSS,就能让 AI 帮你生成媲美专业设计师的 UI 界面。 今天就手把手教你 3 步搞定,让 AI 彻底告别 “AI 味”! 🧪 实验准备 工具准备 想要跟着实验,你需要准备: 1. Claude Code (2.0.55) 底层模型是 Minimax-M2