Eval bug: GGML_ASSERT(n_inputs < GGML_SCHED_MAX_SPLIT_INPUTS) failed on DS v4 Flash on single GPU

该报错 GGML_ASSERT(n_inputs 通常在使用大上下文(如 -c 65536 )加载 DeepSeek-V4-Flash GGUF 模型时触发,优先排查当前 llama.cpp 版本是否合并了 PR #25585(首次坏提交 0dc74e332)。

快速结论:该报错 GGML_ASSERT(n_inputs < GGML_SCHED_MAX_SPLIT_INPUTS) failed 通常在使用大上下文(如 -c 65536)加载 DeepSeek-V4-Flash GGUF 模型时触发,优先排查当前 llama.cpp 版本是否合并了 PR #25585(首次坏提交 0dc74e332)。

适用环境:llama.cpp commit e8f19cc0a(version 10055),GNU 13.3.0 for Linux x86_64,CUDA 后端,单 GPU(RTX 3060 12GB),模型为 unsloth/DeepSeek-V4-Flash-GGUF 的 IQ2_M 量化版本。

最快修复方案:在启动命令中添加 --no-op-offload 参数可绕过该断言,例如:./build/bin/llama-cli -c 65536 --no-op-offload -m 模型路径.gguf可优先尝试)。或者回退到不包含 PR #25585 的版本(如 b2dd28a3b)以避免回归。

注意事项:--no-op-offload 会禁用操作级 offload,可能导致推理速度下降(尤其是 CPU 层较多的场景)。该修复仅为临时绕过,问题根源仍在 PR #25585 引入的调度器分割逻辑中。

问题场景

用户在单 GPU(RTX 3060 12GB)上使用 llama-cli 加载 DeepSeek-V4-Flash GGUF 模型,并指定 -c 65536(65536 token 上下文)时程序崩溃,输出断言失败。将上下文缩小到 -c 32768 可正常启动。

报错原文

GGML_ASSERT(n_inputs < GGML_SCHED_MAX_SPLIT_INPUTS) failed

原因分析

该断言位于 ggml-backend.cpp:1367ggml_backend_sched_split_graph 函数中。PR #25585(commit 0dc74e332)对 flash attention 和 high-computation(HC)操作的调度方式进行了修改,强制这些操作使用设备后端(GPU),即使模型曾有一部分层被 offload 到 CPU。当上下文较大时,计算图复杂,导致分割后的输入数量(n_inputs)超过预定义的 GGML_SCHED_MAX_SPLIT_INPUTS 上限,触发断言。用户通过 revert 该 PR 确认了回归。

环境排查

  • 确认 llama.cpp 版本是否等于或晚于 commit 0dc74e332(version 10055)
  • 确认模型为 DeepSeek-V4-Flash 量化版本(特别是 IQ2_M)
  • 确认上下文大小 -c 参数:低于 32768 是否正常,高于 32768 是否必现
  • 确认是否只有单 GPU,是否启用 CUDA 后端
  • 可收集 GGML_SCHED_DEBUG=2 环境变量下的日志,观察 graph 分割细节(日志可达 65MB)

解决步骤

  1. 临时绕过:在启动命令中添加 --no-op-offload 参数,例如:
    ./build/bin/llama-cli -c 65536 --no-op-offload -m models/custom/Deepseek-V4-Flash/DeepSeek-V4-Flash-UD-IQ2_M-00001-of-00003.gguf
  2. 版本回退:如果不需要新特性,可使用 commit b2dd28a3b 之前的版本(或直接 revert 0dc74e332)进行编译。
  3. 等待上游修复:跟踪 Issue #25800 或相关 PR 的更新。

验证方法

执行上述解决步骤后,运行相同的命令(./build/bin/llama-cli -c 65536 -m 模型路径)不再出现断言退出,同时模型正常加载并开始推理,即验证成功。

参考来源

ggml-org/llama.cpp #25800

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 15458

发表回复

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