More faithful prompt adherence for FLUX.2 Klein 9B
Details
Download Files
About this version
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.

