排错 · 性能
显存/内存不够跑本地模型?6 个办法
本地跑模型报 CUDA out of memory,是显存不够,模型加载到一半崩;没有这句报错、系统卡死或进程被杀的,是内存不够。模型跑着的时候用 ollama ps 看 PROCESSOR 一栏,能看到它落在 GPU 还是 CPU 上。
- 发布日期
- 更新日期

怎么看是显存不够还是内存不够,6 个办法各治哪一种
- 显存(VRAM)不够:报
CUDA out of memory这类,模型主要靠显卡跑时是这个。 - 内存(RAM)不够:系统卡死、进程被杀,纯 CPU 跑或模型有一部分落在内存上时会遇到。Linux 上进程被系统杀掉时,终端里只打出一个
Killed,用sudo dmesg | grep -i "out of memory"能查到被杀的是哪个进程。
1. 用量化版本(显存、内存都省)
量化就是把模型权重从高精度压成低精度(比如 4-bit),体积和显存占用随之下降,代价是质量有损失。优先找模型的 4-bit / 8-bit 量化版本来跑,质量敏感的活用 8-bit 折中。在 Ollama 的模型库里,每个模型的标签列表都标了文件大小,例如 gemma4:12b-it-qat 是 7.2GB,按这个数对着自己的显存挑。
2. 换一个更小的模型(显存、内存都省)
参数量小一档,显存需求就低一截。先用小模型把龙虾的工具调用、任务流程跑通,确认配置没问题,再按显存余量往上加。哪些模型适合当龙虾大脑,可参考 哪个模型当大脑更合适。
3. 让模型的一部分落到内存上跑(治显存,要多占内存)
这一条是先看、再决定,不用另外设什么。显存只差一点时,模型可以一部分在显卡上、一部分在 CPU 和内存上算,原本加载不进去的模型能跑起来,代价是速度变慢、内存占得更多。实际分成了多少,跑 ollama ps 看 PROCESSOR 一栏,全在显卡上时显示 100% GPU。Ollama 文档的建议是尽量别让模型落到 CPU 上:差得不多、速度还能接受的可以先这样用;慢到没法用,就回到第 1、2 条,换量化版或小一号的模型。
4. 上下文别停在默认的 4k,也别开到显存放不下(显存、内存都相关)
上下文越长越占内存,这一项往上往下都有界。Ollama 的上下文长度文档对智能体、联网搜索、编程工具这类任务的建议是至少 64000 tokens;Ollama 自己的默认值按显存分档:不到 24 GiB 是 4k,24–48 GiB 是 32k,48 GiB 及以上是 256k。OpenClaw 这边,官方 Ollama 进阶配置文档写的是:自动发现的本地模型,请求里的上下文通常限在 32,768(模型原生窗口更小就按更小的)。
- 看。跑
ollama ps看两栏:CONTEXT 是实际分到的上下文长度,PROCESSOR 是模型落在 GPU 还是 CPU 上。 - 判断是谁定的。看来源,不看数值(24–48 GiB 显存的机器上,Ollama 自己的默认值也是 32k)。模型是 OpenClaw 自动发现的,或者模型条目里写了
contextTokens或params.num_ctx,上下文长度就是 OpenClaw 在请求里带过去的,Ollama 那边的设置管不到。模型条目是手写的、这两项都没写,才由 Ollama 自己定,CONTEXT 会停在它的默认值(比如 4k)。 - 改。由 Ollama 定的,在 Ollama 应用的设置里拖滑块,或者启动时写
OLLAMA_CONTEXT_LENGTH=64000 ollama serve。由 OpenClaw 定的,改 OpenClaw 配置里这个模型的条目,把contextTokens和params.num_ctx一起改,数值别超过这台机器放得下的范围。条目在models.providers.ollama.models[]里;自动发现的模型没有手写条目,可以改写agents.defaults.models["ollama/<模型名>"].params.num_ctx。两处都写了的,以前一处为准。
开大以后放不下,就换小一号的型号,或者改接云端 API。各档显存对应哪一级的本地模型,见 跑 OpenClaw 要什么配置。
5. 给系统加 swap(只治内存,应急用)
内存不够导致进程被系统杀掉时,加一块 swap(虚拟内存)能兜底,让进程不至于直接被杀。swap 比内存慢很多,靠它跑会卡,只当应急。Linux 上加 swap 的五条命令在 云服务器部署教程里装环境的那一节,本机的 Linux 也能照用。
6. 跑模型前关掉别的程序(显存、内存都腾得出来)
浏览器开几十个标签、别的吃显存的程序还开着,都会挤占资源。跑本地模型前关掉用不到的程序,尤其是其他占显卡的应用。
6 个办法都试过还放不下:改接云端 API 或租云服务器
量化加小模型都跑不顺的机器,有两个去处。一是接闭源 API:模型不在本机算,OpenClaw 官方安装页的系统要求里没有内存、显卡要求,按用量付费,见 接 API 还是本地模型。二是租云服务器跑龙虾和模型,见 在云服务器上装。想先评估自己这台机器够不够,看 硬件要求。