快速结论:当 Ollama 通过 llama-server 加载 GPT-OSS 并启用 OLLAMA_KV_CACHE_TYPE=q8_0 时,服务进程会 core dump 崩溃。优先排查 KV 缓存类型是否为 q8_0、Ollama 版本是否为回归版本,再尝试更换 KV 缓存类型或回退版本。
适用环境:Issue 中出现的信息:Ollama 0.30.6 与 0.30.11 容器镜像(docker.io/ollama/ollama),通过 Podman + systemd 运行,运行环境为 Linux x86_64(GNU 11.2.1),CUDA 后端,显卡 NVIDIA GeForce RTX 4080 Laptop GPU(compute capability 8.9,11876 MiB VRAM)。用户报告 0.24.0 不复现。
最快修复方案:暂无确认的一步修复方案。Issue 中仅确认 0.24.0 不复现该崩溃,维护者建议的排查手段包括:临时取消 OLLAMA_KV_CACHE_TYPE=q8_0(改回默认 KV 缓存类型)、尝试 OLLAMA_FLASH_ATTENTION=1 观察行为是否变化。这些均属于排查方向,未被标记为正式修复。
注意事项:Issue 被标记为 bug, needs more info,且原报告提到该问题此前在 PR #11685 修复、但相关代码在 commit 19e6796 中被删除;这一回归结论来自报告人自述,维护者未能复现。因此以上方案属于“可优先尝试”,不代表已确认修复;开启 Flash Attention 或更换 KV 缓存类型可能影响模型精度或显存占用。
问题场景
用户在 Linux + Podman/systemd 环境中以容器方式运行 Ollama(镜像 0.30.6,后续又用 0.30.11 复测),通过 llama-server 加载 GPT-OSS 模型进行推理。服务端配置了 OLLAMA_KV_CACHE_TYPE=q8_0,并开启了 Vulkan(OLLAMA_VULKAN:true)与 CUDA 后端。在服务启动并发现 GPU、随后加载模型/推理的过程中,Ollama 的 llama-server 子进程发生 core dump,导致 Ollama 服务崩溃。
报错原文
llama-server core dumps when serving GPT-OSS with OLLAMA_KV_CACHE_TYPE=q8_0
server config env="map[... OLLAMA_KV_CACHE_TYPE:q8_0 ... OLLAMA_VULKAN:true ...]"
Listening on [::]:11434 (version 0.30.6)
level=INFO source=runner.go:60 msg="discovering available GPUs..."
running llama-server for discovery
load_backend: loaded CUDA backend from /usr/lib/ollama/cuda_v12/libggml-cuda.so
Available devices:
CUDA0: NVIDIA GeForce RTX 4080 Laptop GPU (11876 MiB, 11657 MiB free)
ggml_cuda_init: found 1 CUDA devices (Total VRAM: 11876 MiB):
Device 0: NVIDIA GeForce RTX 4080 Laptop GPU, compute capability 8.9, VMM: yes, VRAM: 11876 MiB
原因分析
可能原因:GPT-OSS 模型与 OLLAMA_KV_CACHE_TYPE=q8_0 组合时,llama-server 在 KV 缓存量化路径上触发了崩溃。报告人指出该问题此前已在 PR #11685 中被修复,但相关代码在 commit 19e6796 中被删除,从而出现回归——这一点是报告人的判断,未在讨论中被维护者确认。维护者在 0.30.6/后续版本中无法复现,因此也不排除与具体硬件(RTX 4080 Laptop、compute capability 8.9)、CUDA 后端版本或 Flash Attention 关闭状态相关的可能性。
环境排查
- 确认 Ollama 版本:Issue 中出现 0.30.6 与 0.30.11;用户对比的旧版本为 0.24.0(不复现)。
- 确认是否设置了
OLLAMA_KV_CACHE_TYPE=q8_0。 - 确认
OLLAMA_FLASH_ATTENTION状态:Issue 日志中为false,维护者建议尝试设为 1 对比行为。 - 确认
OLLAMA_DEBUG级别(可用OLLAMA_DEBUG=2或日志中出现的 DEBUG-4 收集更多信息)。 - 确认运行方式:Podman 容器 + systemd,镜像 docker.io/ollama/ollama。
- 确认 GPU 与后端:NVIDIA GeForce RTX 4080 Laptop GPU(compute capability 8.9)、CUDA 后端(cuda_v12)、日志中同时出现
OLLAMA_VULKAN:true。 - 确认系统架构与工具链:Linux x86_64,llama-server build 1 (51eae8cfc),GNU 11.2.1。
解决步骤
- 先复现并确认崩溃条件:在保持
OLLAMA_KV_CACHE_TYPE=q8_0的前提下加载 GPT-OSS,确认llama-server是否 core dump。 - 可优先尝试:临时移除或更改
OLLAMA_KV_CACHE_TYPE(使用默认 KV 缓存类型),观察是否仍崩溃。这是隔离 KV 缓存量化因素的直接方式,但 Issue 未给出事后确认结果。 - 可优先尝试:按维护者建议设置
OLLAMA_FLASH_ATTENTION=1重启服务,再跑一次同样的 GPT-OSS 推理,比较行为是否变化。 - 提高日志级别:按维护者建议以
OLLAMA_DEBUG=2重启服务并再次测试,收集llama-server崩溃前后的完整日志。 - 版本对比:报告人已确认 0.24.0 不复现,可据此回退到旧版本作为临时规避,或升级到 0.30.6 之后的版本验证是否已修复。
- 由于 Issue 已关闭且标记为 needs more info,若仍复现,建议在原始 Issue 中补充上述调试日志与硬件版本信息。
验证方法
在相同硬件、相同镜像、相同 GPT-OSS 模型和相同 OLLAMA_KV_CACHE_TYPE 设置下重新启动 Ollama 服务并发起一次推理请求,确认 llama-server 进程不再 core dump,Ollama 服务保持运行且请求正常返回。可通过 OLLAMA_DEBUG=2 检查日志中是否仍出现崩溃堆栈或进程异常退出信息。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


