简短回答: 所需显存 ≈ 参数量 × 每权重比特数 ÷ 8,再加上 KV 缓存(随上下文增长)和约 0.8 GB 的开销。在 Q4_K_M 下,每十亿参数约 0.6 GB,因此 8B 模型在 8K 上下文下约需 7 GB,32B 模型约 23 GB,70B 模型约 46 GB。下表针对一系列模型和量化格式计算得出。找到你的模型,横向阅读,并与你的显卡比较。
按模型大小与量化格式所需的显存
| 模型 | 参数量 | Q4_K_M | Q5_K_M | Q8_0 | F16 |
|---|---|---|---|---|---|
| Gemma 3 4B Instruct | 4B | 3.6 GB | 4.0 GB | 5.4 GB | 9.2 GB |
| Llama 3.1 8B Instruct | 8B | 6.7 GB | 7.5 GB | 10.4 GB | 17.9 GB |
| Qwen 3 14B | 14.8B | 11.1 GB | 12.6 GB | 17.9 GB | 31.7 GB |
| Qwen3.8 27B | 27.78B | 18.3 GB | 21.2 GB | 31.0 GB | 57.1 GB |
| Qwen 3 32B | 32.8B | 22.8 GB | 26.2 GB | 37.8 GB | 68.5 GB |
| Llama 3.3 70B Instruct | 70B | 45.7 GB | 53.1 GB | 77.9 GB | 143 GB |
| Qwen 3 30B-A3B (MoE) | 总计 30.5B / 激活 3.3B | 20.0 GB | 23.2 GB | 34.0 GB | 62.6 GB |
| Llama 4 Scout 17B | 总计 109B / 激活 17B | 68.2 GB | 79.7 GB | 118 GB | 220 GB |
显存单位为 GB,由我们的显存引擎计算:权重 + 8K 上下文的 KV 缓存 + 框架开销。 对于混合专家(MoE)模型,“参数量”一列特意同时显示两个数字。显存跟随总参数量(所有专家都必须驻留,因为路由器可能在任意 token 上选中其中任何一个)。速度跟随激活参数量(每个 token 只读取被选中的专家)。这就是为什么 Qwen 3 30B-A3B 需要 30B 模型的内存,却像 3B 模型那样快速生成,也是为什么 Llama 4 Scout 尽管只有 17B 激活参数,仍需要服务器级机器。
计算公式
权重占用 参数量 × 每权重比特数 ÷ 8 字节。每权重比特数并非名义值,因为量化格式带有块元数据:
| 格式 | 每权重比特数 | 每十亿参数占用 GB |
|---|---|---|
Q4_K_M | 4.83 | 0.60 |
Q5_K_M | 5.67 | 0.71 |
Q6_K | 6.56 | 0.82 |
Q8_0 | 8.50 | 1.06 |
F16 | 16.00 | 2.00 |
仅权重。还需加上 KV 缓存(随上下文增长)和约 0.8 GB 框架开销。每权重比特数包含量化块元数据,因此 Q4_K_M 是 4.83 比特,而不是 4。 KV 缓存是模型用来“记住”对话的内存。它随上下文长度线性增长,并取决于架构:KV 头数少的模型占用小得多,DeepSeek 与 Kimi 一类模型使用压缩的潜在缓存,而 Qwen3-Next 这样的混合模型只在部分层保留缓存(48 层中的 12 层)。llama.cpp 还可以以较低精度存储缓存:q8_0 大约可将其减半,且量化 V 缓存需要启用 flash attention(llama.cpp 讨论、错误说明)。
你的显存能放下什么
按同样的计算,每种显存容量下、不溢出到系统内存时能放下的最大模型:
| GPU 显存 | 能放下的最大模型 |
|---|---|
| 8 GB | GLM-4 9B (7.4 GB), K2 Horizon 7B (7.4 GB), GLM-4.6V-Flash 9B (7.4 GB) |
| 12 GB | Cosmos 3 Nano (11.9 GB), Qwen 3 14B (11.1 GB), Phi-4 (14B) (10.9 GB) |
| 16 GB | OLMo 2 13B Instruct (15.8 GB), EuroLLM 22B (15.7 GB), LFM2.5-24B-A2B (15.5 GB) |
| 24 GB | Qwen 3.5 35B-A3B (23.8 GB), Nex-N2.5 mini (23.8 GB), Nex-N2 mini (23.8 GB) |
| 32 GB | K2 Horizon MoVA 36B-A4B (25.0 GB), Seed-OSS-36B-Instruct (24.7 GB), Qwen 3.5 35B-A3B (23.8 GB) |
| 48 GB | Qwen 2.5 VL 72B Instruct (47.8 GB), Qwen 2.5 72B Instruct (47.0 GB), Nemotron 70B Instruct (46.1 GB) |
| 64 GB | Llama 3.2 90B Vision Instruct (57.8 GB), Llama 3.2 Vision 90B (57.8 GB), Qwen3-Coder-Next (80B-A3B MoE) (49.4 GB) |
同一引擎测算:Q4_K_M 量化下的总参数量、8K 上下文,不卸载到系统内存。
上下文长度与默认值
表格假设 8K 上下文。Ollama 的默认上下文由你的显存决定:低于 24 GiB 为 4K,24 至 48 GiB 为 32K,48 GiB 及以上为 256K(Ollama 文档、Fast.io)。更大的上下文需要更多内存,因此在 8K 下能放下的模型,在 128K 下可能加载失败。选择模型大小时请明确设置上下文。
Apple Silicon:统一内存
Apple Silicon 让 CPU 与 GPU 共享同一块内存,因此 64 GB 的 Mac 可以容纳 24 GB 显卡放不下的模型。macOS 默认不会把全部内存交给 GPU:上限大致是 36 GB 及以下机器内存的三分之二,以上则约为四分之三(ModelPiper、Apple Silicon LLM 指南)。可以通过 iogpu.wired_limit_mb 设置调高。其显存带宽低于高速独立显卡,因此同一模型的每秒 token 数更低。
放不下时会怎样
如果模型放不下,运行环境会把部分层卸载到系统内存。它仍然可以运行,但解码速度会降到 GPU 速度的一小部分,卸载的层越多就越慢。下载之前,请用 GPU 兼容性检查器查看你的具体显卡、模型和上下文的判定结果。
如果你总是碰到上限,下一步就是增加显存。请参阅 GPU 选购指南,按档位查看显卡的首发指导价和带日期的市场价。
常见问题
运行 70B 模型需要多少显存?
在 Q4_K_M 和 8K 上下文下约 46 GB,也就是两张 24 GB 显卡、一张 48 GB 工作站显卡,或统一内存 64 GB 及以上的 Mac。单张 24 GB 显卡放不下。
上下文长度如何影响显存?
通过 KV 缓存,它随 token 数线性增长。大小取决于模型架构,因此请使用计算器,而不是固定规则。将 KV 缓存量化为 q8_0 大约可将其减半。
模型放不进显存会怎样?
运行环境会把层卸载到系统内存,生成速度明显下降。偶尔使用还可以,但处理长文档会令人沮丧。
本地大模型可以同时使用两张 GPU 吗?
可以。llama.cpp 和 Ollama 都能把模型拆分到多张 GPU 上,因此两张 24 GB 显卡就是 48 GB 的显存池。显卡之间的带宽会影响速度,但并不需要 NVLink。
Q4 量化够用吗?
Q4_K_M 是常用的默认选择,对大多数任务表现良好,但这是一种权衡:Q5_K_M 或 Q8_0 等更高比特的格式质量损失更小,但占用更多内存。极低比特的格式在复杂推理上的退化更明显。
要估算某个具体模型,请使用VRAM 计算器:查看每种量化和上下文长度所需的显存。