alt.freeweights.gemma / diffusiongemma-26B-A4B-it-OptiQ-4bit
From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.gemmaSubject:

diffusiongemma-26B-A4B-it-OptiQ-4bit

Date: 2026-11-15Commit: 30f3c7cSigned: 2DC28CC7B26A283B ✓

Image text to text model with 25.3B parameters. Safetensors weights, 17.9 GB in all. Published by mlx-community under Apache-2.0.

25.3B params17.9GBdiffusiongemma-26B-A4B-it-OptiQ-4bitsafetensorspermissive
FactsParams25.3BSize17.9 GBFormatssafetensorsTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
# manifest sha256 05bef241cc04… · 17.9 GB · 15 files
$ fw verify ./diffusiongemma-26B-A4B-it-OptiQ-4bit mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
From sourceHosted (signed)mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bitLast check: 2026-11-15 05:16 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of diffusiongemma-26B-A4B-it.

Works with

Overview

Size
17.9 GB
Weights
17.8 GB (safetensors)
Parameters
25.3B
Formats
safetensors
Task
image text to text
License
Apache-2.0 (permissive)
Files
15, each with a sha256
Publisher
mlx-community
Added
2026-11-15
Section
alt.freeweights.gemma
Lineage

Original release from the publisher.

Base model: google/diffusiongemma-26B-A4B-it

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 05:16 UTCpassed

Model card

From the publisher at commit 30f3c7c. Shown as plain text with links; images open at the publisher.

diffusiongemma-26B-A4B-it-OptiQ-4bit#

Built with mlx-optiq, the MLX-native toolkit to quantize, fine-tune, and serve LLMs locally on Apple Silicon, no PyTorch and no cloud. Try the Lab · All OptiQ quants · Docs

OptiQ data-driven mixed-precision quant of Google's DiffusionGemma-26B-A4B-it, a block/masked-diffusion LLM (image-text-to-text), the first diffusion model in the OptiQ lineup.

Instead of uniform 4-bit, OptiQ measures each layer's quantization sensitivity — KL on the denoising-canvas logits, sampled across the denoising schedule the model actually walks — and spends an 8-bit budget where the measurement says it matters. The SigLIP vision tower is not quantized at all: it rides at bf16 in a sidecar, so the image path keeps full precision and the entire bit budget goes to the language tower.

247 of 299 language tensors at 8-bit, 52 at 4-bit — 4.685 bits-per-weight. Vision: bf16.

⚠️ Requires mlx-optiq ≥ 0.3.2. DiffusionGemma is not loadable by stock mlx-lm/mlx-vlm; OptiQ ships a vendored, dependency-free decoder for it.

Capability Score#

Full 6-metric OptiQ Capability Score (optiq eval --task all --score):

BenchmarkScore
MMLU (1000, 5-shot)56.1
GSM8K (1000)94.4
IFEval (strict)72.5
BFCL v369.0
HumanEval (pass@1)83.5
HashHop34.0
Capability Score68.25
Disk16.7 GB (from 51.6 GB bf16)

Vision#

The vision tower is bf16, so image understanding is not degraded by the quant. Asked to describe four photos in one sentence:

imageoutput
a brown bear"A close-up portrait of a large brown bear sitting in a grassy field."
two cats on a blanket"Two tabby cats are sleeping on a pink blanket next to two television remotes."
a tiled bathroom"A bathroom features a white floor-level toilet, a large white pipe…"
an inverted stop sign"A red octagonal stop sign is mounted upside down on a metal post."

Usage#

from optiq.vlm.diffusion_gemma import load, generate

model, tokenizer = load("mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit")

# text
print(generate(model, tokenizer, "Write a haiku about Apple Silicon."))

# image + text
from PIL import Image
print(generate(model, tokenizer, "What is in this image?", images=[Image.open("photo.jpg")]))
Best inference config#

DiffusionGemma decodes by iteratively un-masking a fixed 256-token canvas. The sampler choice dominates speed:

samplercodeprose
entropy-bound (model default)12.7 tok/s1.8 tok/s
confidence-threshold (OptiQ default)58 tok/s9 tok/s

OptiQ defaults to confidence-threshold (generate(..., sampler="confidence-threshold")), 4.6–5× faster than the model's default, with no quality loss. On code it's comparable to the autoregressive Gemma-4 26B-A4B (~60 tok/s); on prose it's slower (diffusion's strength is structured/parallel-friendly output).

LoRA fine-tuning#

