CoolFace
Modelpublic

Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q8_K_XL-mlx

sourceHugging Facegemmaupdated 5mo agoView on Hugging Face
1likes153downloads
Model Card

Gemma-4-26B-A4B-IT — UD-Q8KXL (mlx-node)

8-bit affine quantization of google/gemma-4-26b-a4b-it for Apple Silicon, using the **Unsloth Dynamic** quantization strategy via mlx-node.

Original (BF16)UD-Q8_K_XL (this model)
Size~49 GB27 GB
FormatSafeTensorsSafeTensors
PrecisionBF16 uniform8-bit affine + BF16
FFN group size—64
Biases—yes

All Variants

RepoBit budgetSizeDecode (tok/s)
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q3_K_XL-mlx3-bit base14 GB60.6
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-MXFP4_K_XL-mlxmxfp416 GB58.4
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q4_K_XL-mlx4-bit base17 GB58.6
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-NVFP4_K_XL-mlxnvfp417 GB57.9
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q5_K_XL-mlx5-bit base20 GB50.3
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q6_K_XL-mlx6-bit base23 GB51.9
Brooooooklyn/Gemma-4-26B-A4B-IT-UD-MXFP8_K_XL-mlxmxfp826 GB49.8
[Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q8_K_XL-mlx](https://huggingface.co/Brooooooklyn/Gemma-4-26B-A4B-IT-UD-Q8_K_XL-mlx) (this model)8-bit base27 GB49.8

Benchmarked on Apple M3 Max 128GB via `examples/lm.ts` (best decode tok/s across turns 2–4, steady-state, capitals chat with reasoningEffort: 'low').

Note: No Q2 variant is published — Gemma-4-26B-A4B-IT has only ~4B active parameters per token, which is below the architectural redundancy needed for 2-bit quantization to remain coherent. Both unsloth and mixed_2_6 recipes produced gibberish at Q2 on this model.

Performance

Steady-state decode: 49.8 tok/s on Apple M3 Max 128GB (best of turns 2–4, examples/lm.ts capitals chat with reasoningEffort: 'low'). Decode is memory-bandwidth bound on Apple Silicon — fewer bytes per token directly translates to higher throughput. The MoE architecture activates only top-K of 128 experts per token (~4B active out of ~26B total), and the compiled C++ forward graph fuses the per-layer dispatch.

Per-Tensor Bit Assignments (N=8)

WeightModeBitsGroupRationale
mlp.gate_proj8-bit affine864Shared dense MLP (top-level default)
mlp.up_proj8-bit affine864Shared dense MLP (top-level default)
experts.switch_glu.gate_proj8-bit affine864MoE expert gate (per-expert across all 128); base bits (top-level default)
experts.switch_glu.up_proj8-bit affine864MoE expert up (per-expert across all 128); base bits (top-level default)
self_attn.o_projbf16——NOT AWQ-correctable; kept full-precision

Quantization Strategy

Built on Unsloth Dynamic 2.0 per-tensor KLD analysis. At --q-bits 8 the unsloth recipe assigns the base bits to MLP gate/up projections (the bulk of the parameter budget), base+1 to downproj (slightly more sensitive), `base+2` (snapped to a valid bit width) + AWQ pre-scaling to attention q/k/v projections, `base+2` to `embedtokens, base+3 (capped/snapped) to the routing-critical paths, and keeps selfattn.oproj as bf16 (AWQ-uncorrectable — its inputs come from the attention compute, not from a norm layer). The MoE router (router.proj`) is forced to 8-bit affine to preserve top-K expert selection accuracy.

imatrix AWQ pre-scaling amplifies important weight channels and fuses inverse scales into preceding layer norms (zero inference overhead).

Architecture

ParameterValue
Total parameters~26B (~4B active per token)
Hidden size2,816
Layers30 (sliding-window attention)
Attention heads16 (8 KV heads, GQA 2:1)
Head dimension256
Experts128 per MoE layer
MoE intermediate size704
Vocab size262,144
Max context262,144 tokens
Visionyes (Gemma4ForConditionalGeneration)

Usage

typescript
import { loadSession } from '@mlx-node/lm';

const session = await loadSession('./Gemma-4-26B-A4B-IT-UD-Q8_K_XL-mlx');

for await (const event of session.sendStream('Explain the MoE architecture in Gemma-4.', {
  config: { maxNewTokens: 2048, temperature: 0.6, reasoningEffort: 'low' },
})) {
  if (!event.done) process.stdout.write(event.text);
}

How It Was Made

bash
mlx convert \
  -i gemma-4-26b-a4b-it \
  -o Gemma-4-26B-A4B-IT-UD-Q8_K_XL-mlx \
  -q --q-bits 8 --q-recipe unsloth \
  --imatrix-path imatrix_unsloth.gguf

Acknowledgments

  • —[Unsloth](https://unsloth.ai) — Quantization strategy based on their per-layer KLD benchmarks and Dynamic 2.0 methodology
  • —[Google DeepMind](https://deepmind.google/) — For the Gemma-4 model family
  • —[Apple MLX](https://github.com/ml-explore/mlx) — For the Metal-accelerated ML framework

License

Gemma Terms of Use (inherited from base model).