Known-issues sheets for local language models Rev 0.1.0 · reviewed every 7 days

Model datasheet · K2-Horizon

K2-Horizon 7B

Does not run in stock llama.cpp, Ollama or LM Studio yet: support is an open pull request (llama.cpp #29535), so the GGUFs need IFM's own fork; the MLX build runs in stock mlx-lm with --trust-remote-code. IFM's own table is remarkable for the size (SWE-bench Verified 72.4, AIME 2026 90.2) and unconfirmed by anyone else. Named for its 7B backbone; with its two 1B embedding tables the file holds 9.0B parameters. It also caches heavily, about 18GB at 128K, and loses more to plain 4-bit than most models.

Vendor
IFM (MBZUAI)
Architecture
Dense · 9B
Context
524,288 tokens
License
Apache-2.0
Released
2026-09-01
Vision
No

→ GGUF (llama.cpp / LM Studio / Ollama) → MLX (Apple Silicon)

Architecture, from its own config.json

36 layers · 36 full attention

32 attention heads over 8 KV heads (GQA 4:1), head dim 128 · dense feed-forward · vocabulary 250,624

Where the memory goes: weights by band above, plus a KV cache of 1.1GB at 8K · 4.5GB at 32K · 18GB at 128K, plus the runtime's own working memory — dominated by the output projection over that vocabulary.

Inside one layer, from its own tensors

36 × full-attention layer

input_layernormattentionq_projkvsoftmax(q·kᵀ/√d) · v32 query heads over 8 key/valueheadso_projpost_attention_layernormfeed-forwardgate_proj · up_proj → down_proj12,288 wide

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 250,624 × 4,096, a final norm, and a separate output projection.

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.

§1 Characteristics by quantization band

Q2–Q3 — 2–3 bit

4.6GB weights · e.g. Q3_K_M + KV: 1.1GB at 8K · 4.5GB at 32K · 18GB at 128K
Math & reasoning 4/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-10-04

    Editorial derivation: four points down from bf16. Only community 3-bit files exist (NANI-Nithin), unmeasured, on a model already shown to be unusually sensitive at 4-bit.

Coding 3/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-10-04

    Editorial derivation: four points down from bf16, for the same reason.

Tool calling / agentic 3/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q3_K_M · aggregated · 2026-10-04

    Editorial derivation: three points down from bf16.

Q4–Q5 — 4–5 bit

5.6GB weights · e.g. Q4_K_M , mlx-4bit + KV: 1.1GB at 8K · 4.5GB at 32K · 18GB at 128K
Math & reasoning 6/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-10-04

    Editorial derivation: two points down rather than the usual one. mlx-community measured plain 4-bit at +18.6% WikiText-2 perplexity on this model, and 18-22% on all three dense K2-Horizon sizes, against +4.5% on the MoVA mixture; their mixed recipe still loses 4.5%. IFM's Q4_K_M has not been measured.

Coding 5/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-10-04

    Editorial derivation: two points down, for the same perplexity evidence.

Tool calling / agentic 5/10
data checked Oct 2026
Instruction following 5/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q4_K_M · aggregated · 2026-10-04

    Editorial derivation: carried; format compliance survives 4-bit better than arithmetic does.

Q6–Q8 — 6–8 bit

7.4GB weights · e.g. Q6_K , Q8_0 + KV: 1.1GB at 8K · 4.5GB at 32K · 18GB at 128K
Math & reasoning 8/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-10-04

    Editorial derivation: carried; mlx-community measured 8-bit at +0.2% WikiText-2 perplexity against bf16.

Coding 7/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-10-04

    Editorial derivation: carried from the full band.

Tool calling / agentic 6/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-10-04

    Editorial derivation: carried from the full band.

Instruction following 5/10
data checked Oct 2026
  • quant-degradation-community — editorial band derivation @ Q6_K · aggregated · 2026-10-04

    Editorial derivation: carried from the full band.

FP16 — full precision (fp16/bf16)

18GB weights · e.g. bf16 + KV: 1.1GB at 8K · 4.5GB at 32K · 18GB at 128K
Math & reasoning 8/10
data checked Oct 2026
  • vendor-model-card — AIME 2026 = 90.2 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench). HMMT Feb 2026 77.8 and GPQA Diamond 75.6 in the same column.

Coding 7/10
data checked Oct 2026
  • vendor-model-card — LiveCodeBench v6 = 72.7 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench).

  • vendor-model-card — SWE-bench Verified = 72.4 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench). mini-swe-agent at 256K context. The headline table at the top of the same card says 70.6, and Terminal-Bench 39.1 against 44.6 here; the two tables appear to come from different checkpoints. Absent from the Aider polyglot leaderboard as of 2026-10-04.

