从精度认识大语言模型版本

在 Hugging Face 上搜一个模型,经常出现十几个版本——别慌,核心区别就是精度。本文帮你从模型名称一眼看出它是什么精度、多大体积、适合什么场景。


一、为什么同一个模型有这么多版本?

训练一个模型很贵(几十万到几百万美元),但把训练好的模型压缩成不同精度几乎零成本。所以官方和社区会发布多种精度版本:

原始模型(FP32/BF16,训练完成)
  ├── FP16 版(推理首选)
  ├── INT8 版(服务器部署)
  ├── INT4 版(端侧部署)
  ├── GGUF 格式(CPU 推理)
  └── GPTQ/AWQ 格式(GPU 推理)

本质:所有版本是同一个模型,只是每个权重用多少位来存储不同。


二、命名缩写速查表

名称 全称 缩写 位数 每参数字节 来源
float32 Floating Point 32 FP32 32 4B IEEE 754
float16 Floating Point 16 FP16 16 2B IEEE 754
bfloat16 Brain Float 16 BF16 16 2B Google(非 IEEE 标准)
float8 Floating Point 8 FP8 8 1B 新兴标准
int8 Integer 8 INT8 8 1B 整数
int4 Integer 4 INT4 4 0.5B 整数
NF4 NormalFloat 4 NF4 4 0.5B QLoRA 论文

FP = Floating Point(浮点数),INT = Integer(整数),BF = Brain Float。


三、精度 vs 模型大小 vs 适用场景

以一个 7B(70 亿参数) 模型为例:

精度 每参数字节 模型文件大小 内存/显存需求 适用场景
FP32 4B 28 GB 32+ GB 训练(最精确)
BF16 2B 14 GB 16+ GB 训练(范围大)
FP16 2B 14 GB 16+ GB GPU 推理(精度高)
INT8 1B 7 GB 8+ GB 服务器推理
INT4 0.5B 3.5 GB 4+ GB 端侧/手机部署

速算公式:模型大小 ≈ 参数量 × 每参数字节。7B × 2B = 14 GB。


四、常见模型名称解读

4.1 官方原版

Qwen2.5-7B-Instruct        → FP16(官方默认精度)
Llama-3.1-8B               → BF16(Meta 默认)
deepseek-v2-lite           → BF16

识别方法:没有特殊后缀 = 原始精度(通常 FP16 或 BF16)。

4.2 GPTQ 量化(GPU 推理)

Qwen2.5-7B-Instruct-GPTQ-Int8    → GPTQ 算法,8 位量化
Qwen2.5-7B-Instruct-GPTQ-Int4    → GPTQ 算法,4 位量化

识别方法:GPTQ + Int4/Int8。需要 GPU,推理速度快。

4.3 AWQ 量化(GPU 推理,比 GPTQ 更优)

Qwen2.5-7B-Instruct-AWQ          → AWQ 算法,4 位量化

识别方法:AWQ 后缀。需要 GPU,精度比 GPTQ 更好。

4.4 GGUF 格式(CPU/混合推理,llama.cpp 生态)

Qwen2.5-7B-Instruct-Q4_K_M.gguf  → 4 位量化,中等质量
Qwen2.5-7B-Instruct-Q5_K_S.gguf  → 5 位量化,高质量
Qwen2.5-7B-Instruct-Q6_K.gguf    → 6 位量化,接近原始
Qwen2.5-7B-Instruct-Q8_0.gguf    → 8 位量化,几乎无损

识别方法:Q + 数字 + _K_M/_K_S 等后缀。可用 CPU 推理(llama.cpp/ollama)。

GGUF 量化档位详解

档位 含义 模型大小(7B) 推荐度
Q2_K 2 位,极低质量 ~2.5 GB 不推荐
Q3_K_M 3 位,低质量 ~3.2 GB 勉强可用
Q4_K_M 4 位,中等质量 ~4.1 GB 最常用,平衡
Q5_K_M 5 位,高质量 ~4.9 GB 追求质量
Q6_K 6 位,接近原始 ~5.7 GB 接近无损
Q8_0 8 位,几乎无损 ~7.0 GB 精度敏感场景

4.5 RKLLM 格式(瑞芯微 NPU 专用)

Qwen2.5-0.8B-int8.rkll     → INT8 量化,RK3588 NPU 可用

识别方法:.rkll 后缀。专用于香橙派等瑞芯微设备。

4.6 其他格式

model-W8A8                 → 权重 8 位 + 激活值 8 位(vLLM 格式)
model-FP8                  → FP8 精度(H100 GPU 支持)
model-NVFP4                → NVIDIA FP4(Blackwell 架构专用)
model-Qlora-NF4            → NF4 量化(QLoRA 微调常用)

五、怎么选?一张决策表

你的设备 推荐精度 推荐格式 工具
高端 GPU(A100/H100) FP16/BF16 原版 PyTorch、vLLM
消费 GPU(RTX 3060+) INT4/INT8 AWQ/GPTQ vLLM、Ollama
纯 CPU(笔记本/服务器) Q4_K_M ~ Q6_K GGUF llama.cpp、Ollama
香橙派 RK3588 INT8 RKLLM rkllm-server
手机/嵌入式 INT4 TFLite/ONNX 各厂商 SDK

六、实例:Qwen2.5-7B 的所有版本

模型名 精度 大小 场景
Qwen2.5-7B-Instruct FP16 14 GB GPU 推理首选
Qwen2.5-7B-Instruct-GPTQ-Int4 INT4 4 GB GPU 量化推理
Qwen2.5-7B-Instruct-AWQ INT4 4 GB GPU 量化推理(更优)
Qwen2.5-7B-Instruct-Q4_K_M.gguf INT4 4.1 GB CPU 推理(Ollama)
Qwen2.5-7B-Instruct-Q6_K.gguf INT6 5.7 GB CPU 推理(接近无损)

七、总结

看到模型名 → 找关键词:

没有特殊后缀 → FP16/BF16(原始精度,最大最精确)
GPTQ / AWQ   → GPU 量化版(INT4/INT8,需要显卡)
GGUF + Q4/Q5/Q6/Q8 → CPU 量化版(llama.cpp/ollama 生态)
.rkll         → 瑞芯微 NPU 专用
FP8 / NVFP4   → 新一代 GPU 专用格式

核心原则:精度越高 → 模型越大越精确 → 需要更多内存/显存。根据你的硬件选合适的精度版本。


相关链接

相关笔记