NO8DKrea2ReferenceModel
The model patch that makes Krea2 edit work
- model
- source_latent
- vae
- source_image
- MODEL
Krea 2 doesn't know what editing is. It knows text-to-image. So the Ostris Krea2 Edit method does something clever on the model side: it patches the model so that during sampling, a reference latent is fed in as a "clean source" token block - the model is told, effectively, "here is the thing you're editing, don't forget it." NO8DKrea2ReferenceModel is that patch, packaged as a node. You hand it a model and a source latent (the reference image's latent), and it returns a patched clone of the model that will consult that reference while it samples.
Mechanically, it adds the Identity Edit's frame-1 source-token block: a wrapper on the diffusion model's forward pass that injects the source tokens alongside the target, with the reference boosted by a strength factor. The interesting optional path: if you also provide a vae and source_image, the node encodes the image itself, using the training-matched fit geometry - cropping and scaling the source so it aligns with the target the way the edit method was trained to expect, rather than the naive resize that produces misaligned edits.
What you set
model- the Krea 2 model (UNET) you loaded.source_latent- the latent of the reference image you're editing from.ref_boost(optional) - how strongly the reference is weighted, default 1.0, range 0–1000. This is the "how much should the edit hold onto the source" dial. Start at 1.0; crank it if identity drifts, lower it if the reference is overpowering the edit.vae+source_image(optional) - provide both together and the node encodes the image to fit the target instead of relying on your source_latent. This is the better path when your source and target resolutions differ.
Output is MODEL - the patched clone, which you feed to the sampler in place of your original model. Wire the grounded conditioning from NO8DKrea2GroundedEncode alongside it and you have the full edit pipeline.
The honest picture
Like its encode sibling, this node is DEPRECATED and internal - its real job is powering NO8D-Generate's Krea2 Identity Edit path, which builds exactly this patch itself when it detects a Krea2 edit model. You'd hand-wire this node only if you're building an Ostris-style edit graph manually. And the community verdict on the whole technique applies: it's experimental. People report the edit can alter the input image, horizontal aspect ratios are the weak spot, and you often need the companion edit LoRA plus a carefully worded prompt (no smart quotes, for one) to keep the subject from duplicating. The patch is the mechanism; it is not a quality guarantee.
The one sharp gotcha: the patch's forward wrapper must actually run - a bare Krea 2 model without the edit setup feeding it won't magically edit, and a source latent of the wrong geometry will produce the misalignment the fit path exists to prevent. If your edit comes out warped, that's your first suspect.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/no8d/ComfyUI-NO8D-controls.git
python -m pip install -r requirements.txt
ComfyUI Manager → "NO8D-controls". No models bundled - bring the Krea 2 model, the Qwen3-VL CLIP, and the VAE yourself, plus the Ostris edit LoRA if you're chasing quality. Internal category, so search the full class name in the node menu.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| source_latent | LATENT | — | |
| ref_boostopt | FLOAT | 1.000–1000 | — |
| vaeopt | VAE | — | |
| source_imageopt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |