每生成一个新 token,模型需要"看"所有之前的 token(Attention 机制)。KV Cache 把每个 token 的 Key/Value 矩阵缓存起来,避免重复计算。
缓存示意(绿=已缓存,橙=新 token):
KV Cache 大小 ≈
2 × layers × heads × head_dim × context_len × fp16
Qwen3.6-27B 每 token 约
256 KB(FP16)。KV Cache 和模型权重
分开占用显存,随上下文线性增长。
⚠️ Ollama 默认只给 2048 tokens——而 Qwen3.6-27B 训练支持 262K,差了 128 倍。默认 2048 只约 3,000 中文字 / 60 行代码,粘贴一篇新闻就溢出。Ollama 静默截断不报错,模型基于不完整信息回答而你不知道。解决:Modelfile 加 PARAMETER num_ctx 32768(见 §6 教程)。
KV Cache 显存开销(Qwen3.6-27B Q4_K_M 实测):
| 上下文 |
KV Cache |
总 VRAM |
24GB? |
≈ 中文 |
≈ 代码 |
| 2K (Ollama默认) | ~0.1 GB | 16.2 GB | ✅ | ~3,000 字 | ~60 行 |
| 8K | ~0.5 GB | 16.6 GB | ✅ | ~12,000 字 | ~240 行 |
| 32K | 1.96 GB | 18.1 GB | ✅ | ~48,000 字 | ~960 行 |
| 64K | 3.96 GB | 20.1 GB | ✅ 刚好 | ~96,000 字 ≈1本短篇 | ~1,900 行 |
| 131K | 7.9 GB | 24.0 GB | ⚠️ 打满 | ~196,000 字 ≈1本长篇 | ~3,900 行 |
| 262K | 16.9 GB | 33.0 GB | ❌ 超出 | ~393,000 字 ≈2-3本书 | ~7,800 行 |
换算:1 token ≈ 1.5 中文字 ≈ 0.75 英文单词 ≈ 3-4 代码字符(Qwen 分词器对中文高效)
各设备推荐上下文上限(Qwen3.6-27B Q4_K_M):
| 设备 |
可用显存 |
推荐 num_ctx |
首字延迟 |
生成速度 |
| 8GB GPU (RTX 3060/4070 Laptop) | ~7 GB | 4K-8K ⚠️ | <1s | ~30 tok/s |
| RTX 5090 D v2 24GB | ~23 GB | 131K ✅ | ~2 min | ~44 tok/s |
| RTX 5090 D v2(日常推荐) | ~23 GB | 32K ✅ | ~14s | ~54 tok/s |
| RX 7900 XTX 24GB | ~23 GB | ~86K | ~2.4 min | ~28 tok/s |
| Y9000P RTX5090 移动 | ~22 GB | ~65K | ~1.6 min | ~29 tok/s |
| MacBook Pro M5 Max 128GB | ~120 GB | 262K+ | ~7+ min | ~38 tok/s |
| Mac Studio M3 Ultra 256GB | ~240 GB | 262K 随便用 | ~5 min | ~51 tok/s |
| DGX Spark 128GB | ~120 GB | 262K(但很慢) | ~24+ min | ~17 tok/s |
💡 KV Cache 量化省钱大招:把 KV Cache 从 FP16 量化到 8-bit(llama.cpp:--cache-type-k q8_0 --cache-type-v q8_0),显存占用直接砍半。32K 从 1.96 GB → 0.98 GB,131K 从 7.9 GB → 3.95 GB。Qwen 3.6 系列对 KV 量化容忍度很高,Q8_0 几乎无感,推荐所有用户开启。
上下文溢出后果:
| 场景 |
溢出行为 |
你感知到什么 |
| Ollama 超 num_ctx | 静默截断,最早 token 被丢 | 模型"忘记"开头,没有任何报错 |
| llama.cpp 显存不够 | OOM 崩溃 / offload CPU | 闪退,或速度暴跌 10-50× |
| 显存刚好打满 | 勉强运行,显存竞争 | 随机卡顿、黑屏、系统卡死 |
| 超过模型训练上下文 | 能运行但质量退化 | 幻觉、重复、遗忘中间内容 |
| 多轮对话越聊越慢 | KV Cache 累积 | 首字延迟从 1s 涨到几十秒 |
实用建议:日常聊天设 8K-16K;代码辅助设 32K;长文档分析设 64K-131K;RAG/Agent 设 64K+。
绝对不要在 24GB 显卡上对 27B 模型设 262K——必崩。