Skip to page content
SAVRN
Search Plan a project

Open-weight model · Image and text to text

clef-flash-4bit

by MLX Community mlx-community/clef-flash-4bit

clef-flash-4bit is an open-weight model for image and text to text from MLX Community, released under Apache License 2.0. It has 9.4B parameters and a 262,144-token context. At 16-bit it needs about 22.6 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.

Cloudflare/clef-flash converted to MLX (4-bit) for Apple Silicon. Clef turns a state (text, JSON, images, or video) plus a schema of typed questions into a probability for every allowed option, in a single forward pass.

Parameters9.4B
Context262,144
Weights6.2 GB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads—

Runs On

What it takes to serve clef-flash-4bit (9.4B parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 18.8 GB 22.6 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 9.4 GB 11.3 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 4.7 GB 5.6 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 21, 2026.

clef-flash-4bit on every accelerator the SAVRN Index prices, at every precision

Model Card

By MLX Community, published under apache-2.0, revision d9ec324f7992.

Cloudflare/clef-flash converted to MLX (4-bit) for Apple Silicon. Clef turns a state (text, JSON, images, or video) plus a schema of typed questions into a probability for every allowed option, in a single forward pass. It is not a chat model — mlxvlm.generate, mlxlm.generate, and LM Studio will load the backbone but produce meaningless text. Use the bundled clefmlx.py loader, which runs the backbone and the joint schema head. Images (PIL) and videos (frame arrays) go in images / videos, as in the original: See the original model card for the input format, question types, and benchmarks. - processorconfig.json is the original from Cloudflare/clef-flash; prompt/token layout matches the…

Read MLX Community's full model card

Cloudflare/clef-flash converted to MLX (4-bit) for Apple Silicon.

Clef turns a state (text, JSON, images, or video) plus a schema of typed questions into a probability for every allowed option, in a single forward pass. It is not a chat model — mlx_vlm.generate, mlx_lm.generate, and LM Studio will load the backbone but produce meaningless text. Use the bundled clef_mlx.py loader, which runs the backbone and the joint schema head.

Usage

pip install mlx-vlm huggingface_hub   # no torch needed
import sys
from huggingface_hub import snapshot_download

path = snapshot_download("mlx-community/clef-flash-4bit")
sys.path.insert(0, path)
import clef_mlx

model = clef_mlx.load(path)
response = model.systemone({
    "model": "clef-flash",
    "state": "Our checkout started returning errors and orders are blocked.",
    "questions": {
        "department": {
            "type": "choice",
            "instructions": "Which team should handle the message?",
            "criteria": {"billing": "Payments or invoices", "technical": "Bugs or outages"},
        },
        "urgency": {"type": "score", "criteria": ["Can wait", "This week", "Today"]},
        "outage": {"type": "noul", "instructions": "Is a service down?"},
    },
})
print(response["answers"])

Images (PIL) and videos (frame arrays) go in images / videos, as in the original:

from PIL import Image
model.predict({
    "state": {"task": "Review the attached receipt."},
    "images": [Image.open("receipt.jpg")],
    "questions": {"legible": {"type": "noul", "instructions": "Is the receipt total legible?"}},
})

See the original model card for the input format, question types, and benchmarks.

Conversion

  • Backbone: mlx_vlm.convert -q --q-bits 4 --q-group-size 64 (vision tower kept in bf16).
  • Joint schema head: joint_head.safetensors copied unchanged (bf16) and run by clef_mlx.py.
  • processor_config.json is the original from Cloudflare/clef-flash; prompt/token layout matches the reference joint_schema_model.py exactly (images and video).

Parity vs. official PyTorch implementation (bf16)

Inputs Top answer agrees Max abs Δprob
Text (4 records, 10 questions) 10/10 0.029
Images + video (5 records, 9 questions) 9/9 0.119

Measured on an M5 Max (128 GB). Small spot-check, not a full benchmark run.

Quality check: Decision Index (sampled)

Decision Index (sample) Same top answer as bf16 Mean max abs Δp Median latency
This model (4-bit) 54.65 96.4% (15,915 answers) 0.040 311 ms
MLX bf16, same rows 55.63 — — 339 ms
Cloudflare published (full suite) 57.07

4-bit costs about 1 index point vs bf16 on identical rows. Most of the remaining gap to the published score is already present in bf16 (sample noise and harness differences), not quantization. Agreement is lowest on low-chance many-option tasks (POP909, GPQA, CLINC150).

Method: Decision Index 0.2.1 kit (suite rebuilt byte-identical), stratified 2,000-request sample across all 44 benchmarks (suite sample --n 2000), engine = clef_mlx.py with max_length=16384 and no truncation (over-length requests are refused and count as wrong; 15 of 2,000, mostly BRIGHT). The index is computed from each benchmark's native metric on the sampled rows with the kit's chance correction and weights; HLE and iSarcasmEval are set to 0 to match how Cloudflare's published run is scored. With ~40 rows per benchmark, per-benchmark numbers are noisy (±10+ pts) — only the index is meaningful.

License

Apache-2.0, following Cloudflare/clef-flash.

Configuration

Architecture
Qwen3_5ForConditionalGeneration
Context length (tokens)
262,144
Layers
32
Hidden size
4,096
Feed-forward size
12,288
Attention heads
16
Key/value heads
4
Head dimension
256
Vocabulary size
248,320
Model type
qwen3_5

Identity and Version

Repository
mlx-community/clef-flash-4bit
Publisher
MLX Community
Task
Image and text to text
Modality
Image and text
Library
mlx
Parameters
9.4B parameters
Languages
mlx
Revision
d9ec324f7992383bdfb7a0b4eed8b4b9d10f81be
First published
2026-10-01
Last updated
2026-10-02

Files and Weights

16 files, 6.2 GB in total. The weights are 3 files totalling 6.2 GB in safetensors.

Weights3 files · 6.2 GB
Configuration6 files · 152.3 KB
Tokenizer2 files · 20.0 MB
Documentation2 files · 15.7 KB
Other2 files · 46.2 KB
Repository1 file · 1.6 KB
Every file
FileTypeSizeSHA-256
joint_head.safetensorsWeights243.5 MB 19cdcec8c81d
model-00001-of-00002.safetensorsWeights5.3 GB 39894f085d84
model-00002-of-00002.safetensorsWeights600.4 MB 40258d3d4f72
clef_mlx.pyConfiguration23.6 KB —
config.jsonConfiguration3.7 KB —
generation_config.jsonConfiguration116 B —
joint_head_config.jsonConfiguration119 B —
model.safetensors.index.jsonConfiguration123.6 KB —
processor_config.jsonConfiguration1.2 KB —
LICENSEDocumentation11.5 KB —
README.mdDocumentation4.2 KB —
__pycache__/clef_mlx.cpython-312.pycOther38.5 KB —
chat_template.jinjaOther7.8 KB —
.gitattributesRepository1.6 KB —
tokenizer.jsonTokenizer20.0 MB a5cd9732badc
tokenizer_config.jsonTokenizer1.2 KB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
6.2 GB
Download from MLX Community

Released by MLX Community through its official repository on Hugging Face. Read the license.

Built From

  • Derived from Cloudflare/clef-flash
  • Quantized from Cloudflare/clef-flash

Memory Requirements

PrecisionWeights in memory
As published6.2 GB
16-bit18.8 GB
8-bit9.4 GB
4-bit4.7 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About clef-flash-4bit

How much GPU memory does clef-flash-4bit need?

About 22.6 GB at 16-bit and 5.6 GB at 4-bit: the weights (9.4B parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run clef-flash-4bit on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use clef-flash-4bit commercially?

Yes. clef-flash-4bit is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

What is clef-flash-4bit's context length?

262,144 tokens, from the maximum position embeddings in its published configuration.

Similar Models

Model · Image and text to text

Qwen-Image-2.1-PE-I2I-Heretic

Darrellbest

The image-editing prompt rewriter for Qwen-Image-2.1, a fine-tuned Qwen3.5-VL 9B that turns a short edit instruction plus 1–N input images into a detailed English edit prompt, with its refusal behaviour removed by Heretic directional ablation. bf16, same shapes and parameter count as the source; nothing else was changed. systemprompt.txt is included and required. It defines the output format. It is the unmodified file from the source repo. The second row is an independent evaluation of the exported weights with Heretic's evaluatemodel. Refusals were measured on mlabonne/harmfulbehaviors and KL divergence (damage to ordinary behaviour, first-token distributions) on mlabonne/harmlessalpaca…

Open weights other 9.4B parameters 262,144 tokens

Model · Image and text to text

LucidVitality-9b

Matthew Andrews

LucidVitality-9B is a little goer. It's a roleplay or creative focused merge of two Qwen3.5 9b variants for people with absolute potatoes, like myself. It marries the improved prose of Darkhn's Qwen3.5-9B-Animus-V13.0 with the lower looping, higher EOS exit, and slightly more coherency (compared to base) from Qwen3.5-9B-Claude-4.6-HighIQ-INSTRUCT-HERETIC-UNCENSORED of DavidAU's making. I haven't merged anything for a long time, as it's been a hard time for finetuning. They rarely increase prose quality, often deeply lose intelligence over base (even when tuned for intelligence or agentic). Base model's getting tough to beat. So it was a pleasant surprise to find two models that each…

Open weights 9.4B parameters 262,144 tokens transformers

Model · Image and text to text

blink-mimo-9b

Govind Kamtamneni

Send a text or JSON state and your questions: choice picks from up to 255 options, noul is yes/no, and score takes 2–10 ordered levels. Each question gets probabilities over its offered options from one forward pass, with no generated text. Long or large multi-question requests may use several batches. Personal research release by thegovind, not an official product of any company. No affiliation with TypeSafe AI, Xiaomi, Alibaba Cloud or the Qwen team. Weights are for non-commercial research; see Licence. We ran the full Decision Index 0.2 suite ourselves with the official scoring kit at commit 19ad28e on 2026-09-25. This is a descriptive run, not a leaderboard submission or accepted…

Open weights other 9.4B parameters 262,144 tokens transformers

Model · Image and text to text

Vinci-Bozza-1.0

SimpleDirect

Vinci Bozza is a 9-billion-parameter open-weight model, fine-tuned from Qwen 3.5-9B with SimpleDirect's Constitution and character training. It is a disposition tune, not a capability retrain. We did not try to make the base model smarter. We tried to make it more honest — and then we measured what that cost. Safer and more honest on the measures below, with general knowledge holding. Strict instruction-following, tool abstention and multi-turn task-holding paid for it. All of it is below, at the same prominence as the gains. The rows above are configuration and artifact values read out of this repository, not validated results. A context length in a config file is a limit the model will…

Open weights apache-2.0 9.4B parameters 262,144 tokens transformers

Model · Image and text to text

Qwen-Image-2.1-PE-I2I-Heretic-NVFP4

Darrellbest

NVFP4 (4-bit floating point, W4A4) build of darrellbest/Qwen-Image-2.1-PE-I2I-Heretic, the refusal-ablated image-editing prompt rewriter for Qwen-Image-2.1. For vLLM on NVIDIA Blackwell GPUs, which run NVFP4 natively. 11 GB instead of 18 GB. systemprompt.txt is included and required, exactly as for the original. The linear-attention layers carry a recurrent state and the vision tower encodes the input image; both were left in bf16, as other quantizations of this model family do. That is why the file is 11 GB rather than ~6 GB. Made with llm-compressor 0.13.0 (QuantizationModifier, scheme="NVFP4"), calibrated on 64 samples in the model's real input format: its own system prompt, an edit…

Open weights other 9.4B parameters 262,144 tokens

Model · Image and text to text

Omni-Edu-9B

Hao Liang

This model is a fine-tuned version of Qwen/Qwen3.5-9B-Base on the Omni-Edu-70K dataset. The following hyperparameters were used during training: - learningrate: 5e-06 - trainbatchsize: 1 - evalbatchsize: 8 - distributedtype: multi-GPU - numdevices: 8 - gradientaccumulationsteps: 8 - totaltrainbatchsize: 64 - totalevalbatchsize: 64 - lrschedulertype: cosine - lrschedulerwarmupsteps: 0.1 - numepochs: 3.0 - Transformers 5.2.0 - Pytorch 2.10.0 - Datasets 4.0.0 - Tokenizers 0.22.2

Open weights other 9.4B parameters 262,144 tokens transformers