Model datasheet · Ling 3.0
Ling 3.0 Tiny
1.3B active parameters out of 7.9B, and the vendor reports it running at 86-90 tokens/s on an M4 Pro laptop in about 8.3GB. Three linear-attention layers for every latent-attention one means only 6 of 24 layers cache, so long context is nearly free. Runtime support has caught up — llama.cpp has had a dedicated Ling 3.0 chat parser since 2026-09-19 (release b11057) — but looping reports remain open.
- Vendor
- inclusionAI (Ant Group)
- Architecture
- MoE · 7.9B total / ~1.3B active
- Context
- 131,072 tokens
- License
- MIT
- Released
- 2026-08-10
- Vision
- No
Architecture, from its own config.json
24 layers · 18 linear / recurrent · 6 full attention
Only 6 of 24 layers hold a cache at all, which is why its memory grows so much more slowly with context than its size suggests.
16 attention heads, multi-head latent attention — it caches one 576-wide compressed vector per layer instead of per-head keys and values, which is why its cache is small for its size · mixture of experts, 1.3B of 7.9B active per token across 8 experts · vocabulary 157,184
Where the memory goes: weights by band above, plus a KV cache of 54MB at 8K · 216MB at 32K · 864MB at 128K, plus the runtime's own working memory — dominated by the output projection over that vocabulary.
Inside one layer, from its own tensors
18 × linear / recurrent layer
6 × full-attention layer
The green line down the right of each half is the residual: it leaves the spine above the norm, skips the operation entirely and rejoins at the +. Where attention is drawn open, q, k and v are scaled to their real output widths — a model that shares key and value heads across many query heads shows one wide box beside two narrow ones.
Around the stack: an embedding of × , a final norm, and a separate output projection. The first 1 layer use a dense feed-forward instead of the experts.
On the norm names: despite what it is called, post_attention_layernorm is drawn after the residual add here, which is where this family applies it — it normalises the input to the feed-forward, not the output of attention. Models that carry a separate pre_feedforward_layernorm use it the other way, and are drawn that way.
Also in every block and not drawn, because their tensor names do not fix where they belong: A_log, b_proj, dt_bias, f_proj, g_proj, k_conv1d, o_norm, q_conv1d, v_conv1d, dense, expert_bias. Guessing an order is the one thing this diagram will not do.
§1 Characteristics by quantization band
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-09-12
Editorial derivation: two points down — and the file is only 1.1GB smaller than Q4_K_M.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-09-12
Editorial derivation: two points down.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-09-12
Editorial derivation: two points down, on top of a tool-call parser that is already the weak link.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-09-12
Editorial derivation: one point down. 1.3B active parameters is the least redundancy of any model on this site.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-09-12
Editorial derivation: one point down.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-09-12
Editorial derivation: one point down.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-09-12
Editorial derivation: carried; format compliance holds up better than arithmetic under 4-bit.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-09-12
Editorial derivation: carried from full precision. 6.8GB, so this is the band an 8GB machine runs if the context stays short.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-09-12
Editorial derivation: carried from full precision.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-09-12
Editorial derivation: carried from full precision.
data checked Sep 2026
- quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-09-12
Editorial derivation: carried from full precision.
FP16 — full precision (fp16/bf16)
15.8GB weights · e.g. bf16 + KV: 54MB at 8K · 216MB at 32K · 864MB at 128Kdata checked Sep 2026
- vendor-model-card — GPQA Diamond = 73.4 @ bf16 · vendor-reported · 2026-09-12
Vendor table, thinking mode. Behind Qwen3.5-9B (80.60) on the same table, ahead of Gemma-4-E4B (57.60) — on 1.3B active parameters.
- vendor-model-card — HMMT-Feb26 = 70.31 @ bf16 · vendor-reported · 2026-09-12
Competition math on the same table.
- vendor-model-card — IMO-AnswerBench = 71.03 @ bf16 · vendor-reported · 2026-09-12
Ahead of every comparison model inclusionAI lists, Qwen3.5-9B (70.00) included.
data checked Sep 2026
- vendor-model-card — Terminal-Bench 2.1 = 27.7 @ bf16 · vendor-reported · 2026-09-12
Agentic terminal work, ahead of Qwen3.5-4B (25.80) and behind Qwen3.5-9B (29.20).
- vendor-model-card — SciCode = 24.2 @ bf16 · vendor-reported · 2026-09-12
Scientific coding; Gemma-4-12B posts 38.20 on the same row.
- vendor-model-card — ArtifactsBench = 47.93 @ bf16 · vendor-reported · 2026-09-12
Front-end artifact generation.
data checked Sep 2026
- vendor-model-card — BFCL-v4 (FC) = 62.72 @ bf16 · vendor-reported · 2026-09-12
Function calling. Level with Qwen3.5-4B (62.47), behind Qwen3.5-9B (65.83). The site's tool-calling caveat for this model is the runtime parser, not the weights.
- vendor-model-card — TAU3-Banking-AA (value at source) @ bf16 · vendor-reported · 2026-09-12
Multi-turn agentic banking, reported by inclusionAI from an Artificial Analysis protocol; neither the value nor how it compares with other models is republished here.
data checked Sep 2026
- vendor-model-card — IFBench = 63.61 @ bf16 · vendor-reported · 2026-09-12
Ahead of Qwen3.5-4B (52.00), behind Gemma-4-12B (73.50).
- vendor-model-card — Multi-IF = 83.15 @ bf16 · vendor-reported · 2026-09-12
Multi-turn instruction following, ahead of Qwen3.5-9B (83.03).
§2 Known issues & what fixes them
llama.cpp runs the architecture (BailingMoeV3 support merged 2026-08-05), and since 2026-09-19 it has a dedicated Ling 3.0 chat parser (PR #28682, first release b11057). Before that, the generic parser could emit a tool call without a reasoning terminator, which broke agent loops; a user on that report confirmed tool calling is 'much better now' after the merge, though the issue is still technically open. json_schema support in the new parser followed on 2026-10-03 (#29813). Builds older than b11057 still have the old behaviour.
Use llama.cpp b11057 or later for the dedicated parser, and a build from 2026-10-03 or later if you rely on json_schema-constrained output.
Evidence · 3 sources · community-consensus
- chat: add dedicated Ling 3.0 (Bailing V3) parser (merged 2026-09-19, release b11057) (github, 2026-10-04)
- Eval bug: Bailing V3 (Ling 3.0) autoparser lacks a <tool_call> reasoning terminator (user confirms improvement 2026-09-24) (github, 2026-10-04)
- chat : honor json_schema in Ling 3.0 parser (merged 2026-10-03) (github, 2026-10-04)
Quantized builds have been reported degenerating into repeated slashes, users on the model's own discussion board report it looping indefinitely on logic problems with reasoning on or off, and a separate report has Vulkan on Intel Arc producing garbage depending on how many layers sit on the GPU. All open as of 2026-10-04.
Keep llama.cpp current; if you are on Vulkan, try moving layers off the GPU to confirm it is the backend rather than the weights.
Reports cluster on the smaller quants — Q6_K is 6.8GB and worth trying first.
Evidence · 3 sources · community-consensus
- Eval bug: ling 3 tiny (BailingMoeV3 architecture) repeating slashes (github, 2026-10-04)
- Eval bug: Vulkan on Intel Arc 140V outputs garbage with layers on GPU (github, 2026-10-04)
- Great model, BUT it loops! (open; sampler-setting suggestions in replies, conflicting) (other, 2026-10-04)
Every score here comes from inclusionAI's own table, and the two rows that would say most about knowledge and long context are Artificial Analysis measurements whose values this site does not republish. Factuality and long context are therefore unrated rather than estimated.
Not a defect — a caveat. The blanks are honest; they are not zeros.
Evidence · 1 source · anecdotal
- Ling-3.0-tiny model card (vendor benchmark table) (vendor, 2026-09-12)
1.3B active parameters is the thinnest compute path on this site. Three-bit takes about two points off every quant-sensitive dimension to save 1.1GB against Q4_K_M — which fits anywhere the 3-bit file does.
Q4_K_M at 4.9GB, or Q6_K at 6.8GB. Neither asks much more of the machine.
Where arithmetic broke, a calculator tool recovers more than a quant change would — if the tool-call path is working.
Evidence · 2 sources · community-consensus
- llama.cpp quantization quality discussions (sparse MoE KLD tables) (github, 2026-09-12)
- Ling-3.0-tiny quant sizes: Q3_K_M 3.79GB against Q4_K_M 4.92GB (other, 2026-09-12)