你可能已经在本地跑过小模型,想往上一步换成二三十B这个量级的模型,结果第一道坎就是显卡:显存差一点就装不下,装下了又慢得没法用。这篇不报具体配置表,而是给你一套自己的估算顺序——先按量化口径算显存,再对照显卡档位,最后判断哪些场景下本地这条路本来就不该走。
你要是已经在本地跑过七八B这个量级的小模型,想往上换到二三十B,第一道坎基本都卡在显卡上。显存差一点就装不下,装下了又慢得没法用,甚至有人买完卡才发现根本塞不进去。这篇不给你一张死配置表,那种表换个月份就过期。给你的是自己的估算顺序:先按量化口径算显存,再对照显卡档位,最后判断哪些场景下本地这条路本来就不该走。
核心就一句话:别按参数量直接对显卡。二三十B的模型,权重只是显存占用的一部分,还有KV缓存和运行开销在后面等着。同一模型换个量化档位,占用能差出好几倍。所以顺序永远是先算显存、再选卡,而不是反过来。
先算显存,再谈显卡
显存大致分三块:权重、KV缓存、运行开销。权重只占其中一部分,很多人只算权重就下单,装进去一跑长文本就爆。判断顺序是:先估权重,再按你实际要用的上下文长度留KV缓存,最后加一块运行开销的余量,三者相加才是你要的显存下限。
- 权重随量化档位变化,同一模型换一档精度占用能差出好几倍,具体倍数到 /models/deploy 按模型算一遍
- 上下文越长、并发越多,KV缓存越吃显存,长文本场景必须单独留量,不能按短对话的账算
- 把「够不够装下」和「跑得快不快」分开判断,装得下不等于能用
- 留出余量,显存跑满到最后一格,稍微长一点的输入就会溢出,这一格不能省
显卡档位怎么对应到可用性
按显存把消费卡粗分几档,比记具体型号有用得多。分成四档看:装不下、勉强单卡跑、单卡舒服、必须多卡或分片。你落到哪一档,直接决定体验是「能出字」还是「等得心焦」。同一档位里卡的新旧也会影响出字速度,显存够但卡老旧时,瓶颈会从显存转到算力。
| 档位 | 典型体验 | 适合的做法 |
|---|---|---|
| 装不下 | 模型加不进去 | 降量化档位或换更大显存的卡 |
| 勉强单卡跑 | 能出字但等待明显 | 短输出、单并发,先接受慢 |
| 单卡舒服 | 出字速度可接受 | 日常开发、中等长度任务 |
| 必须多卡或分片 | 单卡顶不住 | 提前算卡数,接受调优成本 |
这张表里的档位边界不是固定的,同一张卡在不同量化档位和不同上下文长度下会上下跳。具体每张卡的显存和带宽到 /compute/gpus 对照,别凭型号里的数字猜,型号数字和实际可用显存经常不是一回事。
怎么验证自己落在哪档
- 估下限按你的量化档位加目标上下文长度,算出显存下限,写在纸上
- 比实际拿这张下限去 /compute/gpus 找对应的卡,看显存够不够,留没留余量
- 试真负载用你真要用的一段长输入跑一次,看会不会溢出、出字速度能不能忍
- 再定卡只有在真实负载下也稳,才算这张卡对你可用,纸面够不算数
量化档位怎么选才不亏质量
选档顺序是先按可用显存选,再回头验证效果,而不是先追高精度再发现装不下。低一档量化确实会掉一些质量,但掉多少跟任务强相关。抽取、分类、格式转换这类结构化任务,低一档往往够用;涉及长链推理和代码补全时更敏感,掉一点就容易体现在结果里。
- 先按可用显存选档,再拿一小批自己的真实任务样本对比,别只看通用说明
- 抽取、分类、格式转换类任务,低一档量化通常够用
- 长链推理、代码补全对量化更敏感,尽量留精度
- 量化方式之间也有差别,同样的位宽不同方案占用和损失不一样,到 /ai-dict/category/tech 对一遍术语
- 决定前用真实样本跑对照,通用评测说明只能当参考
量化不是越低位越省,是越低位越要拿你自己的任务去验。
什么时候别本地部署
本地部署有硬理由,也有纯属折腾的时候。判断标准就一条:数据是不是必须不出内网。如果只是偶尔用、用量不稳定,租卡或直接调接口的总成本通常低于配一台机器,还省掉调优和驱动这些杂事。这条判断标准到 /about 看口径说明再定。
| 你的情况 | 建议方向 | 原因 |
|---|---|---|
| 偶发使用、用量不稳 | 租卡或调接口 | 自购机器多数时间闲置 |
| 高并发或长上下文 | 先算卡数和分片 | 单卡家用方案会顶到天花板 |
| 延迟敏感、不想调优 | 按量调用 | 本地调优成本容易被低估 |
| 数据必须不出内网 | 本地才有硬理由 | 这是本地部署真正的护城河 |
还有一种容易被忽略的情况:你只是想在本地验证一个想法,跑通就行,对速度没要求。那勉强单卡跑那一档也能凑合,先别急着加卡。反过来,一旦要给别人用或者接进流程,稳定性和延迟要求上来,本地方案的账就要重新算。
下一步拿不准自己的机器落在哪档、或者想看看同等需求下不同方案的差别,先到导航页对着卡和场景过一遍,再决定是配机器还是换路子。→常见问题
只想跑一个二三十B的模型,最少要什么卡?
没有统一答案,取决于量化档位、上下文长度和你能接受的出字速度。稳妥做法是先按低一档量化估权重占用,再加上运行开销和 KV 缓存留量,看总显存落进哪一档。到 /models/deploy 按模型和精度算一遍,比记住某张卡的名字更靠谱。
显存刚好够,是不是就能用?
不一定。刚好够通常意味着没有余量给长上下文和并发,稍微加长输入就会溢出或触发卸载,速度断崖式下降。建议显存占用留出明显空闲再开工,否则你会一直在调参而不是在用模型。占用多少算正常可参考 /vram-usage-normal-check。
能不能用多张便宜卡凑出大显存?
可以但要接受额外复杂度:模型分片、卡间通信、驱动与框架适配都变成要处理的问题,出字速度也未必线性提升。只有单卡确实装不下、又不在意调优成本时才值得走这条路,先到 /compute/sizing 按模型算一遍卡数再决定。