qwen3next: layer 2 missing attn_qkv/attn_gate projections

该报错通常出现在 Ollama 加载 qwen3next/Qwen3-Coder-Next 一段 GGUF 模型时,尤其当模型以多个分片文件(shard)分发、而 Ollama 只读取了首个分片导致后续层的张量未加载。优先确认 Ollama 版本,并检查 GGUF 是否为多文件分片。

快速结论:该报错通常出现在 Ollama 加载 qwen3next/Qwen3-Coder-Next 一段 GGUF 模型时,尤其当模型以多个分片文件(shard)分发、而 Ollama 只读取了首个分片导致后续层的张量未加载。优先确认 Ollama 版本,并检查 GGUF 是否为多文件分片。

适用环境:Issue 中确认的信息有限:工具为 Ollama;报告者使用 Ollama 0.20.2(另有用户报告 0.21.0);模型为 qwen3-coder-next;其他操作系统、Python、CUDA、显卡驱动等未明确给出。线程中提到显卡为 AMD Radeon(TM) 890M Graphics 与 NVIDIA GeForce RTX 5090 Laptop GPU,但未确认驱动与 CUDA 版本。

最快修复方案:暂无确认的一步修复方案。Issue 中经报告者验证可绕过报错的方法是:使用 llama-gguf-split --merge 将 4 个分片 GGUF 合并为单个文件后再加载;另有维护者与用户反馈升级到较新 Ollama 版本后该报错消失。

注意事项:合并后的 Q5_K_M 文件约 57GB,超出可用显存,报告者反馈推理非常慢(大部分层回落到 CPU/RAM);改用更小量化(如 Q4_K_M)可能改善速度,但合并步骤仍需执行。此外,线程中“Ollama 已原生支持 PyTorch 分片模型”的说法被维护者否认,分片 GGUF 的原生支持仍是待办事项。

问题场景

用户在 Ollama 中加载 qwen3next 架构的 qwen3-coder-next 模型时,模型初始化阶段直接失败,返回 500 Internal Server Error。该模型以 4 个分片 GGUF 文件(-00001-of-00004.gguf 至 -00004-of-00004.gguf)分发。后续评论中还出现了同类报错但层号不同的情况(layer 40、layer 64),分别出现在 Ollama 0.21.0 以及从 Ollama 库/Hugging Face 获取的其他量化版本上。

报错原文

500 Internal Server Error: failed to initialize model: qwen3next: layer 2 missing attn_qkv/attn_gate projections

原因分析

可能原因(分片加载导致):根据线程中的调查结论,Ollama 在加载分片 GGUF 时只从第一个分片文件读取张量元数据,属于 layer 2 的张量存放在后续分片中因而从未被加载。执行 Validate() 时,该层的 gdn.SSMIn、gdn.SSMQKV、gdn.SSMQKVGate 均为 nil,从而触发此报错。需要说明的是,报告者本人注明该解释由 LLM 辅助整理,但维护者确认了“文件需要合并”这一结论。

可能原因(版本相关):线程最后提到该报错来自 Ollama 自身 qwen3next 模型代码,只存在于 v0.17.0 至 v0.24.0 的发布中,v0.30.0 起该代码已移除。另有用户报告从 Ollama 库获取的 IQ3_M 模型需要 MTP 支持,而 MTP 尚未进入主线 Ollama,同样可能表现为类似错误(层号不同)。

环境排查

  • 用 ollama -v 确认 Ollama 版本:若为 0.24.0 或更早,现有 qwen3next 代码路径会命中此报错。
  • 检查模型 GGUF 文件是否为多分片:查看是否存在 *-00001-of-0000N.gguf 这类命名。
  • 确认模型来源:Ollama 库、Hugging Face 或其他渠道,以及是否标注需要 MTP 等尚未合并到主线的特性。
  • 确认量化级别与文件大小,并与显卡显存对照;线程中 RTX 5090 移动版 AdapterRAM 显示约 4GB,明显低于 57GB 合并文件所需显存,需评估实际可用显存与内存。
  • 操作系统、CUDA、驱动版本在 Issue 中未提供,排查时可一并记录以便定位其他环境因素。

解决步骤

  1. 先执行 ollama -v。若版本为 0.24.0 或更早,优先升级 Ollama 后重试加载(可优先尝试,依据为线程中升级后报错消失的反馈)。
  2. 若升级后仍报错,确认模型是否为多分片 GGUF;若是,使用 llama-gguf-split --merge 将 4 个分片合并为单个 GGUF 文件,再让 Ollama 加载合并文件(报告者验证可绕过报错并成功加载)。
  3. 合并后若推理极慢,评估换成更小的量化版本(如 Q4_K_M)以降低文件体积和显存需求;注意分片问题仍可能存在,合并步骤不可省略。
  4. 若模型来自第三方且标注依赖 MTP 等未合并特性,需要等待 Ollama 主线支持,或改选不依赖该特性的模型。
  5. 若目标是本地代码辅助,可参考线程建议评估更小、可在单卡显存内完整运行的模型(例如 qwen3.5 系列的 27B 量化版本),以避开超大模型分片与显存不足问题;该建议为维护者经验,未在本 Issue 中作为修复方案验证。

验证方法

重新发起模型加载或短对话请求,确认不再出现 failed to initialize model: qwen3next: layer N missing attn_qkv/attn_gate projections 的 500 错误,且模型能返回正常响应。若合并后加载成功但推理缓慢,可通过观察 GPU/CPU 占用,确认是否因显存不足导致大量层回落到 CPU/RAM。

参考来源

ollama/ollama #15372

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 33950

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注