CoolFace
Modelpublic

dahus/gemma-4-e2b-it-Q3_K_S-GGUF

sourceHugging Faceapache-2.0updated 5mo agoView on Hugging Face
0likes141downloads
Model Card

Gemma 4 E2B it — Q3KS GGUF

3-bit small quantized GGUF version of google/gemma-4-e2b-it. Slightly smaller and faster than Q3KM with comparable output quality.

Other quantizations in this series: Q2_K · Q3_K_M · Q4_K_S · Q4_K_M · Q5_K_S · Q5_K_M · Q6_K · Q8

File Info

PropertyValue
FormatGGUF Q3KS
File size3.11 GB
Bits per weight~3
Size vs F163.0× smaller

Benchmark Results

Tested across 4 categories (Math, Logic, Code, Science), 3 prompts each. Greedy decoding, 200 max new tokens. Metrics compare logit distributions vs F16 baseline.

Results by Category

CategorySpeed (tok/s)SQNRTop-1 AgreementKL Divergence
🔢 Math29.010.4 dB64.3%1.2991
🧠 Logic28.910.9 dB61.9%1.4255
💻 Code28.99.5 dB64.4%1.0009
🔬 Science28.89.4 dB62.0%1.3165
Overall28.910.12 dB63.2%1.2605

Quantization Comparison

ModelSizeSpeed (tok/s)vs F16 speedSQNRTop-1 AgreeKL Div
F16 (baseline)8.67 GB5.71.0×baselinebaselinebaseline
Q2_K2.99 GB31.65.6×5.85 dB32.0%4.1149
Q3_K_S (this)3.11 GB28.95.1×10.12 dB63.2%1.2605
Q3KM2.98 GB27.44.8×13.93 dB63.2%1.6747
Q4KS3.37 GB25.04.4×19.10 dB80.9%0.3456
Q4KM3.43 GB24.04.2×20.33 dB82.4%0.3356
Q5KS3.6 GB21.93.9x23.32 dB87.7%0.1547
Q5KM3.63 GB22.03.9×23.25 dB86.9%0.1248
Q84.97 GB16.22.9×37.11 dB96.0%0.0171

Key Findings

  • —Quality: 63.2% Top-1 agreement — same as Q3KM at the aggregate level, with lower KL divergence (1.26 vs 1.67)
  • —Speed: 28.9 tok/s — slightly faster than Q3KM (27.4 tok/s)
  • —Size: 2.90 GB — 80 MB smaller than Q3KM
  • —vs Q3_K_M: Q3KS has lower SQNR but better KL divergence, meaning the probability distributions are actually closer to F16 despite lower signal quality — practically equivalent for most tasks
  • —Best for: Same use case as Q3KM; prefer Q3KS if you need a tiny speed advantage

Usage

bash
# llama.cpp CLI
./llama-cli -m gemma-4-e2b-q3ks.gguf -p "Explain the water cycle." -n 200
python
# llama-cpp-python
from llama_cpp import Llama

llm = Llama(model_path="gemma-4-e2b-q3ks.gguf", n_ctx=2048)
output = llm("Explain the water cycle.", max_tokens=200)
print(output["choices"][0]["text"])

Hardware

Tested on: CPU inference (llama.cpp) Context: 2048 tokens | Greedy decoding