4G 显存老显卡怎么跑模型:llama.cpp 加 GGUF 配置

手头有块 4G 显存的老显卡,好几年前买的,平时就看看视频。今年想在家跑个本地大模型,一开始图省事装 Ollama,拉了个 7B 的模型,一跑就报 CUDA out of memory,显存直接爆掉。后来换 llama.cpp 配 GGUF 量化模型,才算在这张卡上把模型跑起来。这篇把配置和踩的坑写下来。

先说我为什么换到 llama.cpp

Ollama 用起来确实省事,但它默认把整个模型往显存里塞,4G 显存根本装不下 7B 的模型。llama.cpp 不一样,它有个参数能控制模型前多少层放显卡、剩下的层放内存让 CPU 算,这一下就把显存门槛降下来了。这个思路叫层卸载,是我这次能跑起来的关键。

模型格式也得换。Ollama 拉的是它自己封装好的包,llama.cpp 只认 GGUF 格式。GGUF 是一种量化格式,把模型权重按精度压一压,体积小很多,牺牲一点效果换能跑。

GGUF 去哪下

Hugging Face 上搜模型名加 GGUF 就行,比如 Qwen2.5-7B-Instruct-GGUF。挑文件看名字里的量化档位,Q4_K_M 是 4bit 量化里比较平衡的一档,一般先拿它。7B 的 Q4_K_M 文件大概 4.4G 左右,光文件就快顶满显存了,所以层卸载必须用上。

我最后用的是 3B 的模型,Q4_K_M 文件 1.9G 左右,能整段塞进显存,速度也顺。7B 的留着在更强的机器上跑。

关键参数 -ngl

llama.cpp 跑模型的命令长这样:

llama-cli -m qwen2.5-3b-instruct-q4_k_m.gguf -ngl 20

-m 指模型文件,-ngl 是 gpu layers 的缩写,意思是把模型前 20 层放到显卡上算。这个数字没有标准答案,得看模型总层数和你的显存。我的土办法是先给个大值,跑一下看任务管理器里显存占用,爆了就减半,稳定了再往上加。

3B 的模型 4G 显存能全放下,我把 -ngl 给到 99,让它能放多少放多少。7B 的话 -ngl 给 10 到 15 之间,剩下的层 CPU 扛。

CPU 和 GPU 混着跑的速度

层卸载以后,显卡算一部分,CPU 算一部分,速度肯定不如全显存,但比全 CPU 强太多。3B 模型在这张卡上每秒大概能出十几个字,日常问答够用。7B 的只能放几层进显存,大部分靠 CPU,出字慢不少,我试了一次就换回 3B 了。

哪些模型别碰

我踩完坑的结论是,4G 显存这张卡:

  1. 14B 以上的别想,量化完也好几个 G,显存放不下
  2. 7B 的能跑但吃力,适合不急的场合
  3. 3B 和更小的模型是主力,Q4 量化档就够
  4. 别开太长的上下文,显存会跟着涨

还有个坑是编译。llama.cpp 官网给的是源码,Windows 上要自己编译,命令是 cmake -B build -DGGML_CUDA=ON 然后 cmake --build build --config Release -j。嫌麻烦就去 GitHub releases 页面下现成的 Windows 包,里面带 CUDA 支持,解压就能用,我最后就是用的现成包。

这篇是本地大模型系列里讲低配显卡怎么跑的一篇。前面写过怎么给模型套网页界面、怎么按显存选模型,后面打算写量化档位 Q4 和 Q8 的差别、还有 Ollama 部署报错的排查,都是自己踩过的。想看后续的可以关注账号。

相关推荐
诺伦1 天前
24GB 显存跑 740 亿参数 Agent:Nemotron 3.5 Bolt 本地部署工程拆解 | RiseClaw玄策
模型量化·ai agent·本地大模型·大模型部署·nvidia nemotron
骑着蜗牛撵大象3271 天前
N1 小盒子撑起 AI 接口中转层:New-API 接管本地 Ollama,用 Token 分发模型能力
docker·llama·1024程序员节·api网关·飞牛nas·new-api
言简行敏,心静致远。3 天前
llama-bench使用说明及其应用
llama
AI_Gump3 天前
模型篇|llama.cpp 推理引擎深度解读:从一人练手到 LLM 端侧的事实标准
llama·llama.cpp
一级新生3 天前
Ollama 是什么、干什么用、怎么用
人工智能·dify·ollama·本地大模型
星野云联AIoT技术洞察5 天前
设备手册离线 RAG:先管住版本、权限和引文,再谈本地大模型
llama·rag·设备告警·rag知识库·设备运维·设备离线·设备手册
智码看视界7 天前
开源大模型追踪:TurboQuant量化指南:128K上下文不再爆显存,KV缓存3-bit免重训
google·开源大模型·llama.cpp·显存优化·长上下文推理·turboquant·本地部署 开源大模型
晚风吹北巷7 天前
基于LLama-Factory 进行Lora微调
llama
你都会上树?8 天前
本地部署模型 llama + opencode + Qwen3.8-32b
llama
夜瞬8 天前
从零微调 Qwen3-8B:基于 LoRA 与 LLaMA-Factory 打造专属 AI 编程助教
人工智能·python·llama