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

用 OpenClaw + 飞书 Agent 打造 AI 自主模拟炒股系统:从零到实盘全记录

用 OpenClaw + 飞书 Agent 打造 AI 自主模拟炒股系统:从零到实盘全记录

作者:海风 | 日期:2026年3月17日 本文记录了我用 OpenClaw 2026.3.8 搭建 AI 自主模拟炒股系统的完整过程。trader Agent 拥有 5 万元虚拟资金,每天自主选股、自主决策买卖、自主管理仓位——完全不需要人类干预交易决策。 一、背景:为什么让 AI Agent 炒股? 2026 年,AI Agent 已经从"聊天机器人"进化到能自主执行复杂工作流的智能体。我一直在想:如果给一个 AI Agent 一笔钱,让它在 A 股市场上自主投资,它能做得怎么样? 这不是一个理论问题——借助 OpenClaw(一个开源 AI

Kubernetes与AI推理服务最佳实践

Kubernetes与AI推理服务最佳实践 1. AI推理服务核心概念 1.1 什么是AI推理服务 AI推理服务是指将训练好的AI模型部署为可访问的服务,用于实时或批量处理推理请求。在Kubernetes环境中,AI推理服务需要考虑资源管理、性能优化和高可用性。 1.2 常见的AI推理框架 * TensorFlow Serving:Google开源的机器学习模型服务框架 * TorchServe:PyTorch官方的模型服务框架 * ONNX Runtime:微软开源的跨平台推理引擎 * Triton Inference Server:NVIDIA开源的高性能推理服务器 2. GPU资源管理 2.1 安装GPU驱动和NVIDIA Device Plugin # 安装NVIDIA驱动(在节点上执行) apt-get install -y nvidia-driver-535 # 安装NVIDIA Device Plugin kubectl apply -f https://raw.githubusercontent.com/NVIDIA/

用 AI 做鸿蒙游戏 NPC,是一种什么体验?

用 AI 做鸿蒙游戏 NPC,是一种什么体验?

子玥酱(掘金 / 知乎 / ZEEKLOG / 简书 同名) 大家好,我是子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚焦于业务型系统的工程化建设与长期维护。 我持续输出和沉淀前端领域的实战经验,日常关注并分享的技术方向包括前端工程化、小程序、React / RN、Flutter、跨端方案, 在复杂业务落地、组件抽象、性能优化以及多端协作方面积累了大量真实项目经验。 技术方向:前端 / 跨端 / 小程序 / 移动端工程化 内容平台:掘金、知乎、ZEEKLOG、简书 创作特点:实战导向、源码拆解、少空谈多落地 文章状态:长期稳定更新,大量原创输出 我的内容主要围绕 前端技术实战、真实业务踩坑总结、框架与方案选型思考、行业趋势解读 展开。文章不会停留在“API 怎么用”,而是更关注为什么这么设计、在什么场景下容易踩坑、

《发现了一种本地AI服务远程管理难题与一种加密隧道解决方案!》

《发现了一种本地AI服务远程管理难题与一种加密隧道解决方案!》

现在用着开源大语言模型、Stable Diffusion这类AI工具的人越来越多了,不少开发者都选在自己家或者公司的本地硬件上搭AI服务,比如带显卡的台式机、Linux服务器,还有NAS设备都行。这么弄确实能完全自己掌控隐私,数据也全在自己手里,但麻烦事儿也来了:怎么才能安全又方便地从外面的网络远程访问、管理这些本地的AI服务呢? 以前常用的端口映射办法吧,不安全;要搭VPN的话,步骤又太复杂,一般人搞不定。今天咱们就聊聊用P2P虚拟组网技术做的那种简单好用的解决办法。 本地部署AI后,常见的远程访问需求包括: 1. 状态监控:在外查看服务的CPU/GPU占用、日志和运行状态。 2. 交互操作:远程使用WebUI(如ChatGPT-Next-Web、Stable Diffusion WebUI)进行推理或生图。 3. 文件管理:安全地传输生成的文件或更新模型。 直接通过公网IP+端口暴露服务,相当于将内网服务置于公网扫描之下,极易成为攻击目标。而商用远程桌面软件通常延迟较高,且不适合长期后台服务管理。 一种思路:如果构建加密的虚拟局域网呢? 理想的方案是,让远程设