本地跑模型要多少显存:别抄表,用官方口径自己算
搜”本地跑大模型要多少显存”,会看到大量整齐的对照表。我为了写这篇专门去核实这些数字的出处,结果是:一个官方来源都没找到。
具体核实结果如下,我把它摆在最前面,因为这决定了这篇文章为什么这么写:
- Ollama 官方 README 与快速入门全文没有任何 RAM/VRAM 要求的表述。
- Ollama 官方仓库目前仍有 issue 在请求增加显存计算器功能,说明官方自己没有提供分档数字。
- llama.cpp 官方 README 只说明支持 1.5 到 8 bit 的整数量化,没有给出任何显存对照表。
- Hugging Face 的量化类型说明页自己注明该表可能不准确。
所以:那些广为流传的表格,最好的情况是某人在某台机器上的实测,最坏的情况是互相抄。
一、唯一能找到的官方口径
Hugging Face Accelerate 提供了一个官方显存估算工具 accelerate estimate-memory。它的文档给出了每个参数占多少字节:
二、自己算:三步
举个例子怎么算
假设你想跑一个 7B 模型,用 4 bit 量化:
- 参数量 = 7B = 70 亿
- int4 每参数约 0.125,那么加载显存 ≈ 70 亿 × 0.125 字节
- 再按官方说的加约 20% 推理开销
- 另外还要给上下文(KV cache)留空间,上下文越长这部分越大
注意我没有在这里写出最终数字。不是卖关子——是因为第 4 步的上下文占用取决于你的实际使用,写死一个数就又变成了一张不负责任的表。这个算法你自己跑一遍,比记住一个数字有用得多。
三、量化格式:GGUF 到底是什么
GGUF 官方文档的定义:
GGUF is a file format for storing models for inference with GGML and executors based on GGML.
(GGUF 是一种用于存储模型的文件格式,供 GGML 及基于 GGML 的执行器做推理使用。)
它是 GGML / GGMF / GGJT 的后继格式,特点是单个文件内包含加载模型所需的全部信息——权重、元数据、词表都在里面。Hugging Face 官方的补充描述强调它”为快速加载和保存模型做了优化”,并且”同时编码张量和一套标准化的元数据”。
四、Q4_K_M 里的字母是什么意思
老实说:官方没有定义。
我查了 GGUF 规范与 Hugging Face 的相关文档,两者都只列出量化类型表,没有解释后缀字母的含义,HF 页面还自己注明该表可能不准确。llama.cpp 的 README 也只列出支持 1.5/2/3/4/5/6/8 bit 整数量化,用于”更快推理和更低内存占用”。
能确认的只有一点:Q4_K_M 是 K 系列 4 bit 量化的一种变体。至于 K 和 M 分别代表什么,社区有各种说法,但没有官方出处,本文不转述。
五、实操上更靠谱的做法
与其算,不如试。但要按顺序试:
六、结论
这篇没有给你一张表,是刻意的。一张来路不明的显存对照表,会让你在选硬件时做出一个花几千块的决定。与其信它,不如花十分钟按官方口径自己算一遍,再用最小配置实测一次。
本文事实来源
下列结论均来自官方页面,核实日期 2026-08-12。厂商页面随时会改,看到本文超过三个月未复核时,请以官方页面为准。
- Hugging Face Accelerate 官方 · 模型显存估算 — https://huggingface.co/docs/accelerate/usage_guides/model_size_estimator
- GGUF 官方格式文档 — https://github.com/ggml-org/ggml/blob/master/docs/gguf.md
- Hugging Face 官方 · GGUF 说明 — https://huggingface.co/docs/hub/gguf
- llama.cpp 官方仓库 — https://github.com/ggml-org/llama.cpp