OptiQ ships a diffusion-native LoRA trainer (the model's denoising objective, not autoregressive cross-entropy):

from optiq.vlm.diffusion_gemma.lora import train_diffusion_lora, load_diffusion_lora
train_diffusion_lora(model_path, "data/", "adapter/", rank=8)   # data/train.jsonl: {prompt, completion}
model, tok = load_diffusion_lora(model_path, "adapter/")

Feature support#

OptiQ featureDiffusionGemma
Mixed-precision quant✅
Text + image generation✅ (vision tower at bf16)
LoRA fine-tuning✅ (diffusion-native denoising loss)
MTP / speculative / assistant draftN/A (diffusion is not autoregressive; parallel canvas un-masking is the native analog)
KV-cache quantN/A (fixed 256-token canvas; the cache holds only the prompt)

How it was made#

pip install mlx-optiq
optiq convert google/diffusiongemma-26B-A4B-it --target-bpw 4.66 --candidate-bits 4,8

optiq convert detects the diffusion architecture and routes to the masked-canvas pipeline: it builds a uniform-4-bit reference, measures per-layer KL on the denoising-canvas logits (sampled at several points along the denoising schedule, seeded so the sweep is reproducible), runs the greedy-knapsack allocator, and quantizes. The vision/audio towers are excluded from the bit budget and written to optiq/optiq_vision.safetensors at bf16 — a *.safetensors glob does not descend into the subfolder, so third-party loaders ignore the sidecar while OptiQ loads it.

Built with OptiQ. Vendored DiffusionGemma decoder derived from mlx-vlm (MIT).

Quantize your own#

pip install mlx-optiq
optiq convert <hf-model-id> --target-bpw 5.0 --candidate-bits 4,8
optiq lab   # full local workbench: chat, compare, quantize, fine-tune

Files

15 files · 17.9 GBWeights 17.8 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 15 files with their sha256
FileSizesha256
.gitattributes1.57 KB34448b82c17d60fec9b65b1f093c115ddbaadc04beb1b0140b6bfed2e012a930
README.md5.36 KB26d00bb1a720a8fd768f0e5f68f4020a816a711f5ff75f67568121d0e37bb53d
chat_template.jinja18.6 KB9aeb7eac68ad87bba7567e9d4597ff203e5609f1b427d9e823437d0142cc61bf
config.json60.8 KB158213785d452d6a0bc4895329aaf6e0ca5dd84c0e5e7ced1a69a9d4c032a695
generation_config.json357 B99334f763c3dbe8b161aeaca1c150a05344299fda2d2e4a0e1d342c744461200
model-00001-of-00004.safetensors5.26 GBd69231d9f02fa6183d484e5c7c224367c91852a6ad64f6dd86e7208ea34a4569
model-00002-of-00004.safetensors5.29 GBd83b4facd6beccd3cb8012279f6286b8d5c7e4e389fd76159ea152ee0256c5d7
model-00003-of-00004.safetensors5.34 GBe0777ad24439e6e4fdfdfc18df2e5aa939545d1928682a94d2cd68fd1cc0dd56
model-00004-of-00004.safetensors788 MB55f1b63d865d0b5a70d0ad9772c21d75f19a89bba56bd49cc96a9fb8fa2eae27
model.safetensors.index.json122 KB91534e31a36b17f6580c39467f347eebb992a1935eea2b8d944b9ef062aabf33
optiq/optiq_vision.safetensors1.15 GBe766eb61b7ccb9cbc43bffb9fdce1c7f4076214c4b2d6b200ec5c836c962ac29
optiq_metadata.json28.8 KB34a24bc6591203e83f31f43d8b5f5fe01e0b37a417c0ca945e6e47363c2ca6aa
processor_config.json1.69 KB32bdf45d2ad4cc29a0822ddd157a182de76644f0419a6228d151495256e9813c
tokenizer.json32.2 MBcc8d3a0ce36466ccc1278bf987df5f71db1719b9ca6b4118264f45cb627bfe0f
tokenizer_config.json2.74 KBa284d1243b62be31faa9c13e1c28cece940c4abaa7bd9ad87b94f61b40687200
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
30f3c7c774 pinned now2026-11-15 05:16 UTC15 files · 17.9 GB

Use it

$ fw get mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
# manifest sha256 05bef241cc04… · 17.9 GB · 15 files
$ fw verify ./diffusiongemma-26B-A4B-it-OptiQ-4bit mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit.json --dir ./diffusiongemma-26B-A4B-it-OptiQ-4bit $ python3 fw.py verify ./diffusiongemma-26B-A4B-it-OptiQ-4bit ./mlx-community__diffusiongemma-26B-A4B-it-OptiQ-4bit.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit --revision 30f3c7c7746bf41cfd1a290155cc3b777ab588b9 --local-dir ./diffusiongemma-26B-A4B-it-OptiQ-4bit
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForImageTextToText, AutoProcessor processor = AutoProcessor.from_pretrained("mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit", revision="30f3c7c7746bf41cfd1a290155cc3b777ab588b9") model = AutoModelForImageTextToText.from_pretrained("mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit", revision="30f3c7c7746bf41cfd1a290155cc3b777ab588b9", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit --revision 30f3c7c7746bf41cfd1a290155cc3b777ab588b9

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
26d00bb1a720a8fd768f0e5f68f4020a816a711f5ff75f67568121d0e37bb53d
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.gemmaSubject: diffusiongemma-26B-A4B-it-OptiQ-4bitDate: 2026-11-15Commit: 30f3c7cSigned: 2DC28CC7B26A283B ✓
Upstream
mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
Pinned commit
30f3c7c7746bf41cfd1a290155cc3b777ab588b9
Manifest
diffusiongemma-26B-A4B-it-OptiQ-4bit.json · .minisig
Manifest sha256
05bef241cc047a5747f1284af049faf6d31ba00e797b55ab0a570e2937bc866a
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:16 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit.json $ curl -O https://freeweights.allternit.com/manifests/mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit.json.minisig $ minisign -Vm diffusiongemma-26B-A4B-it-OptiQ-4bit.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

google/diffusiongemma-26B-A4B-it · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/diffusiongemma-26B-A4B-it-OptiQ-4bit
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. diffusiongemma-26B-A4B-it-OptiQ-4bit.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-12B-it-Ornith9-Summaries-LoRA-r128
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-12B-it-Ornith9-Summaries-LoRA-r64
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-12B-it-Qwen27-Knowledge-Units-LoRA-r128
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-12B-it-Qwen27-Summaries-LoRA-r128
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-12B-it-Qwen27-Summaries-LoRA-r64
From: laion <huggingface.co/laion>Subject: Alexandria-Gemma-4-E4B-it-Qwen27-Knowledge-Units-LoRA-r128