MAGI 1.0

Paper: Where the Bits Go (GEHIRNS, 2026), in preparation

Introduction

magi-1.0 is Qwen3.5-4B in 1.80 GiB. It keeps 96% of the full model's benchmark score in 30% of the GPU memory and decodes 2.7× faster, with no training: the bits are simply placed where the model needs them.

magi-1.0 stores Qwen/Qwen3.5-4B in a mixture of standard GGUF quantization types. Each tensor class gets the precision that its measured sensitivity calls for: more bits for the small attention and DeltaNet projections that break easily, fewer for the large FFN matrices that tolerate them. The weights are Qwen's own. The file averages 3.65 bits per weight and runs unmodified in llama.cpp and Ollama.

magi-1.0 + q8 KV against Qwen3.5-4B BF16: 3.4x less GPU memory, 96% of the benchmark score kept, 2.7x faster decoding, 3.0x capability per GiB

Capability density

Capability density: magi-1.0 + q8 KV 0.893, magi-1.0 0.800, magi-beta-1 0.771, Q4_K_M 0.703, Q2_K 0.675, BF16 0.294

Capability density is ID = −log₂(1 − score) / GiB: how many times the benchmark error rate is halved per gibibyte of GPU memory. Memory is the resident size that Ollama's /api/ps reports with a 32K context loaded (weights, KV cache, recurrent state and compute buffers, without the CUDA context, which is about 1.05 GiB for every model). magi-1.0 + q8 KV is magi-1.0 served with an 8-bit KV cache. The 95% intervals, from a suite-stratified bootstrap over tasks, are 0.856–0.934 for magi-1.0 + q8 KV, 0.768–0.835 for magi-1.0, 0.673–0.734 for Q4_K_M and 0.646–0.703 for Q2_K.

Unsloth's Q4_K_M matches BF16's accuracy (84.14%) and is 2.85 points more accurate than magi-1.0. It needs 0.76 GiB more memory, or 1.13 GiB more than magi-1.0 + q8 KV. If accuracy matters most, use Q4_K_M. If memory is the constraint, magi-1.0 gives you 14–27% more capability per GiB. Against the published Q2_K file, magi-1.0 is smaller and 4.2 points more accurate (paired 95% interval 2.8–5.6).

Benchmarks

All models were run on one RTX 5070 (12 GB) under the same protocol: thinking on with a 4,096-token budget (budget forcing), greedy decoding, 32K context, 2,313 tasks. Code is graded by executing tests (EvalPlus for HumanEval+ and MBPP+); LiveCodeBench uses 150 problems from contests between 2025-01-18 and 2025-04-06. Small numbers in the Ours columns are relative to BF16.

BaselinesOurs
BenchmarkBF16
8.98 GiB
Q4_K_M
3.78 GiB
Q2_K
3.15 GiB
magi-1.0
3.02 GiB
magi-1.0 + q8 KV
2.65 GiB
Efficiency
GPU memory at 32K (GiB)8.983.783.153.023.0× less2.653.4× less
Benchmark score83.96%84.14%77.06%81.30%97%80.64%96%
Capability density0.2940.7030.6750.8002.7×0.8933.0×
Decode speed (tok/s)66.3146.6165.5180.02.7×181.42.7×
Traces ending in a loop3.4%3.3%33.3%9.4%9.1%
Coding
HumanEval+91.4692.6875.0087.8088.41
MBPP+72.1873.6858.9068.4267.92
LiveCodeBench35.3335.3315.3324.6724.00
Math
GSM8K87.3393.3390.6789.3387.33
Science and Knowledge
ARC-Challenge98.6798.6797.3397.3398.00
MMLU84.5082.5074.0082.0081.00
OpenBookQA95.0096.5093.0096.0095.00
SciQ98.0098.5096.0096.0097.00
TruthfulQA82.5082.0073.0079.5076.00
Commonsense
HellaSwag75.5072.0071.5072.0069.00
WinoGrande87.0084.5080.0082.5084.00
Tool Use
Function calling100.00100.00100.00100.00100.00

The largest gap to BF16 is competitive programming (LiveCodeBench). Most of magi-1.0's advantage over Q2_K comes from looping less: 337 of Q2_K's 575 failed tasks end with the reasoning stuck in a repetition loop, against 99 of magi-1.0's 463. Over the whole benchmark, a task takes magi-1.0 13.8 seconds on average, against 16.5 for Q4_K_M and 36.1 for BF16.

Recipe

Tensor groupTypeShare of parametersbits/weight
FFN gate, up, down (all 32 layers)IQ3_XXS53.9%3.06
Gated-attention output gate (24 DeltaNet layers)IQ3_XXS6.0%3.06
DeltaNet input projection attn_qkv (24)Q4_K12.0%4.50
DeltaNet output projection ssm_out (24)Q4_K6.0%4.50
Full-attention q, k, v, output (8 layers)Q4_K7.0%4.50
Token embedding = tied output headQ4_K15.1%4.50
DeltaNet gates ssm_alpha, ssm_betaQ8_00.1%8.50
Norms, convolution, A, Δt biasF32<0.1%32

Types were allocated greedily under a 1.80 GiB budget by the measured increase in greedy next-token disagreement with BF16 per gibibyte, scored on the model's own long reasoning traces and chat answers. The importance matrix comes from 32 of the model's own reasoning traces. At the same file size, this allocation disagrees with BF16 on 10.0% of tokens, against 14.3–17.5% for three random allocations of the same bytes.

How to run

llama.cpp (uses the Qwen3.5 chat template embedded in the file):

llama-server -m magi-1.0.gguf -c 32768 --jinja
# 8-bit KV cache (magi-1.0 + q8 KV, 2.65 GiB):
llama-server -m magi-1.0.gguf -c 32768 --jinja --flash-attn on --cache-type-k q8_0 --cache-type-v q8_0

Ollama (verified with Ollama 0.40.3, which picks up the embedded template):

ollama create magi-1.0 -f Modelfile
ollama run magi-1.0

For the 8-bit KV cache, start the server with OLLAMA_FLASH_ATTENTION=1 and OLLAMA_KV_CACHE_TYPE=q8_0. The benchmark used greedy decoding. For interactive use with thinking enabled, Qwen recommends temperature 0.6, top_p 0.95 and top_k 20.

Limitations

  • Evaluated on one model family, one runtime (Ollama), one benchmark and one GPU; each configuration was run once.
  • Below BF16 in accuracy, most clearly on LiveCodeBench (24.7% vs 35.3%). 9.4% of thinking traces end in a repetition loop, against BF16's 3.4%.
  • Text only: the vision encoder of the base model is not included.
  • The name is ours. magi-1.0 is not a fine-tune and contains no new training.

Related

  • GEHIRNS/magi-beta-1: an alternative allocation with the full-attention k, v and output projections at Q6_K (80.65%, capability density 0.771), published for comparison.
  • Paper: Where the Bits Go: Sensitivity-Allocated Mixed Precision Triples the Capability per Gigabyte of a 4B Hybrid Reasoning Model on a 12 GB Consumer GPU (GEHIRNS, 2026, in preparation).

License

Apache 2.0, inherited from Qwen/Qwen3.5-4B. The license text is included in this repository.

Downloads last month
-
GGUF
Model size
4B params
Architecture
qwen35
Hardware compatibility
Log In to add your hardware

We're not able to determine the quantization variants.

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for GEHIRNS/magi-1.0

Finetuned
Qwen/Qwen3.5-4B
Quantized
(564)
this model

Collection including GEHIRNS/magi-1.0