alt.freeweights.text / flux-3-image-klein-pup-4bit
From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.textSubject:

flux-3-image-klein-pup-4bit

Date: 2026-11-15Commit: 34abfa0Signed: 2DC28CC7B26A283B ✓

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

9.4B params5.97GBflux-3-image-klein-pup-4bitsafetensorspermissive
FactsParams9.4BSize5.97 GBFormatssafetensorsTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get mlx-community/flux-3-image-klein-pup-4bit
# manifest sha256 8da9f4445e7a… · 5.97 GB · 14 files
$ fw verify ./flux-3-image-klein-pup-4bit mlx-community/flux-3-image-klein-pup-4bit
From sourceHosted (signed)mlx-community/flux-3-image-klein-pup-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 flux-3-image-klein-pup.

Works with

Overview

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

Original release from the publisher.

Base model: black-forest-labs/flux-3-image-klein-pup

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 34abfa0. Shown as plain text with links; images open at the publisher.

mlx-community/flux-3-image-klein-pup-4bit#

This is an MLX copy, 4-bit (affine, group 64), of black-forest-labs/flux-3-image-klein-pup (Apache-2.0), for Apple Silicon.

  • Files: converted with mlx-vlm 0.7.8 (mlx_vlm convert -q --q-bits 4 --q-group-size 64); tokenizer, chat template, processor configs and system_prompts.json are upstream's, byte-identical.
  • Other tiers: bf16, 8bit.
  • Size: 5.6 GB.

The model is the prompt upsampler for FLUX 3 Image Klein. It's a Qwen3.5-9B vision-language fine-tune that expands a short request (plus up to 10 reference images, plus optional bounding boxes) into the full scene caption FLUX 3 Klein needs. A short prompt sent to the image model as typed gives generic output. This repo is Apache-2.0 like its upstream. The FLUX 3 Klein image model itself is under the FLUX Kommunity License (mlx-community/flux-3-image-klein-bf16).

Use#

It loads with MLXVLM (mlx-swift-lm, qwen3_5) and with Python mlx-vlm. The upstream card is the reference for:

  • the system prompts (system_prompts.json: t2i, i2i, t2i_bbox, i2i_bbox);
  • the edit scaffold;
  • the decoding: greedy, presence penalty 1.5 for text-to-image and 0 for edits, enable_thinking=False, at most 3,584 new tokens.

Two details matter:

  • The presence penalty counts generated tokens only, as vLLM does. mlx-lm's presence penalty also counts the prompt.
  • References are prepared first: alpha over white, LANCZOS to 1 MP for one reference, 724² for two, 512² for 3–10, sides multiples of 32, then a JPEG q92 round trip.

flux3-klein-swift's Flux3PromptUpsampler implements all of it:

import Flux3KleinUpsampler

let up = try await Flux3PromptUpsampler.load(directory: snapshotURL)
let caption = try await up.upsample("A man walking with his dog, afternoon sun")

