Ollama 长上下文实测:26 万 context 真能用吗?11 万字读完要 34 分钟

fubaba AI工具评论35阅读模式
摘要

Ollama 26 万上下文实测(大海捞针法):1k 到 11 万字全部答对,记性没问题;但 11 万字光 prefill 要 34 分钟——长度涨 13 倍等待涨 180 倍,还要多吃 26G 显存。

先说结论:本地大模型的 26 万上下文,记性没问题,但你大概率等不起。大海捞针实测九次全中、11 万字照样捞得出来;可 11 万字光「读题」(prefill)就要 34 分钟——它不是一个日常功能,是一个理论上限。

本文要点(30 秒版)

  • 测法:把一句原文绝不可能出现的话埋进《红楼梦》,分别放开头/中间/结尾,问模型这句话说了什么
  • 记性:1 千/8 千/3 万字 × 三个位置九次全中;拉到 5 万、11 万字也中——「太长就记不住」不成立
  • 速度:8 千字读 11 秒,11 万字读 34 分钟。长度涨 13 倍,等待涨 180 倍,比 O(n²) 还陡(分段斜率 1.74→2.31→2.64)
  • 显存:上下文从 8 千开到 26 万,占用从 19G 涨到 45G——16G/32G 机器压根开不起
  • 实用建议:日常问答和读长文用 8 千~3 万上下文,最多等两分钟

▶ 视频直达:https://youtu.be/eiavvRc-rNE

怎么测的:大海捞针

把一句跟原文毫无关系的话(一条编造的显存设置记录,数字在《红楼梦》里绝不可能出现)埋进 90 万字的干草堆,分别埋在开头、中间、结尾,再问模型这句话说了什么。答得出来,就是真的读到了。

记性:九次全中

1 千字、8 千字、3 万字三个长度,乘以三个埋针位置,九次全部命中,一字不差。再把长度拉到 5 万字、11 万字,还是中。「太长了就记不住」这个说法,至少在这台机器上不成立。

问题出在另一头:等待时间

文本长度 读完(prefill)耗时
8 千字 11 秒
3 万字 2 分钟
5 万字 5 分半
11 万字 34 分钟

长度从 8 千涨到 11 万是 13 倍,等待从 11 秒涨到 34 分钟是 180 倍。我先怀疑是显存不够掉到 CPU(上一期就栽在这个坑里),于是把四个上下文档位挨个加载查了一遍:8k/45k/142k/262k 全部 100% 在 GPU 上。不是掉 CPU,就是注意力机制本身算得慢——而且逐段斜率 1.74→2.31→2.64 递增,比平方增长还糟。按趋势跑满 26 万字光读题要三个多小时,所以我没跑满:这不是偷懒,这本身就是答案。

还有一笔显存账

同一个模型,上下文开 8 千时占 19G,开到 26 万涨到 45G——多出来的 26G 全是上下文的存档(KV cache)。也就是说 16G、32G 的机器根本开不起这个上下文,不是慢,是压根装不下。

实用建议

日常问答、读一篇长文:8 千~3 万上下文,最多等两分钟,舒服。真想把几十万字整个塞进去:先问自己,愿不愿意为一个回答等半小时。上限不是显存说了算,是你的耐心说了算。

常见问题(FAQ)

大模型长上下文会记不住中间的内容吗?

本次实测(qwen3-30b-a3b + 大海捞针法)从 1 千字到 11 万字、开头/中间/结尾三个位置全部命中,记忆力不是瓶颈;瓶颈是 prefill 时间随长度超线性增长。

Ollama 上下文开大了为什么变慢?

注意力机制的计算开销随长度接近平方级增长,实测比平方还陡(分段斜率递增)。11 万字光读入就要 34 分钟,与是否掉到 CPU 无关(实测全程 100% GPU)。

长上下文要多少显存?

KV cache 与上下文长度成正比:26 万上下文比 8 千多吃约 26G。16G/32G 内存的机器无法开满,128G 机器可以开但不实用。


相关文章

更多真机实测视频,见 YouTube 频道「富爸爸大妙招」

文章末尾固定信息
weinxin
我的微信
微信扫一扫
fubaba
  • 本文由 发表于 2026年7月29日 11:59:37
  • 转载请务必保留本文链接:https://www.fubaba.org/43.html
评论  0  访客  0
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: