FLUX.2 [klein] 4B

A Core AI bundle of black-forest-labs/FLUX.2-klein-4B for the Aether SDK (iOS and macOS 27+).

  • Source: black-forest-labs/FLUX.2-klein-4B at revision e7b7dc27f91deacad38e78976d1f2b499d76a294, licence Apache-2.0. The licence is included as LICENSE.
  • Changes from the source: converted from PyTorch to Core AI (.aimodel) by Aether forge (recipe flux2-klein-4b@3). Weights are int8-linear-perchannel (8-bit weights). Three assets per variant, run one after another: the text encoder (these weights, cut after decoder layer 27), the denoiser (these weights, float32 residual stream) and the image decoder (float16 weights, float32 compute, never quantized). The tokenizer files are the source's own.
  • Output: images from text prompts (imageOutput), 4 steps by default, no guidance.

Variants

Variant Platform Arch Compute Compiled Assets Download
macos-any-gpu macos any gpu no (specialized on first load) flux2_klein_4b-denoiser0.aimodel 1.9 GB, flux2_klein_4b-denoiser1.aimodel 1.28 GB, flux2_klein_4b-denoiser2.aimodel 1.44 GB, flux2_klein_4b-text.aimodel 3.12 GB, flux2_klein_4b-vae.aimodel 101.5 MB 7.87 GB
ios-any-gpu ios any gpu no (specialized on first load) flux2_klein_4b-denoiser0.aimodel 1.9 GB, flux2_klein_4b-denoiser1.aimodel 1.28 GB, flux2_klein_4b-denoiser2.aimodel 1.44 GB, flux2_klein_4b-text.aimodel 3.12 GB, flux2_klein_4b-vae.aimodel 101.5 MB 7.87 GB

Image sizes:

  • macos-any-gpu: 1024×1024 (default), 512×512, 768×768, 1024×768, 768×1024, 1344×768, 768×1344
  • ios-any-gpu: 512×512 (default), 576×448, 448×576, 768×768, 1024×576, 576×1024, 1024×1024

ios-any-gpu needs the com.apple.developer.kernel.increased-memory-limit entitlement: its T2 run peaked at 4590 MB on iPhone18,2 (record e10b51c0). Its stages load one at a time.

Verification

Every row is a record in verification/ about exactly these bytes (matched by bundle digest). Reference rows are strict T2 passes of the unquantized export on the same fixture, in verification/reference/.

Variant Tier Result Detail Device OS build Compute Record
ios-any-gpu T2 pass 8/8 cases; profile quantized-8bit; image path SSIM ≥ 0.94; fixture 523d996477835636 iPhone18,2 24A437 target e10b51c0
macos-any-gpu T2 pass 8/8 cases; profile quantized-8bit; image path SSIM ≥ 0.94; fixture 523d996477835636 Mac17,6 26A428 target 2dbe813e
macos-any-gpu T3 pass imagegen-shapes-v1; 100.0% vs reference 100.0%; 100 items; judged by qwen3-vl-2b Mac17,6 26A428 target 10a8baac
unquantized reference (not published) T2 pass 8/8 cases; profile strict; image path SSIM ≥ 0.98; fixture 523d996477835636 Mac17,6 26A428 target 70d5bf8d

The quantized profile also requires: T2 strict on the unquantized reference export (met by the reference row).

Use

aether generate flux2-klein-4b --prompt "A lighthouse at dusk, watercolor" -o lighthouse.png
import Aether

let aether = try Aether()
let generator = try await aether.imageGenerator("flux2-klein-4b")
let image = try await generator.image(for: ImageRequest(prompt: "A lighthouse at dusk, watercolor"))
try image.pngData().write(to: URL(fileURLWithPath: "lighthouse.png"))
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for aether-models/flux2-klein-4b

Finetuned
(63)
this model