ChrisColeTech/flux2-dev-turbo-GGUF
FLUX.2 dev Turbo — merged GGUF
The 32B FLUX.2 dev transformer with the fal Turbo LoRA merged into the weights — one GGUF file per quant tier, 12 steps, ≈85 s per 1024² image on an RTX 5090.
What this repo is: true merged turbo checkpoints (base ⊕ Turbo LoRA at full precision, then quantized), plus the Ministral text encoder and VAE they need — weights only, not a retrain. No runtime LoRA required: load the transformer and generate. The Q4-class file uses a mixed-precision recipe that exists for a measured reason — see the gotchas.
Samples
<table> <tr><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/apple.png" width="380" alt="prompt: a red apple on a rustic wooden table beside a window, soft daylight, fine skin texture and wood grain, studio photograph, sharp focus — 1024×1024, 12 steps, guidance 2.5, seed 12345"></td><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/portrait.png" width="380" alt="prompt: portrait of an older fisherman with a weathered face, natural window light, shallow depth of field, photorealistic — 1024×1024, 12 steps, guidance 2.5, seed 99"></td></tr> <tr><td><sub>prompt: a red apple on a rustic wooden table beside a window, soft daylight, fine skin texture and wood grain, studio photograph, sharp focus — 1024×1024, 12 steps, guidance 2.5, seed 12345</sub></td><td><sub>prompt: portrait of an older fisherman with a weathered face, natural window light, shallow depth of field, photorealistic — 1024×1024, 12 steps, guidance 2.5, seed 99</sub></td></tr> <tr><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/street.png" width="380" alt="prompt: a rain-slicked Tokyo street at night, neon signs reflecting in puddles, cinematic, 35mm photograph — 1024×1024, 12 steps, guidance 2.5, seed 1234"></td><td></td></tr> <tr><td><sub>prompt: a rain-slicked Tokyo street at night, neon signs reflecting in puddles, cinematic, 35mm photograph — 1024×1024, 12 steps, guidance 2.5, seed 1234</sub></td><td></td></tr> </table>
img2img
One source (generated by this same build), three prompts, identical settings — the difference you see is the prompt.
<table> <tr><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/img2img-source.png" width="230" alt="source: alpine lake at golden hour"></td><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/img2img-oil.png" width="230" alt="oil render"></td><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/img2img-watercolor.png" width="230" alt="watercolor render"></td><td><img src="https://huggingface.co/ChrisColeTech/flux2-dev-turbo-GGUF/resolve/main/samples/img2img-sketch.png" width="230" alt="sketch render"></td></tr> <tr><td><sub>source — txt2img output of this build (a dramatic mountain landscape at golden hour, snow-capped peaks, alpine lake reflection, photorealistic, 35mm photograph, seed 42)</sub></td><td><sub>img2img prompt: An oil painting of a dramatic mountain landscape at sunset, thick impasto brushstrokes — 1024×1024, 12 steps, guidance 3.5, strength 0.85, seed 42</sub></td><td><sub>img2img prompt: A watercolor painting of a mountain valley at dawn, soft wet-on-wet washes — 1024×1024, 12 steps, guidance 3.5, strength 0.85, seed 42</sub></td><td><sub>img2img prompt: A detailed pencil sketch of a mountain landscape in warm sepia and sanguine tones — 1024×1024, 12 steps, guidance 3.5, strength 0.85, seed 42</sub></td></tr> </table>
strength 0.7 (the production default) preserves more of the source and reads as a lighter restyle; 0.85 is the value for a genuine change of medium. At either value the composition — peaks, valley, lake, reflection — survives.
Recommended settings
Values these weights are run with in practice.
Supported modes: txt2img, img2img
Notes and gotchas
- Why the Q4-class file is "mixed": a uniform Q4_K bake of merged turbo weights is broken. The merged turbo delta averages ≈0.065% of weight magnitude; Q4K's per-element quantization step on these tensors is ≈3–7%. Quantizing the merged weights uniformly at Q4K shreds the delta into a structured-noise residue — a fine crackle/debris texture across flat image regions (walls, skin, sky). Uniform Q6K is clean but does not fit a 32 GB card at 1024². `flux2-dev-turbo-Q4KM-mixed.gguf` therefore keeps the Q4KM bulk but holds the artifact-carrying tensors — single-block `linear2`, the attention out-projections, and every modulation/embedding/conditioning tensor — at Q6K/Q8_0. Verified equivalent to an exact-delta (runtime-LoRA) reference in same-seed A/B tests; 21.0 GB, ≈22.6 GB VRAM peak at 1024².
- 12 steps on the standard dynamic schedule, not 8 turbo sigmas. With the published 8-step sigma schedule this Q4-class build ghosts (double exposure); 12-step dynamic is the verified preset. Executed img2img steps are
steps × strength— schedule more if you lower strength. - The 14B Ministral text encoder runs on CPU in the reference setup — moving a GGML-loaded encoder to CPU after encode does not free its VRAM, so it lives on CPU permanently. Prompt encode costs a few seconds.
- Distilled weights are quantization-sensitive: a uniform Q3KM bake of dev+turbo produced pure noise mosaics, while the base model at Q3KM is fine. Do not requantize these files downward.
Layout
Components ship as separate files: the merged transformer GGUF (pick one quant tier), the text encoder GGUF (+ tokenizer under split/text_encoders/config/), and the VAE. Any GGUF-capable Flux2 loader that accepts explicit per-component paths can consume this directly — no LoRA handling required.
A generic diffusers snippet is deliberately omitted. This is a split layout with a substituted encoder, so an upstream example will not load it unmodified.Files
Provenance
- Upstream base model: `black-forest-labs/FLUX.2-dev` (upstream license: FLUX.2-dev Non-Commercial License)
- Turbo LoRA: `fal/FLUX.2-dev-Turbo`, merged at full precision before quantization
- This build: base ⊕ LoRA merged in float32 from a Q6_K dequant of the base, written to an F16 master, then quantized per tier (mixed-precision recipe for the Q4-class file). Weights are not retrained.
- License: left as
unknownin this repo's metadata. Refer to the upstream licenses for redistribution and commercial-use terms — the FLUX.2-dev base is non-commercial.
