ComfyUI Node

Krea 2 attention

The one-knob Krea 2 patch that makes your prompt actually show up

By Extraltodeus·Created about a month ago·Updated about a month ago· 4
Krea 2 attention
  • model
  • MODEL
strength1.00

If you've run Krea 2 Turbo for more than an afternoon, you've seen it: a gorgeous image that has nothing to do with what you typed. Prompt adherence is Krea 2's known weak spot - the open weights shipped with an alignment pass that flattened follow-through, and Turbo (the 8-step, CFG-1 distilled version) makes it worse. This pack is a tiny knife for exactly that problem.

It's one node, "Krea 2 attention", and it's the opposite of the typical custom node: there's nothing to download, no LoRA file, no model to fetch. It's a model patch that scales Krea 2's text-fusion projector. Extraltodeus (a long-time ComfyUI contributor with a pile of other packs on his GitHub) built it from Beinsezii's Projector Scale LoRA - he compared that LoRA against the base weights and noticed the values were too similar to the originals to be anything but a multiplier. So he turned the multiplier into a knob.

How it works

Under the hood it's almost embarrassingly simple, which is the point. The node grabs one weight out of the model's state dict - diffusion_model.txtfusion.projector.weight, the layer that maps your Qwen3-VL text embeddings into the transformer - clones the model, and applies a patch that multiplies that projector weight by your strength value. Higher strength means the text conditioning pushes harder on the image. That's the whole mechanism.

Because it's a patch applied at sampling time, there's no merge step and nothing written back to disk. Your checkpoint stays untouched; the scale happens in memory when you queue the job. It's effectively the Beinsezii LoRA without the LoRA file.

The inputs that matter

This is about as minimal as ComfyUI gets: two inputs, one output.

  • model - a Krea 2 model (Raw, Turbo, or a Krea 2 finetune). It has to be Krea 2; the patch targets a key that only exists in that architecture.
  • strength - FLOAT, default 1.0, step 0.05. Default is a no-op. The author's own recommendation is 3.0, which he describes as "more balanced results in between more creativity and prompt following."

The output is a patched MODEL, which you wire straight into your sampler in place of the unpatched one - loader → this node → KSampler.

Install

Via ComfyUI Manager, search "ComfyUI-Krea2-attention-tweak" and hit install. Or the manual route:

cd ComfyUI/custom_nodes
git clone https://github.com/Extraltodeus/ComfyUI-Krea2-attention-tweak

Restart ComfyUI and you're done. No dependencies beyond torch (which you already have), no model files, no venv fiddling. The install is genuinely a 30-second job.

Where people get burned

  • Nothing changed. You left strength at 1.0, which is identity - the patch is doing exactly nothing. Raise it; try 2.0–4.0 and eyeball.
  • Wrong model. add_patches silently skips keys that aren't in the state dict, so feed it a Flux or SDXL checkpoint and the node just no-ops. It's a Krea 2 tool; use it on Krea 2.
  • The range is a lie. The slider goes to ±1e9, which is not an invitation. Past roughly 5 you oversaturate and start pushing raw text structure into the image. Treat 3.0 as the sane starting point, not the floor.
  • Documentation is thin. The README is one paragraph and the original release thread got roasted for being "0 info" - so trust the code (it's ~15 lines) and the 3.0 value, which is what the author actually runs.

Bottom line

It's a one-trick node, but the trick is genuinely useful if you live in Krea 2. It's free, it's instant, and it can't corrupt a checkpoint. If your Krea 2 renders keep drifting from the prompt, drop this between the loader and the sampler, set 3.0, and re-roll a couple of seeds. It's the cheapest prompt-adherence fix in the Krea 2 ecosystem.

Categorymodel/patch/krea2

Inputs (2)

NameTypeDefaultDescription
modelMODEL
strengthFLOAT1.00-1000000000–1000000000

Outputs (1)

NameTypeDescription
MODELMODEL