Quantization can drop or disable part of a model without failing. The pack loads, serves, and answers correctly — while a component its card says it preserved is either gone, or present and ignored by the runtime. Nothing errors. Nothing in the logs says so.
This reads a published repo's metadata only: safetensors
headers and config.json, fetched over ranged requests, from
your browser. No weights are downloaded, so a 27 GB pack costs a few
kilobytes to check.
vision_tower, Qwen calls it
visual, and the documented default names the former.
from_pretrained does not materialise tensors the AutoModel
class has no slot for, so an auxiliary head living inside the checkpoint
never reaches the quantizer and never reaches the artifact.
The first two are observations. The third is a prediction, and says so where it appears.
Every format declares exclusions differently, and reading one convention into
another is how a checker invents verdicts. A bare mtp covers a
whole head under AWQ's substring rule and covers nothing under
compressed-tensors' exact-match rule.
| Format | Field | How an entry matches |
|---|---|---|
| compressed-tensors | ignore | exact equality, or a re: regex |
| awq | modules_to_not_convert | plain substring |
| gptq | dynamic | ordered, first match wins; -: excludes |
| bitsandbytes | llm_int8_skip_modules | exact path component, or a cumulative prefix |
| modelopt | exclude_modules | exact, substring, or an fnmatch glob |
| auto-round | extra_config | per-module bits ≥ 16, or a block allowlist |
Every regex above resolves through Python's re.match, which
anchors at the start: re:layers.0 does not match
mtp.layers.0…. These were read out of vLLM's source, not from
documentation. A format not on the list is reported as not
checked rather than assumed healthy — a checker that cannot tell
"healthy" from "not checked" is not a checker.