Skip to content

FLUX.2 Klein

View markdown

FLUX.2 Klein is the lightweight branch of Black Forest Labs’ FLUX.2 family. While FLUX.2 Dev/Pro/Flex/Max target maximum fidelity at 32B parameters, Klein scales the same architecture down to 4B and 9B parameters and ships in two flavours per size: a distilled few-step variant for sub-second generation, and a base variant that trades speed for the standard 50-step classifier-free guidance pipeline.

FLUX.2 Klein 9b — mountain sunset

Klein is FLUX.2’s rectified flow transformer compressed into 4B- and 9B-parameter checkpoints. Each size comes in two variants:

  • Distilled (4b, 9b) — step-distilled to produce a finished image in 1–4 inference steps. Optimised for latency. No guidance_scale parameter — guidance is baked into the distillation.
  • Base (base-4b, base-9b) — undistilled checkpoints that run the full 1–50 step diffusion pipeline with adjustable guidance_scale. Slower, but exposes the classic levers for fine-tuning prompt adherence.

All Klein variants accept the same 32K-token prompts as the rest of the FLUX.2 family and support the 17 built-in style_preset values.

Variant Job type Best for Typical time Price
9b distilled inference.flux-2.klein.9b.txt2img.v1 Best quality at low latency ~1s $0.010–0.015
4b distilled inference.flux-2.klein.4b.txt2img.v1 Fastest generation, prototyping ~0.5s $0.010–0.015
base-9b inference.flux-2.klein.base-9b.txt2img.v1 Highest quality in the Klein range ~6s $0.020–0.030
base-4b inference.flux-2.klein.base-4b.txt2img.v1 Tuning prompt adherence at low cost ~3.5s $0.015–0.020
default inference.flux-2.klein.txt2img.v1 Sensible default (alias of 4b distilled) ~0.5s $0.010–0.015

The unversioned klein.txt2img.v1 and klein.img2img.v1 job types are stable aliases — currently routed to the 4b distilled variant for the best latency/cost tradeoff. Pin to a specific size (4b, 9b, base-4b, base-9b) when you need consistent output across calls.

Feature FLUX.2 Dev FLUX.2 Klein 9b FLUX.2 Klein 4b
Parameters 32B 9B 4B
Generation time (txt2img) ~3s ~1.5s ~0.5s
Price $0.010–0.015 $0.010–0.015 $0.010–0.015
Max resolution 1920px 2048px 2048px
Distilled (few-step) variant No Yes (9b) Yes (4b)
Base variant with guidance_scale Yes Yes (base-9b) Yes (base-4b)
Style presets 17 17 17
Max prompt length 32K tokens 32K tokens 32K tokens
HEX colour control Yes Yes Yes

Klein matches FLUX.2 Dev on prompt handling and feature set. The tradeoff is fidelity — for portraits, text-in-image, and complex multi-subject compositions, Dev/Pro/Flex/Max still produce noticeably better output. Klein wins when you need many images per second or low-cost prototyping.

  • Interactive UIs — sub-second generation is fast enough to feel real-time in a prompt-and-preview loop
  • Batch generation at scale — generate hundreds or thousands of images for synthetic data, A/B testing, or content libraries
  • Prototyping prompts — iterate on a prompt with the 4b distilled variant, then graduate to FLUX.2 Pro or Max for the final render
  • Cost-sensitive workloads — same flat per-call price as Dev, with much lower latency
  • Tuneable guidance — when you need guidance_scale to steer prompt adherence, the base-4b and base-9b variants give you that lever without leaving the Klein price band

For final-quality, photorealistic, or text-heavy output, prefer FLUX.2 Pro/Flex/Max or Recraft V4 for native text rendering.

Text-to-image:

Job type Description ETA
inference.flux-2.klein.txt2img.v1 Default (aliased to 4b distilled) ~0.5s
inference.flux-2.klein.4b.txt2img.v1 4B distilled — fastest ~0.5s
inference.flux-2.klein.9b.txt2img.v1 9B distilled — best quality at low latency ~1.5s
inference.flux-2.klein.base-4b.txt2img.v1 4B base — tuneable steps and guidance ~3.5s
inference.flux-2.klein.base-9b.txt2img.v1 9B base — highest quality ~6s

Image-to-image:

Job type Description ETA
inference.flux-2.klein.img2img.v1 Default (aliased to 4b distilled) ~0.5s
inference.flux-2.klein.4b.img2img.v1 4B distilled img2img ~0.5s
inference.flux-2.klein.9b.img2img.v1 9B distilled img2img ~2s
inference.flux-2.klein.base-4b.img2img.v1 4B base img2img ~5s
inference.flux-2.klein.base-9b.img2img.v1 9B base img2img ~8s

All img2img variants accept up to 8 input images, each ≤1920x1920px.

Common to all Klein variants:

  • prompt (required) — text description, up to 32K tokens
  • width / height — output dimensions, 512–2048px
  • style_preset — one of 3d-model, analog-film, anime, cinematic, comic-book, digital-art, enhance, fantasy-art, isometric, line-art, low-poly, neon-punk, origami, photographic, pixel-art, texture, craft-clay
  • seed — integer for reproducible results

Distilled variants (4b, 9b, default) only:

  • steps — 1–4 (default: 4). Distilled inference is fastest at 4 steps; lower values trade quality for speed

Base variants (base-4b, base-9b) only:

  • steps — 1–50 (default: 50). More steps = more refinement
  • guidance_scale — 1.0–10.0 (default: 4.0). Higher = more prompt-adherent, lower = more creative

Image-to-image (all variants):

  • images — optional array of input image filenames. Up to 8 images. When omitted, the first multipart input part is used and the output matches its dimensions
  • Pick the variant for the job: if you’re iterating, use 4b distilled. If the prompt looks ready, render the final at base-9b for an extra quality bump without changing the model family
  • Use style_preset rather than style keywords: the built-in presets (e.g. photographic, cinematic) produce more consistent results than appending “photorealistic, 4k” to your prompt
  • Reach for base-* when distilled output drifts: if a distilled variant ignores part of your prompt, the base variant’s guidance_scale (try 5–7) typically pulls the model back on-prompt
  • Seed for reproducibility: Klein supports seeds across all variants — pin a seed when you’re A/B testing prompts to isolate the effect of wording changes

Fast text-to-image (4b distilled, default):

{
"type": "inference.flux-2.klein.txt2img.v1",
"config": {
"prompt": "A serene mountain landscape at sunset, photorealistic, 4k",
"width": 1024,
"height": 1024
}
}

Higher quality at low latency (9b distilled):

{
"type": "inference.flux-2.klein.9b.txt2img.v1",
"config": {
"prompt": "A serene mountain landscape at sunset, photorealistic, 4k",
"width": 1024,
"height": 1024,
"style_preset": "photographic",
"seed": 42
}
}

Maximum quality with tuneable guidance (base-9b):

{
"type": "inference.flux-2.klein.base-9b.txt2img.v1",
"config": {
"prompt": "A serene mountain landscape at sunset, photorealistic, 4k",
"width": 1024,
"height": 1024,
"steps": 50,
"guidance_scale": 4.5
}
}

FLUX.2 Klein base-9b — same prompt rendered with the 50-step pipeline

Image-to-image (default 4b distilled):

{
"type": "inference.flux-2.klein.img2img.v1",
"config": {
"prompt": "Same scene as input but at midday with bright blue sky, photorealistic, 4k"
}
}

FLUX.2 Klein img2img — the sunset landscape transformed to midday