CPU跑大模型2026:无显卡机器能跑的模型、速度与配置
没有显卡、不想付云上账单,但确实想本地跑模型。CPU能跑什么、多快、什么场景值得,这篇给实数。
📜 目录
CPU跑大模型2026:无显卡机器能跑的模型、速度与配置
CPU 推理是真实可行的,但有明确边界。llama.cpp 和 Ollama 都能在没有显卡的机器上跑 GGUF 模型,能不能用取决于你要求多快。这篇给出速度量级、参数配置和场景判断。
一、为什么CPU能跑,以及为什么慢
解码阶段每生成一个 token,都要把模型权重从内存读一遍。GPU 靠几千个并发单元和高带宽显存把这件事做得很快;CPU 只有几十个核心,内存带宽也低一个数量级。所以 CPU 推理的速度基本由内存带宽 ÷ 权重体积决定,这也是为什么量化对 CPU 的收益特别直接:权重减半,理论上每秒 token 就能翻倍。
预填充阶段(处理你输入的提示词)是算力密集的,CPU 在这里更吃亏,长提示词的首次响应时间会明显更长。这就是为什么 CPU 跑"读长文档再回答"的体验远差于"短问题短回答"。
二、能跑什么,多快
下表是经验区间,具体数字取决于 CPU 代次、内存通道数和线程数,只能当量级参考:
| 模型规模 | 量化 | 内存需求 | 8核CPU速度 | 适合的活 |
|---|---|---|---|---|
| 1-3B | Q4 | 2-4GB | 30-60 token/秒 | 分类、抽取、改写、短摘要 |
| 7-8B | Q4 | 5-8GB | 8-15 token/秒 | 聊天、草稿、中等长度摘要 |
| 13-14B | Q4 | 9-12GB | 4-7 token/秒 | 质量更高但要有耐心 |
| 32B | Q4 | 20-24GB | 1-3 token/秒 | 只适合后台批处理 |
| 70B | Q4 | 40GB+ | 一秒不到一个 | 基本不现实 |
判断标准很简单:人阅读速度大约每秒 5-8 个字。7B Q4 在 10 token/秒左右,比人读得快,日常对话完全够。13B 掉到 5 token/秒,开始能感觉到等。32B 就变成"发出去等一会儿"的节奏。
三、三个杠杆,按收益排序
杠杆一:模型规模。这是影响最大的。7B 比 1.5B 慢四到六倍,而很多任务 1.5B 就能做对。先用小模型试,做不好再升级。
杠杆二:量化档位。CPU 场景一律用 Q4_K_M,理由见上:权重减半几乎等于速度翻倍,而质量损失在多数任务里可以接受。内存紧张时才考虑 Q3,不要为了省空间上 Q2。
杠杆三:线程与指令集。llama.cpp 会检测 AVX2/AVX512 并用上,编译时打开对应选项能明显提速。线程数设成物理核心数(不是超线程数)通常最优,设满了反而因为调度开销变慢。
四、两条命令起步:Ollama
ollama pull qwen3:1.5b
ollama run qwen3:1.5b
没有显卡时 Ollama 会自动走 CPU,不需要额外配置。想看速度,加 --verbose 会打印每秒 token 数。这种方式适合先验证"我的机器到底能跑什么"。
五、要控制参数就用 llama.cpp
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build && cmake --build build --config Release -j
./build/bin/llama-cli -m qwen3-8b-Q4_K_M.gguf -t 8 -c 4096 -n 256 -p "写一段产品介绍"
关键参数:
| 参数 | 作用 | CPU场景建议 |
|---|---|---|
-t |
线程数 | 物理核心数 |
-c |
上下文长度 | 按需,越大越吃内存 |
-ngl |
卸载到GPU的层数 | 纯CPU设0 |
--mlock |
锁定内存防止换页 | 内存充足时开启 |
-ctk/-ctv |
KV缓存量化类型 | 长上下文时设q8_0省内存 |
-n |
生成token上限 | 按回答长度设 |
--mlock 值得单独说:如果系统把模型页换到磁盘,速度会掉到无法使用,锁住内存能避免这个坑,代价是这部分内存不能被其他程序使用。
六、怎么自己测出真实速度
llama.cpp 输出里会给出 eval time 和 prompt eval time,用 token 数除一下就是每秒 token。测的时候固定三件事:同一个模型文件、同样的提示词长度、同样的线程数。换一个条件就不是对比。
建议测两组:短提示词(20 token 左右)看生成速度,长提示词(2000 token 左右)看预填充速度。后者往往才是真实体验的瓶颈。
七、什么场景CPU成立,什么场景不成立
成立:
- 隐私要求高,数据完全不能出机器。
- 夜间批处理,比如几百条文本分类、摘要,慢慢跑无所谓。
- 学习和实验,想搞懂模型怎么工作。
- 偶尔用一下,不值得为它买显卡。
不成立:
- 要多轮实时对话,每句话等十几秒会让人放弃。
- 长文档问答,预填充阶段慢到无法接受。
- 多用户并发,CPU 根本没有余量。
- 需要跑 32B 以上的模型。
八、让CPU跑得舒服的几个技巧
- 提示词写短。CPU 处理输入比生成输出更慢,减少无关上下文收益很大。
- 限制输出长度。
-n 256之类的上限能避免模型啰嗦。 - 用双通道内存。内存带宽直接决定速度,单条内存改双条经常能提速可观。
- 关掉其他重负载程序。CPU 场景没有余量,浏览器开几十个标签页影响很明显。
- 批处理放夜里。反正不着急,避开白天使用时段。
九、挑模型比挑硬件更重要
同样 8 核 CPU,不同模型的体验差很多。挑的时候看三件事:
参数量看有效参数。有些模型用混合专家结构,标称 30B 但每 token 只激活几亿参数,CPU 上跑得比同尺寸稠密模型快得多。看到标称参数大时先查清激活量。
分词效率影响中文速度。每秒 token 数相同,分词器切得细的模型实际出字更慢。中文场景优先选中文语料训练充分的模型,同一个句子 token 数能少一半。
指令遵循比知识量重要。CPU 场景跑的多是短任务,能不能按要求输出格式比背了多少知识更关键。小模型里挑指令遵循好的,比挑知识多的实用。
一个简单判断法:拿你真实的三条任务各跑一次,看输出能不能直接用。能直接用的小模型,比需要反复改提示词的大模型更值得占用你的 CPU。
常见问题
Q:没有独立显卡,核显有用吗?
A:部分集成显卡能被 llama.cpp 的加速后端利用,收益视型号而定,通常不如直接用 CPU 稳定。可以试 -ngl 逐层增加看是否提速。
Q:风扇狂转正常吗? A:正常。CPU 推理是持续满载,笔记本会明显发热并可能降频。长时间跑建议限制线程数或改善散热。
Q:内存够但速度很慢是怎么回事? A:先看是不是内存带宽不够(单通道)、是不是模型被换页到磁盘、是不是线程数设错。这三个原因占九成。
Q:CPU 能跑 70B 吗? A:能加载,但速度不到一秒一个 token,实际不可用。除非是离线跑一整夜的批处理任务。
注:速度数据为经验区间,随 CPU 型号、内存配置和软件版本变化,请以本机实测为准。
相关文章
本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。