CoolFace
Modelpublic

ChrisColeTech/flux2-dev-turbo-GGUF

sourceHugging Faceunknownupdated 2mo agoView on Hugging Face
1likes488downloads
Model Card

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.

ParameterProduction valueMeaning
width1024Output width in pixels
height1024Output height in pixels
steps12Denoising steps (dynamic-shifted schedule)
guidance2.5Embedded guidance (txt2img)
guidance (img2img)3.5Stronger prompt adherence for restyling
strength0.7img2img denoise strength (0.85 for style transfer)

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

FileSizeRole
split/gguf/flux2-dev-turbo-Q4_K_M-mixed.gguf21.02 GBmerged turbo transformer, mixed-precision Q4-class — fits 32 GB at 1024²; the tier these settings were measured on
split/gguf/flux2-dev-turbo-Q6_K.gguf26.73 GBmerged turbo transformer, uniform Q6_K (needs >32 GB at 1024²)
split/gguf/flux2-dev-turbo-Q8_0.gguf34.47 GBmerged turbo transformer, uniform Q8_0 (server/RunPod tier)
split/text_encoders/Ministral-3-14B-Instruct-2512-Q3_K_S.gguf6.07 GBtext encoder
split/text_encoders/mmproj-Ministral-3-14B-Instruct-2512-F16.gguf878 MBmultimodal projector (vision path, optional)
split/vae/diffusion_pytorch_model.safetensors336 MBVAE
split/text_encoders/config/≈34 MBtokenizer + encoder configs

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 unknown in this repo's metadata. Refer to the upstream licenses for redistribution and commercial-use terms — the FLUX.2-dev base is non-commercial.