Nodes//Nougan Flux 3 RefMod Apply 🎯
ComfyUI Node

Nougan Flux 3 RefMod Apply 🎯

Ref_strength, explained

By WinnouganΒ·Created 3 months agoΒ·Updated about 16 hours agoΒ· 10
Nougan Flux 3 RefMod Apply 🎯
  • positive
  • negative
  • extra_image
  • vae
  • positive
  • negative
  • empty_latent
β—„refmod_1β–Ύβ–Ί
β—„refmod_2β–Ύβ–Ί
β—„refmod_3β–Ύβ–Ί
β—„extra_image_megapixels1.00β–Ί
β—„ref_strength1.00β–Ί

Most "reference image" workflows give you one dial that means how much, and you spend an afternoon nudging 0.6 β†’ 0.55 β†’ 0.5 trying to keep the face while letting the pose go. Nougan Flux 3 RefMod Apply 🎯 gives you a different dial: how long.

What it is

It's the second half of the RefMod pair. Nougan Flux 3 RefMod Bake 🧬 writes your reference images' VAE latents into a file; this node takes positive conditioning, attaches up to three baked references (plus optionally a live image), and hands back conditioning. It also emits an empty_latent, so it can sit right where your Empty Latent Image used to be.

Why bother, versus plain Set Reference Multi Latent plus a VAE Encode? Because a baked reference is a file you can pick from a dropdown, describe by name, and reuse across a dozen workflows without re-encoding anything. That's the whole pitch, and for character work it's a good one - reference latents are the one part of a graph that genuinely never changes.

The mechanism

Under the hood it does what core does: conditioning["reference_latents"] += [vae.encode(reference), ...], on both positive and negative. Flux 3 has a dedicated image_cond stream for exactly this, and its text encoder is text-only, so there's no model patch and no edit LoRA in the loop. This is the simple one.

Then ref_strength changes the shape of the denoise. It's not an amplitude. The node builds two conditionings - one with the references, one without - and schedules them: refs steer the first ref_strength fraction of the steps, then the plain prompt finishes the image.

  • 1.0 (default) - references active every step. Maximum likeness, minimum prompt freedom.
  • 0.6 - refs drive the first 60% of steps, then the prompt takes over. Looser likeness, and your prompt gets to actually change the composition.
  • 0 - references off entirely.

That's a much better mental model than a strength slider, because it matches how early steps decide layout and late steps decide detail. If a reference is strangling your prompt, shorten its life rather than turning it down.

Inputs you'll actually touch

positive (required) and negative (optional) - from your text encode. Leave negative unwired and the node hands you back the positive for both outputs, which is occasionally what you want and usually a mistake. Wire both when your workflow has both.

refmod_1 (required, but None is a legal choice), refmod_2, refmod_3 - dropdowns of everything in models/refmods/flux3. Older bakes, other people's bakes, whatever's there.

extra_image + vae - a plain reference encoded on the fly, no baking required. extra_image_megapixels (default 1.0) sizes it. This is the "I just found this face on Pinterest and I want it now" path, and it needs the VAE connected or it can't do anything.

ref_strength - as above.

Outputs

  • positive, negative (CONDITIONING) - straight into your sampler.
  • empty_latent (LATENT) - zeros at the same spatial size as your first reference (or a plain 1024Γ—1024 if nothing is selected), so you can skip the Empty Latent node.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Winnougan/Nougan_Nodes
# restart ComfyUI

Or search Nougan in ComfyUI Manager. Nothing to pip install, no model downloads beyond the Flux 3 stack you already have. Restart, hard-refresh the browser, and let the node read the refmod library - if your dropdown says None and nothing else, you haven't baked anything yet.

Where people get burned

An empty dropdown. Bake a reference first, or your files aren't in models/refmods. Some users keep a NOUGAN_REFMOD_DIR folder elsewhere - the chat/refmod tooling checks that too.

Expecting a strength knob. ref_strength is a duration, not a volume. Dropping it to 0.3 doesn't "soften" the reference - it makes the last 70% of your image prompt-only, which can look like a different person wearing the same clothes.

Baking at 1MP Γ— 6 references and then wondering why the sampler crawls. Every reference adds tokens to every step in every block. Cut the count or bake smaller.

Using a Krea 2 or MOSS refmod here. They're distinct formats with their own metadata keys. The dropdown won't hide them from you, but they won't carry meaningful latents into a Flux 3 graph.

Setting ref_strength to 0 and expecting a plain generation. You'll get one - which is fine, but you may as well disconnect the node and save yourself the confusion.

CategoryNougan/RefMod

Inputs (9)

NameTypeDefaultDescription
positiveCONDITIONINGβ€”
refmod_1COMBO1 options: None
negativeoptCONDITIONINGβ€”
refmod_2optCOMBO1 options: None
refmod_3optCOMBO1 options: None
extra_imageoptIMAGEOptional plain reference(s), encoded on the fly. Needs the VAE.
vaeoptVAEOnly needed for extra_image.
extra_image_megapixelsoptFLOAT1.000–16β€”
ref_strengthoptFLOAT1.000–1How long the references stay active, as a fraction of the denoising steps counted from the start. 1.0 = every step (default, same as before). 0.6 = the references steer the first 60% of the steps, then the prompt alone finishes. 0 = references off. Lower = looser likeness and more prompt freedom.

Outputs (3)

NameTypeDescription
positiveCONDITIONINGβ€”
negativeCONDITIONINGβ€”
empty_latentLATENTβ€”