howtospark
models / unsloth/Kimi-K3-GGUF
Moonshot logo

unsloth/Kimi-K3-GGUF
2.8T params~132B activecompressed-tensorsMoE 896×161.0M ctxmultimodalotherGGUF
Sparks
~1399 GB
~1399 GB
~808 GB
~766 GB
~725 GB
110 usable
REAP dialno pruning · 896 experts
Spec decode
Context33K / 1.0MKV
On the Sparks — 1× · 2-bit experts + NVFP4 dense · 33K ctx · FP16 KV~0 ctx fits usable
spark
Dense weights41.7* GB4-bit
Expert planes674* GB2-bit
110 usable
+615 over
725* / 110 GB
659% of usable
Expert planesDense weightsKV cacheActivations + graphsOS reserve

* segment sizes marked with an asterisk are estimates pending a measured run

Estimated per-node footprint, weights + KV sharded across the Spark (tensor parallel). Overhead ~8 GB/node; KV at FP16.

layer map
93 layersMoE FFN
in
out

one MoE layer · 896 experts, 16+2 fire per token · showing 256

each expert ≈ 33M params

resident: 92 MoE layers × 896 experts × 33M 2696.1B

active/token: 92 × 16 × 33M 48.6B experts

+ 83.4B always-on dense (attention, embeddings, shared stack) = 132.0B active

Optimize
Quantized from

moonshotai/Kimi-K3

Analyze the original repo for the full architecture picture.

Verdict

2779B params, ~1390 GB at already compressed-tensors-quantized and still ~1390 GB at 4-bit — one Spark can't hold it; you need surgery or more Sparks.

Make it fit

Get the weights (and headroom for KV) inside the 128 GB pool — the hard gate.

Prune experts (then quantize)

With 896 routed experts and only 16 firing per token, REAP-style pruning cuts total params without touching active compute (params include vision/audio towers).

pruning to half the experts ≈ halves the routed-expert weights, ~764 GB at 4-bit

Split or stream it

Even 4-bit is ~1390 GB against a 110 GB usable budget; shard across ≥13 Sparks or stream cold weights from NVMe.

Go below 4 bits

Codebook/outlier methods reach 2–3 bpw when 4-bit still overflows. — for MoE, the proven shape is a 2-bit sign-symmetric codebook on the routed experts with the dense stack kept at FP8 (vLLM-Moet).

~757 GB with 2-bit experts + FP8 dense (est.)

Make it fast

Once it fits: fewer bytes per token and fewer decode steps against 273 GB/s.

Add a speculative decoder

Decode is bandwidth-bound at ~4.1 tok/s ceiling; a trained EAGLE-style draft multiplies tokens per weight-read.

Tame the KV cache

At 1048576 tokens the KV cache alone is ~29 GB at FP16; quantize or evict.

Make it yours

Change what the model does — adapt, edit, or steer it — independent of size.

Fine-tune it

LoRA/QLoRA adapts behavior on one Spark without touching the base weights.