Pollard measured-sensitivity quantizations of Ling-3.0-tiny by inclusionAI

Built with Pollard Weights on llama.cpp build b10360 (48d22e295) โ€” the first build line with bailingmoe3 support (PR #26608, merged 2026โ€‘08โ€‘17). Use that build or newer to run these.

Original model: https://huggingface.co/inclusionAI/Ling-3.0-tiny

Model details

Parameter count ~7.9B total / ~1.7B active (MoE) โ€” listed as 8B
Architecture bailingmoe3 (128 experts/layer, topโ€‘8 + 1 shared, 24 layers)
Input support text
Speculative decoding no
imatrix yes โ€” details below, corpus + matrix included in this repo
Perplexity / KLD measured yes โ€” this is the whole point (see next section)

Uniform quants spend the same bits on every layer. Pollard measures how much crushing each tensor group actually costs โ€” KL-divergence, per layer โ€” then a KL-aware knapsack spends bits where they matter: more on the sensitive layers, fewer on the ones that don't care. Same weights, smarter bit allocation.

Why this over a uniform quant

Held-out KL-divergence vs a Q6_K reference (lower = closer to the full model), measured on the same held-out set for every build:

build size mean KL vs uniform
Ling-3.0-tiny Pollard 3.83 GB 0.1875 baseline
uniform IQ3 (interpolated to 3.83 GB) 3.83 GB โ‰ˆ 0.204 โ‰ˆ 8% higher KL
uniform IQ3_S 3.51 GB 0.2821 reference points
uniform IQ3_M 3.56 GB 0.2469 (bracket the curve)
uniform IQ4_XS 4.29 GB 0.1312 (bracket the curve)

At matched size the measured allocation sits below the uniform sizeโ†”KL curve. The measured mix: sensitive early layers get iq4_xs, most get iq3_s, the least-sensitive get iq2_s; every attention block stays q6_K/q5_K; embeddings/output stay q6_K; imatrix-uncovered MoE tensors are pinned so the aggressive base can't crash. (ffn sensitivity spread ~6ร—, attn spread ~16ร— across the 24 layers โ€” that variance is exactly what a uniform quant wastes. The full per-tensor map is in Ling-3.0-tiny-Pollard.tensor-types.txt.)

Prompt format

<role>SYSTEM</role>{system_prompt}
detailed thinking on<|role_end|><role>HUMAN</role>{prompt}<|role_end|><role>ASSISTANT</role>
<think>

Which file should I choose?

Pick the rung for your machine โ€” each is the same weights, sized to a different RAM budget by the measured allocation:

  • ~8 GB RAM / VRAM โ†’ IQ3_S (3.83 GB). The value pick: full model with room for context, and it beats same-size uniform IQ3 (table above). Recommended.
  • ~9 GB โ†’ IQ4_XS (4.64 GB). More fidelity โ€” the sensitive layers move up to iq4_xs.
  • ~11 GB โ†’ Q6_K (6.26 GB). Near-lossless; as close to the full model as a quant gets.
  • Want it even smaller than IQ3_S? Pollard loses to uniform at the extreme IQ2 floor for this model (the weights are too crushed for reallocation to help), so we don't ship one โ€” measure first, no claim before a number.

Available files

MoE speed: only ~1.7B of the 7.9B params are active per token, so even the big rungs stay fast on an Apple M4 (tg, llama.cpp Metal).

Filename Type Size M4 tok/s Description
Ling-3.0-tiny-Pollard-IQ3_S.gguf IQ3 measured mix (IQ2_Sโ†’IQ4_XS, q6_K embed/attn) 3.83 GB 75.1 Fits an ~8 GB box. Beats same-size uniform IQ3 (table above). Recommended.
Ling-3.0-tiny-Pollard-IQ4_XS.gguf IQ4_XS measured mix (q6_K/q5_K attn, q6_K embed) 4.64 GB 75.2 Fits an ~9 GB box. Higher fidelity โ€” sensitive layers pushed to iq4_xs.
Ling-3.0-tiny-Pollard-Q6_K.gguf Q5/Q6 measured mix (18L q6_K, 6L q5_K) 6.26 GB 66.9 Fits an ~11 GB box. Near-lossless โ€” maximum quality.
Ling-3.0-tiny-Pollard.imatrix importance matrix 44 MB โ€” The imatrix used, for anyone re-quantizing.
Ling-3.0-tiny-Pollard-calibration.txt calibration corpus ~1 MB โ€” The exact corpus the imatrix was computed on.
Ling-3.0-tiny-Pollard.tensor-types.txt allocation map 3 KB โ€” The measured per-tensor bit assignment.

Download a specific file

pip install -U "huggingface_hub[cli]"
hf download PollardWeights/Ling-3.0-tiny-Pollard \
  --include "Ling-3.0-tiny-Pollard-IQ3_S.gguf" --local-dir ./

How to run

These are standard GGUF and run with llama.cpp โ€” one-line install:

curl -LsSf https://llama.app/install.sh | sh
llama-server -hf PollardWeights/Ling-3.0-tiny-Pollard:IQ3_S

or with a local file:

llama-cli    -m Ling-3.0-tiny-Pollard-IQ3_S.gguf -ngl 99 -p "Explain MoE routing simply."
llama-server -m Ling-3.0-tiny-Pollard-IQ3_S.gguf -ngl 99      # OpenAI-compatible API + web UI at :8080

They also work in anything built on llama.cpp โ€” LM Studio, koboldcpp, ramalama, Jan, Text Generation WebUI, LoLLMs โ€” provided the build is recent enough to carry bailingmoe3 support (see top). If the app ships an older llama.cpp, update it first.

imatrix (calibration)

The importance matrix (Ling-3.0-tiny-Pollard.imatrix, included) was computed on a mixed-domain corpus (~245K tokens: encyclopedic prose, narrative prose, and source code) so the matrix sees every register the model serves. The exact corpus is included as Ling-3.0-tiny-Pollard-calibration.txt.

The imatrix guides IQ-quant quality; it does not decide the allocation โ€” the measured KL sensitivity profile does. That two-step separation (imatrix for quality, measured KL for where the bits go) is what Pollard adds on top of a standard imatrix quant.

Embed / output weights

Token-embedding and output tensors stay at q6_K, and every attention block is kept at q6_K/q5_K rather than dropped to the IQ base โ€” measured sensitivity says those tensors don't tolerate crushing, so the bits are spent there and clawed back from the least-sensitive FFN experts.

ARM / AVX

llama.cpp "repacks" weights into an interleaved layout at load time for faster inference on ARM and AVX machines โ€” no special file needed, online repacking covers these quants. The old Q4_0_4_4/4_8/8_8 variants are not required.

Notes

  • License: MIT, inherited from the base model.
  • KL was measured against a Q6_K reference on a held-out set (a memory-fit reference on a 16 GB machine; the reported number is the relative win vs a same-size uniform quant, which is what matters here).
  • Quantized, not fine-tuned โ€” identical weights, better bit allocation.

Credits

Downloads last month
76
GGUF
Model size
8B params
Architecture
bailingmoe3
Hardware compatibility
Log In to add your hardware

3-bit

4-bit

6-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for PollardWeights/Ling-3.0-tiny-Pollard

Quantized
(19)
this model