快速结论:该报错发生在 Ollama 加载 clef-flash(qwen35 架构)后,向 /v1/systemone 发起首个前向推理时,服务端直接返回 500 与 Clef: non-finite logit;这是上游已修复的重复缺陷,优先升级到包含 #18777 修复的 Ollama 版本,而不是在本地调参。
适用环境:已确认复现环境为 Windows 11、AMD Ryzen AI 9 HX 370、Radeon 890M(iGPU,约 27 GB UMA);Ollama 0.35.1(stable)与 0.40.0-rc6;ROCm 7.1(gfx1150)、Vulkan 以及纯 CPU(OLLAMA_IGPU_ENABLE=0、OLLAMA_VULKAN=false)均可复现;KV cache 使用 f16 与 q4_0;通过 Modelfile 设置 num_ctx 4096。维护者确认环境为 Windows 11 / Radeon 890M,ROCm + Vulkan + CPU。
最快修复方案:暂无确认的一步修复方案;Issue 结论为该问题与 #18769 重复,并由 #18777 修复。可优先尝试升级到已包含 #18777 的 Ollama 构建版本。
注意事项:Issue 中未给出可直接安装的具体版本号,升级目标需以官方包含 #18777 的发布为准;升级后需重新验证模型能否完成首个前向推理,因为首次修复操作在该讨论链中并未由报告者回帖确认。
问题场景
用户在 Ollama 中加载 clef-flash 模型,调用 /v1/systemone 接口执行结构化判断任务。即使用模型页面给出的最小示例(state 为 "Hello World"、一个 noul 类型问题、task.n_tokens = 147),也会在第一次前向推理时失败。模型本身可以正常加载,报错出现在首个 forward pass。该问题在 CPU、ROCm 与 Vulkan 三种后端,以及 f16 / q4_0 两种 KV cache 类型下都出现。
报错原文
slot operator(): id 0 | task 0 | new prompt, n_ctx_slot = 4096, n_keep = 0, task.n_tokens = 147
srv send_error: task id = 0, error: Clef: non-finite logit
[GIN] | 500 | POST "/v1/systemone"
原因分析
维护者将该 Issue 判定为 #18769 的重复问题,并说明由 #18777 修复,因此根因属于 Ollama 对该模型架构(日志中显示 general.architecture = qwen35)推理路径的代码缺陷,而非用户配置或硬件算力不足。日志中的以下两条信息属于加载阶段提示,本身不直接解释 non-finite logit:
llama_init_from_model: model default pooling_type is [-1], but [0] was specified
init: embeddings required but some input tokens were not marked as outputs -> overriding
另外,报告者指出无法真正关闭 Flash Attention:设置 OLLAMA_FLASH_ATTENTION=false 后命令行仍出现 --flash-attn auto,因此无法通过非 FA 路径来做对照测试。这是一条未被修复验证覆盖的旁证,只能作为可能原因参考。
环境排查
- Ollama 版本:已确认 0.35.1(stable)与 0.40.0-rc6 均会复现;确认当前版本是否早于包含 #18777 的构建。
- 模型架构:日志中
llama_model_loader显示general.architecture str = qwen35,模型名为 Clef Flash。 - 后端:ROCm 7.1(gfx1150)、Vulkan、纯 CPU 三种路径均需确认是否同样失败。
- 环境变量:
OLLAMA_IGPU_ENABLE、OLLAMA_VULKAN、OLLAMA_FLASH_ATTENTION、OLLAMA_KV_CACHE_TYPE的实际生效值。 - KV cache 类型:f16 与 q4_0 两种都已确认复现。
- 上下文长度:默认
num_ctx 16384会触发另一问题——n_ubatch被设为n_ctx(尽管指定了-ub 512),计算缓冲区增长到 3.3–4 GB;报告者的绕过方法是设置PARAMETER num_ctx 4096。 - 系统内存:iGPU 场景下应核对实际可用内存与日志内存分解,报告中出现“报告约 18 GB 空闲但分配失败、unaccounted 为负”的现象。
解决步骤
- 记录当前 Ollama 版本,确认排查对象确实是 0.35.1(stable)或 0.40.0-rc6 这类尚未包含 #18777 的构建。
- 参照 Issue 结论,将 Ollama 升级到已包含 #18777 修复的版本;这是该讨论链中唯一被维护者确认的修复方向。
- 如果暂时无法升级,可先按报告者的做法在 Modelfile 中加入
PARAMETER num_ctx 4096,用于规避默认num_ctx 16384导致的 iGPU 计算缓冲区膨胀与分配失败问题;该绕过方法仅解决显存分配问题,不能确认能消除non-finite logit。 - 排查过程中不要依赖
OLLAMA_FLASH_ATTENTION=false来构造非 FA 对照,因为报告者实测该设置仍会以--flash-attn auto生效。 - 如需判断是否为后端相关,可在 CPU(
OLLAMA_IGPU_ENABLE=0、OLLAMA_VULKAN=false)与 ROCm / Vulkan 下分别用同一最小请求复现,但预期三种后端表现一致。
验证方法
升级到包含 #18777 的构建后,重启 Ollama 服务,使用 Issue 中的最小请求重新调用 POST /v1/systemone,确认不再返回 HTTP 500 与 Clef: non-finite logit,且首个前向推理能够正常完成。若同时保留了 PARAMETER num_ctx 4096,还需单独确认默认 num_ctx 16384 下的计算缓冲区分配行为是否也恢复。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


