How to use from the
Use from the
Transformers library
# Use a pipeline as a high-level helper
from transformers import pipeline

pipe = pipeline("image-text-to-text", model="DhruvalLabs/gemma-4-12B-GGUF")
# Load model directly
from transformers import AutoModel
model = AutoModel.from_pretrained("DhruvalLabs/gemma-4-12B-GGUF", device_map="auto")
Quick Links

gemma-4-12B β€” GGUF Quantizations (VLM)

Model on HF Original Model quant-kit

Quantized GGUF versions of google/gemma-4-12B

This is a Vision-Language Model (VLM) β€” it can understand both text and images.

Works with llama.cpp Β· LM Studio Β· Jan Β· Ollama

Quantized by Dhptl on June 19, 2026 using quant-kit


This VLM requires TWO files β€” a text backbone GGUF and the mmproj vision encoder GGUF. Download one text backbone (e.g. Q4_K_M) and the mmproj file. Both must be in the same folder.


πŸ“¦ Available Files

πŸ”€ Text Backbone (quantized β€” pick ONE)

Filename Size RAM Required Quant Quality Best For
gemma-4-12B-Q2_K.gguf 4.50 GB ~6.0 GB Q2_K ⭐ Extreme compression, significant quality loss.
gemma-4-12B-Q3_K_L.gguf 6.12 GB ~7.6 GB Q3_K_L ⭐⭐⭐ Slightly better than Q3_K_M, still a compromise.
gemma-4-12B-Q3_K_M.gguf 5.67 GB ~7.2 GB Q3_K_M ⭐⭐⭐ Very small file. Quality drop noticeable.
gemma-4-12B-Q3_K_S.gguf 5.15 GB ~6.6 GB Q3_K_S ⭐⭐ Very high compression, high quality loss.
gemma-4-12B-Q4_K_M.gguf 6.87 GB ~8.4 GB Q4_K_M βœ… Recommended ⭐⭐⭐⭐ Best balance of size and quality. Recommended for most users.
gemma-4-12B-Q4_K_S.gguf 6.54 GB ~8.0 GB Q4_K_S ⭐⭐⭐½ Good speed/size balance, slight quality loss.
gemma-4-12B-Q5_K_M.gguf 7.96 GB ~9.5 GB Q5_K_M ⭐⭐⭐⭐½ Better quality than Q4, slightly larger. Great if you have the RAM.
gemma-4-12B-Q5_K_S.gguf 7.77 GB ~9.3 GB Q5_K_S ⭐⭐⭐⭐ Large but accurate.
gemma-4-12B-Q6_K.gguf 9.11 GB ~10.6 GB Q6_K ⭐⭐⭐⭐⭐ Near-perfect quality, very large.
gemma-4-12B-Q8_0.gguf 11.80 GB ~13.3 GB Q8_0 ⭐⭐⭐⭐⭐ Closest to original quality. Use when RAM is not a concern.

πŸ–ΌοΈ Vision Encoder β€” mmproj (always required, always F16)

Filename Size Notes
gemma-4-12B-mmproj-f16.gguf 0.11 GB Always F16 β€” vision encoder is not quantized

⚠️ You need BOTH files β€” one text backbone + the mmproj β€” to run this VLM.


⚑ Speed Benchmarks

Run python benchmark.py --model gemma-4-12B to generate results.


πŸš€ How to Use

LM Studio (Easiest β€” GUI)

  1. Search for Dhptl/gemma-4-12B in LM Studio
  2. Download the Q4_K_M text file and the mmproj file
  3. Load the model β€” LM Studio automatically uses both files

Ollama

ollama run dhptl/gemma-4-12b

llama.cpp CLI β€” Text + Image

# Download both files to the same directory, then:
./llama-llava-cli \
  -m gemma-4-12B-Q4_K_M.gguf \
  --mmproj gemma-4-12B-mmproj-f16.gguf \
  --image /path/to/your/image.jpg \
  -p "Describe this image in detail." \
  -n 512

llama.cpp CLI β€” Text only (no image)

./llama-cli \
  -m gemma-4-12B-Q4_K_M.gguf \
  -p "You are a helpful assistant." \
  --conversation

Python β€” llama-cpp-python

from llama_cpp import Llama
from llama_cpp.llama_chat_format import Llava16ChatHandler

# Load VLM with mmproj
chat_handler = Llava16ChatHandler(clip_model_path="./gemma-4-12B-mmproj-f16.gguf")
llm = Llama(
    model_path="./gemma-4-12B-Q4_K_M.gguf",
    chat_handler=chat_handler,
    n_gpu_layers=-1,
    n_ctx=4096,
    logits_all=True,
)

# Text + image inference
response = llm.create_chat_completion(
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}},
                {"type": "text",      "text":      "What do you see in this image?"}
            ]
        }
    ]
)
print(response["choices"][0]["message"]["content"])

πŸ” VLM Architecture

This model uses a two-component architecture:

Component File Purpose
Text Backbone gemma-4-12B-Q4_K_M.gguf Language understanding & generation
Vision Encoder (mmproj) gemma-4-12B-mmproj-f16.gguf Image feature extraction (always F16)

Why is mmproj always F16? The vision encoder maps image pixels to token embeddings. Quantizing it causes visible visual artifacts and degraded image understanding. It stays at F16 (half precision) which is already very efficient at ~1-2GB for most models.


πŸ” About GGUF Quantization

Format Bits/weight Quality
Q3_K_M ~3.3 ⭐⭐⭐
Q4_K_M ~4.5 ⭐⭐⭐⭐ ← recommended
Q5_K_M ~5.6 ⭐⭐⭐⭐½
Q8_0 ~8.5 ⭐⭐⭐⭐⭐

πŸ’¬ Community & Feedback

Found an issue? Open a Discussion in the Community tab.

If useful, please:

  • ⭐ Star quant-kit on GitHub
  • πŸ‘ Like this model on HuggingFace
Downloads last month
2,195
GGUF
Model size
12B params
Architecture
gemma4
Hardware compatibility
Log In to add your hardware

2-bit

3-bit

4-bit

5-bit

6-bit

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for DhruvalLabs/gemma-4-12B-GGUF

Quantized
(64)
this model