Tool calling / agentic 6/10
data checked Oct 2026
  • vendor-model-card — BFCL v4 = 67 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench). Run at temperature 0.01. tau3-Banking is in the Artificial Analysis-category table and is not recorded.

Instruction following 5/10
data checked Oct 2026
  • vendor-model-card — IFEval (loose) = 86.9 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench).

  • vendor-model-card — IFBench (loose) = 50.7 @ bf16 · vendor-reported · 2026-10-04

    From the card's anti-doom-loop table, "after" column, which IFM says is the released checkpoint. High reasoning effort, very large output budgets (500K tokens for AIME, IFEval, IFBench and LiveCodeBench). Well below Qwen3.5 9B's vendor 64.5 on the same benchmark; the weakest row on the card.

§2 Known issues & what fixes them

ISSUE-01 severe Q2–Q3 / Q4–Q5 / Q6–Q8 / FP16 · math, coding, tool-calling, long-context, factuality, instruction-following, creative-writing

Does not run in stock llama.cpp, Ollama or LM Studio yet. Support is an open pull request (llama.cpp #29535, opened 2026-09-27 and flagged by the project's PR checker as too large to review as-is), so a stock build refuses the GGUF with "does not recognise this GGUF's model architecture". IFM's fork works, but early builds of it also failed to load on Windows over a tokenizer regex. On a Mac, the mlx-community build does run in stock mlx-lm via --trust-remote-code, though mlx_lm.server does not yet parse its thinking tags or tool calls.

Fix
Update your runtime [partial]

Build IFM's llama.cpp fork (branch model/K2Horizon) from source, or on a Mac use the mlx-community build with --trust-remote-code. Once #29535 merges, an ordinary update fixes this.

No fix
No known fix — choose a different model

If you need it in Ollama or LM Studio today, or need parsed tool calls on the MLX path, there is no fix yet.

Evidence · 4 sources · community-consensus
ISSUE-02 moderate Q2–Q3 / Q4–Q5 / Q6–Q8 / FP16 · long-context, coding, math

All 36 layers cache, at 144KB per token: about 18GB at 128K, more than the bf16 weights. It is also a long thinker; even after IFM's anti-loop training its mean output is 3.2K tokens on IFEval and 15.6K on LiveCodeBench, and IFM evaluated with output budgets up to 500K. A 16GB machine runs out of cache long before it runs out of the advertised 512K context.

Fix
Prompt technique [partial]

Cap the context (e.g. --max-kv-size, or -c in llama.cpp), use an 8-bit KV cache where supported, and lower reasoning_effort when a long trace is not worth the memory.

Evidence · 2 sources · community-consensus
ISSUE-03 mild Q2–Q3 / Q4–Q5 / Q6–Q8 / FP16 · coding, math

Users on the model repo call the results "benchmaxxing" and report output not close to the claims, and the card's two tables disagree with each other (SWE-bench Verified 70.6 in one, 72.4 in the other). The name counts backbone parameters only; the file holds 9.0B. No independent run exists yet to settle it.

No fix
No known fix — choose a different model

Not a defect we can confirm. Treat the full-band scores as the vendor's claim until independent numbers land.

Evidence · 2 sources · anecdotal
ISSUE-04 mild Q2–Q3 / Q4–Q5 / Q6–Q8 / FP16 · long-context, factuality

IFM's benchmark table follows the Artificial Analysis Intelligence Index categories and fills every comparison column with Artificial Analysis data. This site does not republish Artificial Analysis numbers, so the AA-branded rows (AA-LCR, AA-Omniscience, tau3-Banking) are left out, and with them most of the evidence on tool calling, long context and factuality. Those cells are unrated, not bad. Absent from Aider polyglot and Vectara HHEM as of 2026-10-04.

No fix
No known fix — choose a different model

Not a defect but a gap. Revisit when IFM's technical report or independent runs on standard benchmarks land.

Evidence · 1 source · anecdotal
ISSUE-05 moderate Q2–Q3 / Q4–Q5 · math, coding, tool-calling

The dense K2-Horizon models lose unusually much to 4-bit. mlx-community measured plain 4-bit at +18.6% WikiText-2 perplexity against bf16 on this model (18-22% across all three dense sizes, against 4.5% on the MoVA mixture), and even its mixed recipe, MLP weights at 4-bit and everything else at 8-bit, still loses 4.5%. IFM's Q4_K_M and the community 3-bit files have not been measured, so the mid band is scored two points down on math and coding and the low band further still.

Fix
Move up a quant band [strong]

Q6_K is 7.4GB and Q8_0 9.6GB; mlx-community's 8-bit build measured +0.2%. On a 16GB machine either fits, and that is the band to run.

Fix
Code interpreter / calculator tool [partial]

Where arithmetic is what broke, hand it to a tool instead of the weights.

Evidence · 2 sources · anecdotal