What version of the llama.cpp is this GGUF for? Error on latest.

#1
by randomly-generated-username - opened

Hello! I have an error "llama_model_load: error loading model: missing tensor 'blk.0.ssm_dt.bias'" on the latest llama.cpp (b10075, for MS Windows) and older (b8981 and b9360, for MS Windows) too. On what versions of llama.cpp this GGUF was tested and works, or it's for ik_llama only?

Same blk.0.ssm_dt.bias error here β€” I reproduced it and dug into it. Two layers to
the problem; the first is fixable, the second is the real blocker.

1. ssm_dt.bias is a tensor-NAME issue (fixable, but not the whole story).
This GGUF stores the SSM delta-time bias as blk.N.ssm_dt (no .bias suffix), while
every loader looks for blk.N.ssm_dt.bias. It's the same tensor β€” shape [32] F32,
identical to the stock Qwen3.6-35B-A3B-Q4_K_M (lmstudio-community), which loads fine.
I renamed the 30 blk.*.ssm_dt β†’ blk.*.ssm_dt.bias in the header (tensor data copied
verbatim, no re-quantization). That clears the ssm_dt.bias error β€” but the model
still won't load. Next error:

check_tensor_dims: tensor 'blk.3.attn_k.weight' has wrong shape;
expected 2048, 0, got 2048, 512, 1, 1

2. The real blocker: this is a non-mainline conversion.
Beyond the tensor name, this GGUF carries metadata the published loaders don't
understand: a full qwen35moe.vision.* block, rope.mrope_interleaved=1,
ssm.v_head_reordered=1, feed_forward_length=0. The core arch params
(head_count=16, head_count_kv=2, key_length=256, block_count=40, expert_count=256, …)
are byte-for-byte identical to the stock base model β€” but these extra keys route the
loader down a multimodal/reordered path that computes attn_k's expected shape with
a 0 dimension β†’ fatal mismatch.

I tested the renamed GGUF on:

  • ghcr.io/ggml-org/llama.cpp:full-cuda β€” both the ~2-week-old build and latest
    (which includes PR #19468, the merged Qwen3.5 support that loads the stock base fine)
  • ghcr.io/ikawrakow/ik-llama-cpp:cu12-full

All three fail with the same attn_k shape error.

The README points to "the Qwen3.5 loader from PR #19435", but that PR ("Qwen3.5 dense
and MoE support, no vision") was merged Feb 8 2026 and reverted the next day
(PR #19453), superseded by #19468. #19435 explicitly has no vision and doesn't mention
mrope_interleaved/v_head_reordered β€” so it isn't the converter that produced this
file. This GGUF was converted by some other fork, whose matching loader is not
published as an image.

The crucial missing part: the exact runtime this GGUF was tested on β€” repo +
commit, or a prebuilt image/tag. Without it, the file is unusable on any published
build. @rafw007 β€” could you share the build you validated with?

Alternatively, a re-export with standard tensor names (ssm_dt.bias) and standard
qwen35moe metadata (no vision block / reorder flags) would load on current mainline
llama.cpp β€” and since the README states the weights are stock Qwen3.6-35B-A3B, that
re-export would be functionally identical to the base model + the documented no-think
sampling preset.

(For anyone who just wants the coder behavior: the README is upfront that it's
stock weights + a system prompt + sampling config, no fine-tune. So stock
Qwen3.6-35B-A3B + no-think + --jinja + the documented sampling gets you there on
any working build β€” no need for this specific GGUF.)

Sign up or log in to comment