Parity (the Swift/MLX port vs BFL's reference, flux3/pup.py)#

CheckResult
Prompt tokens vs the HF processor (t2i, t2i+boxes, 1-ref and 2-ref edits, edit+boxes)exact, 737–1,914 tokens
Box planning / reconcile vs bbox.py13/13 cases exact
1-ref edit caption on BFL's own reference pixels (bf16)identical to BFL's caption, word for word
Text-to-image caption, man_dog (bf16)0.991 word similarity to BFL's

Greedy decoding is chaotic near ties. BFL's own captions for the same request differ between their runs (0.25–1.0 similarity), so exact match is not the bar.

Tiers (19 requests from BFL's examples)#

The bar: every quoted string kept verbatim and every box table complete. Similarity to the bf16 caption is reported for information.

TierQuoted text keptBox tablesSimilarity to bf16Memory (M5 Max)
bf1620/202/21.0018.8 GB resident, 20.2 GB peak
8bit20/202/20.6810.4 GB resident, 11.1 GB peak
4bit20/202/20.456.0 GB resident, 6.8 GB peak

Lower tiers paraphrase more, but the captions keep the same structure, subjects and quoted text. Each caption takes about 9–15 s on an M5 Max.

License#

Apache-2.0, as upstream. It is derived from Qwen/Qwen3.5-9B (Apache-2.0). This copy is not an official Black Forest Labs release.

Files

14 files · 5.97 GBWeights 5.95 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 14 files with their sha256
FileSizesha256
.gitattributes1.57 KB34448b82c17d60fec9b65b1f093c115ddbaadc04beb1b0140b6bfed2e012a930
README.md3.90 KB9e2566522bb87b3e74b523a513b4d5c526516edb1e7852020d9423c2f6513f64
chat_template.jinja7.76 KBa4aee8afcf2e0711942cf848899be66016f8d14a889ff9ede07bca099c28f715
config.json3.88 KBe5d0820d32f3ab431b2f85e68280960800e1852fd4337689b84479f09cae4c98
generation_config.json163 Be92258e3c39afbaa73fd53a98640c56f6d42fb091e1664697bd5396a1dcbb761
model-00001-of-00002.safetensors5.35 GBbdb437a6e7f9d551df2fd189701e5e8f0565142fd536f9ac867630ab7ee4aacf
model-00002-of-00002.safetensors600 MB3d079d5a645bc032513ae99c0e88660874094cf4cb8e6adec4383947a913b877
model.safetensors.index.json124 KB4518e4d98baed265cb25c5adb45839d5b69e0b9700f4bd573533392097bbb874
preprocessor_config.json443 B3a159dfec9978a186a72ba085e0ad6a050f3968d8b364218d7bd13f5c89381f2
processor_config.json1.19 KBd89ef49ce9cd37fbf510158e13c1ef063d9286411c1ec9049932dbe0487143b1
system_prompts.json12.6 KBb5da3ed8bc04ab59dbdb747930f7dbff847e868903fed8028f85ee1a4ac82fb4
tokenizer.json20.0 MB06b9509352d2af50381ab2247e083b80d32d5c0aba91c272ca9ff729b6a0e523
tokenizer_config.json1.16 KB7488550a894dcf741616126e322ea31d66cf9457b59ec5825f4c7efdced421f8
video_preprocessor_config.json550 Bbd96830cce1312679aa1f2ea43ed17da20e8ebbcea2398cfa64e2d275a96fdd7
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
34abfa0769 pinned now2026-11-15 05:16 UTC14 files · 5.97 GB

Use it

$ fw get mlx-community/flux-3-image-klein-pup-4bit
# manifest sha256 8da9f4445e7a… · 5.97 GB · 14 files
$ fw verify ./flux-3-image-klein-pup-4bit mlx-community/flux-3-image-klein-pup-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/flux-3-image-klein-pup-4bit.json --dir ./flux-3-image-klein-pup-4bit $ python3 fw.py verify ./flux-3-image-klein-pup-4bit ./mlx-community__flux-3-image-klein-pup-4bit.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/flux-3-image-klein-pup-4bit --revision 34abfa0769000d6a542169b0e61a04059697467c --local-dir ./flux-3-image-klein-pup-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/flux-3-image-klein-pup-4bit", revision="34abfa0769000d6a542169b0e61a04059697467c") model = AutoModelForImageTextToText.from_pretrained("mlx-community/flux-3-image-klein-pup-4bit", revision="34abfa0769000d6a542169b0e61a04059697467c", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve mlx-community/flux-3-image-klein-pup-4bit --revision 34abfa0769000d6a542169b0e61a04059697467c

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
9e2566522bb87b3e74b523a513b4d5c526516edb1e7852020d9423c2f6513f64
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.textSubject: flux-3-image-klein-pup-4bitDate: 2026-11-15Commit: 34abfa0Signed: 2DC28CC7B26A283B ✓
Upstream
mlx-community/flux-3-image-klein-pup-4bit
Pinned commit
34abfa0769000d6a542169b0e61a04059697467c
Manifest
flux-3-image-klein-pup-4bit.json · .minisig
Manifest sha256
8da9f4445e7ab43469ccf9bae0080fa4576f4e3815eca461cf1fad0c4d1df812
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/flux-3-image-klein-pup-4bit.json $ curl -O https://freeweights.allternit.com/manifests/mlx-community/flux-3-image-klein-pup-4bit.json.minisig $ minisign -Vm flux-3-image-klein-pup-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

black-forest-labs/flux-3-image-klein-pup · 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/flux-3-image-klein-pup-4bit
Open in Freeweights Studio

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

Signed manifest
minisign, key 2DC28CC7B26A283B. flux-3-image-klein-pup-4bit.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B