快速结论:这个报错通常出现在用 ollama launch claude 启动 Claude Code 并长时间对话、上下文逐渐填满时。Claude Code 侧按自己的默认上下文窗口做统计,而 Ollama 服务端实际只加载了更小的 num_ctx,两者不一致,服务端就会截断输入。优先排查 Ollama 服务端的上下文长度配置。
适用环境:Issue 中确认的复现环境为 macOS + Apple GPU/CPU,Ollama version is 0.18.2,使用 ollama launch claude --model qwen3.5:0.8b。评论中还提到了 Linux kernel 7.0.0-28、Ollama 0.32.15(cloud 模型)与 Claude Code v2.1.266 的复现记录,但属于后续补充信息。
最快修复方案:暂无确认的一步修复方案。Issue 中给出的方向是为 Ollama 服务端设置 OLLAMA_CONTEXT_LENGTH 环境变量来指定上下文窗口大小;但维护者同时指出 Claude Code 使用的 Anthropic API 不支持设置上下文大小,因此该做法是否能完全对齐 200k 上下文并未在本 Issue 中得到验证。
注意事项:不要把上下文长度只当成 Claude Code 侧的显示问题;真正导致 truncating input prompt 的是服务端加载窗口小于对话长度。通过环境变量调大上下文会显著增加显存/内存占用,在 Apple 统一内存或小显存设备上可能导致加载失败或性能下降。此外,评论区记录了 ollama launch 会对模型 ID 做归一化、剥离 [1m] 后缀的行为,这会绕过 Claude Code 的窗口标记,属于相关但尚未在本 Issue 中定论的问题。
问题场景
用户通过 ollama launch claude --model qwen3.5:0.8b 启动 Claude Code,并在会话里持续对话以填满上下文窗口。用 ollama ps 可以看到模型已加载,CONTEXT 列为 32768;但 Claude Code 的 /context 面板按 200k tokens 计算用量,显示已用 24k/200k。两者不一致,最终在请求进入 Ollama 时触发输入截断。
报错原文
ollama launch claude - wrong model context window
❯ ollama ps
NAME ID SIZE PROCESSOR CONTEXT UNTIL
qwen3.5:0.8b f3817196d142 2.8 GB 100% GPU 32768 4 minutes from now
/context
⎿ Context Usage
⛀ ⛁ ⛁ ⛀ ⛀ qwen3.5:0.8b · 24k/200k tokens (12%)
...
⛁ Messages: 32.5k tokens (16.3%)
⛶ Free space: 111k (55.4%)
⛝ Autocompact buffer: 33k tokens (16.5%)
time=2026-03-22T18:17:43.929Z level=WARN source=runner.go:187 msg="truncating input prompt" limit=32768 prompt=55247 keep=4 new=32768
原因分析
最可能的原因是 Claude Code 与 Ollama 对“上下文窗口”的认知不一致。Ollama 实际为 qwen3.5:0.8b 加载的 num_ctx 是 32768(见 ollama ps 的 CONTEXT 列和 limit=32768),而 Claude Code 按它自己的默认窗口(200k)来做用量统计和自动压缩,于是会话累积的 prompt 达到 55247 tokens,超过服务端的 32768,触发 truncating input prompt。
Issue 评论中,维护者给出的方向是为 Ollama 服务端设置 OLLAMA_CONTEXT_LENGTH 环境变量;同时指出 Claude Code 使用的 Anthropic API 本身不支持设置上下文大小,也就是说客户端无法把期望窗口传给服务端。另有评论质疑为何 ollama launch 不自动处理这一差异,这一点在 Issue 中没有得到实现层面的确认。
环境排查
- 确认 Ollama 版本:Issue 复现为
ollama version is 0.18.2。 - 确认操作系统与硬件:macOS,Apple GPU / Apple CPU。
- 确认 Ollama 服务端是否设置了
OLLAMA_CONTEXT_LENGTH,以及服务端是否重启以使其生效。 - 用
ollama ps查看模型实际加载的 CONTEXT 值,与 Claude Code/context显示的窗口上限是否一致。 - 确认 Claude Code 版本;后续评论中的复现记录使用 Claude Code v2.1.266。
- 确认是否通过
ollama launch启动、模型 ID 是否带有[1m]之类的窗口后缀,以及~/.ollama/config.json中integrations.claude.models的值是否被改写。
解决步骤
- 先用
ollama ps记录模型当前加载的 CONTEXT 值,确认问题发生时服务端窗口确实小于会话长度。 - 按 FAQ 的说明,在 Ollama 服务端环境中设置
OLLAMA_CONTEXT_LENGTH,将其调整为与预期上下文窗口一致的值。这是 Issue 评论中给出的方向,可优先尝试。 - 重启 Ollama 服务,使新的服务端环境变量生效。
- 重新执行
ollama launch claude --model qwen3.5:0.8b发起会话。 - 再次用
ollama ps检查 CONTEXT 列是否已变为目标值;如果仍是 32768,说明环境变量未作用到实际服务进程。 - 如果目标是让 Claude Code 使用 1M 窗口,注意
ollama launch会剥离模型 ID 的[1m]后缀并改写~/.ollama/config.json(见评论中的复现),需要在每次启动后手动在会话内用/model切换,或在启动前做好配置备份。
验证方法
重新加载模型后运行 ollama ps,确认 CONTEXT 不再是 32768,而是预期的窗口大小;然后在 Claude Code 中继续对话使累计 tokens 超过原 32768 上限,观察 Ollama 日志中是否还出现 msg="truncating input prompt"。如果不再出现该 WARN,且 /context 显示的窗口上限与 ollama ps 的 CONTEXT 一致,说明配置已对齐。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


