More faithful prompt adherence for FLUX.2 Klein 9B

Details

Download Files

Model description

UPDATE JAN 20TH, 2026

Since open source is all about honesty and transparency, I found errors that needed to be corrected on my initial release. Even though it worked to some extent, the code was undoing some of its own work due to a mean-recentering step I had in there.

What was happening:

Enhancement: scale=1.250, mag 893.77 -> 1117.21   ← Applied
Output change: mean=0.000000                      ← But final output unchanged

The enhancement was running internally, but the final tensor going to the sampler was nearly identical to input. If you got results before, it was mostly from edit_text_weight which bypassed this issue.

What changed:

New Old

text_enhance

magnitude

detail_sharpen

contrast

coherence_experimental

Removed (was unstable)

edit_blend_mode

Removed

active_token_end: 77 hardcoded

Auto-detect from attention mask

New presets for text-to-image:

              BASE   GENTLE   MOD   STRONG   AGG     MAX
              ----    ----    ----    ----    ----    ----
magnitude:    1.20    1.15    1.25    1.35    1.50    1.75
contrast:     0.00    0.10    0.20    0.30    0.40    0.60
normalize:    0.00    0.00    0.00    0.15    0.25    0.35
edit_weight:  1.00    1.00    1.00    1.00    1.00    1.00

New presets for image edit:

              PRESERVE   SUBTLE   BALANCED   FOLLOW   FORCE
              --------   ------   --------   ------   -----
magnitude:       0.85     1.00       1.10     1.20    1.35
contrast:        0.00     0.05       0.10     0.15    0.25
normalize:       0.00     0.00       0.10     0.10    0.15
edit_weight:     0.70     0.85       1.00     1.25    1.50

How to verify it actually works now:

Set debug: true. You should see non-zero output change:

Output change: mean=42.53, max=1506.23

If mean is 0, something is wrong.

Pull latest from the repo. Old workflows will break due to renamed parameters.

As for the 4B model, I want to first get a full grip on the 9B before moving to that. Different architecture needs different handling and I'd rather do it right than rush another release that needs fixing.

Same tip as before: if you don't get the desired result, don't change parameters immediately. Re-read your prompt first. If you must change parameters, fix the seeds and adjust gradually.

Also adjusted the second node called Detail Controller for regional emphasis:

- front_mult: first 25% of tokens (usually subject)

- mid_mult: middle 50% (usually details)

- end_mult: last 25% (usually style terms)

Optional node for fine control. Main enhancer covers most cases.

original post : here

repo: https://github.com/capitan01R/ComfyUI-Flux2Klein-Enhancer


Released a custom node for ComfyUI that modifies FLUX.2 Klein conditioning to improve prompt following and faithfulness, especially in image edit mode.

What I found:

FLUX.2 Klein outputs conditioning tensors of shape [1, 512, 12288]. Positions 0-77 contain the actual text embeddings with high variance (std ~40). Positions 77-511 are padding with low variance (std ~2).

This node only modifies the active region (0-77) and detects image edit mode automatically by checking for reference_latents in the metadata.

The settings that worked best for me on image edit:

text_enhance: 1.50

edit_text_weight: 2.00

everything else at default

For text-to-image the detail_sharpen parameter helps with separating concepts in complex prompts, but for image edit you mainly need text_enhance and edit_text_weight.

GitHub: https://github.com/capitan01R/ComfyUI-Flux2Klein-Enhancer

install via manager : ComfyUI-Flux2Klein-Enhancer

Let me know if you run into issues or have suggestions. The debug toggle prints tensor statistics so you can verify it's actually changing the conditioning and not just passing through.

Images made by this model

No Images Found.