参考:抖音 老林说
前言 🔖
很多人兴冲冲在自己电脑本地跑大模型,看着网上大佬晒出来的配置参数,感觉自己硬件也不差,可真正上手干活的时候,处处受显存的制约。
你有没有遇到过这种现实困境:
明明硬件配置看着挺合理,但显存永远不够用。
- 想要更长的上下文,能读长文档、记忆几十轮对话,就不得不降低模型量化精度;
- 想要保住模型输出质量,少幻觉、推理靠谱,生成速度就会变得很慢;
- 想要跑的飞快,响应丝滑,又只能换更小参数的模型。
不知道大家有没有发现啊,在大部分真实的在本地部署大模型,用来工作生产的个人用户里面。
长上下文、高模型精度、高推理速度,三件好事很难同时全部拉满。 这就是本地部署大模型的不可能三角。提升任意一项,就会挤压另外两项的资源。

一、显存蛋糕,就这么大 🔖

本地大模型吃显存主要就两块,再加上少量额外开销:
- 模型权重 50%:就是模型本身的参数,量化精度越高、模型参数量越大,这部分占显存就越高。
- KV‑Cache 40%:对话上下文缓存,上下文越长,这块显存会线性暴涨。这也是绝大多数人踩坑的根源。你输入的文档、历史聊天记录全部存在这里。上下文翻倍,KV‑Cache 占用显存几乎同步翻倍。
- 其他开销 10%:推理中间临时张量、框架运行时等零碎占用。
💡核心真相:你的显存就是一块固定大小蛋糕。模型权重吃掉一半,KV‑Cache 跟着上下文疯狂膨胀。
如果你要长上下文,KV‑Cache 就要多分蛋糕,只能压榨模型权重,只能降量化;如果你要高精度大模型,权重占满显存,KV‑Cache 就放不下,上下文直接变短。
二、三个指标,分清楚谁重要谁次要 🔖
在资源有限的情况下,提升任何一项,都会挤压另外两项,那有没有什么好的解决办法呢?在大部分的本地部署大模型的实际应用场景里面,这三个指标是可以有一个明确的优先级的。
🔹 第一优先级:上下文长度,决定「能不能干活」
上下文是业务的命根子。
如果你做 RAG 知识库、读取长文档、多轮持续对话,上下文是底线。 一旦上下文溢出,模型直接失忆、报错、功能直接瘫痪,业务直接失效。
实操策略:优先锁死业务必须的上下文下限。 宁可把量化精度从 Q8 降到 Q4,也要保证 32K 甚至 128K 上下文。 先保证 “功能能用”,再去谈质量和速度。
举个例子:32G 显存强行硬跑 70B 大模型。千万不要为塞下大模型,把量化压到 Q2。
Q2 量化质量暴跌,70B 的壳子,输出效果还不如一个 12B 的 Q4 高精度小模型,又慢又蠢。宁可把上下文压缩到 8K,也不要掉到 Q2 及以下。
🔹 第二优先级:模型精度,决定「干得好不好」
如果你的场景是写代码、复杂逻辑推理、结构化数据抽取,模型精度就变得很关键。
量化等级参考:
FP16/BF16:全量基准,完整原始质量Q8_K_M(8bit):接近无损,几乎看不出和原版差距Q4_K_M(4bit):保留原版约 95% 能力,个人本地部署黄金底线Q3 / Q2:智商断崖下跌,逻辑断裂、频繁答非所问,尽量避开
✅普通用户记住铁律:量化尽量死守 Q4_K_M 这条底线。 Q4 已经用很小的质量损失,换来了显存大幅降低;再往低走,模型会直接变笨。
要是想跑掉模型实在是大了一点呢,就比如说你用32G的5090,硬想塞进一个70B的模型,这个时候啊,宁可把上下文压到8K,也不要用去Q2,不然你拿这个一个70B到壳子,干出来的活呢,还不如一个12B的高精度小模型,它会又慢又笨。

🔹 第三优先级:生成速度,决定「用着爽不爽」

速度代表 token/s,就是每秒输出多少个字。
参考人类体感阈值:
- 20 token/s:流畅,阅读体验舒服
- 15 token/s:及格线
- 低于 15 token/s:明显卡顿,等待感很强
绝大多数日常文档处理、写稿场景,速度放到 15token/s 以上就够用,不必疯狂追求极速。
只有实时对话机器人、高频 API 替代这类场景,才需要把速度放到第一位。
显存吃紧跑不到 15token/s 的时候,优先换更小参数量的模型,而不是继续疯狂降精度、砍上下文。
小尺寸高精度模型,往往比大尺寸低精度模型,跑得更快、脑子也更聪明。
三、资源有限,本地部署三步实操法 🔖
普通个人用户,显存捉襟见肘,直接照着这套流程配置:
🔹 Step1:先定模型尺寸
模型大小 + 20%余量 ≤ 你的可用显存大小- 预留 20% 显存余量,防止 KV‑Cache、临时显存突发暴涨,避免爆显存崩溃。
🔹 Step2:锁死量化档位
- 显存紧张首选:
Q4_K_M; - 显存资源宽裕:上
Q8_K_M; 用极小的性能损耗换取显存大幅下降,不要碰 Q3/Q2。
🔹 Step3:动态调优进一步榨干显存
- 使用 llama.cpp、vLLM 等推理引擎:
- 开启
--rope‑scaling做上下文扩展; - 打开8‑bit KV Cache,进一步压缩 KV 缓存显存开销。
🔹 写在最后,总结
本地部署大模型,普通人的核心不是追求极致参数,而是追求稳定够用的平衡。
- 上下文优先保业务可用,是底线;
- 量化底线守住 Q4_K_M,不要无脑疯狂压量化;
- 速度 15token/s 以上就够用,不够优先换小模型,不要牺牲前两项。
什么都想要,最后往往什么都得不到。