Nodes/Fat Mex Nodes/Fat Mex Reference Sampler
ComfyUI Node

Fat Mex Reference Sampler

Same face, new pose — no LoRA, no adapters

By FatMex·Created 7 months ago·Updated 7 months ago· 3
Fat Mex Reference Sampler
  • model
  • clip
  • vae
  • reference_image
  • images
  • latent
positive_prompt
negative_prompt
seed0
denoise0.75
preset_hintauto
steps0
cfg0.0
sampler_nameauto
schedulerauto
width0
height0

Want the same person in a different outfit, pose, or location without training a LoRA? That's this node's whole job. Feed it one reference image - a clean photo of the face you want to keep - and it generates from it while your prompt controls everything else. This is the "reference-guided generation" slot of the Fat Mex pack, and it's the trick you'll actually reach for when consistency matters more than novelty.

It replaces the manual VAEEncode + ReferenceLatent + CLIPTextEncode x2 + KSampler + VAEDecode chain. The mechanism is native reference-latent conditioning - the same trick that makes Flux 2 and Klein good at multi-reference work - not an IP-Adapter or FaceID on top. On Klein especially, this is the built-in way to keep an identity across generations.

How it works

The node does three things in sequence:

  1. Encodes the reference into a latent with your VAE and attaches it as reference_latents conditioning on the positive side. That latent is the identity signal the model pays attention to while sampling.
  2. Decides the starting point from denoise. Below 1.0 it starts from the VAE-encoded reference itself (img2img mode) and refines it - think "add detail, texture, change the vibe but keep the photo." At 1.0 it starts from an empty latent and treats the reference purely as conditioning - a new image that should look like the same person.
  3. Samples with the preset's defaults (preset_hint, or auto → Klein 9B settings), then decodes.

width/height default to 0 = same dimensions as the reference, which is usually what you want.

The dials that matter

  • denoise is the one you'll actually tune. 0.75 is the default and a sane starting point. Crank toward 1.0 when the reference is good but you want a genuinely new image; drop toward 0.5-0.6 when you want a subtle refinement of the reference itself.
  • reference_image - the photo doing the work. A clear, front-facing, well-lit shot gives you far more consistency than a tiny cropped face.
  • positive_prompt / negative_prompt - normal prompting rules apply; on these low-cfg models, restate constraints as presence rather than leaning on the negative.
  • preset_hint - match it to what you loaded in the Model Loader (Klein 9B is the pack's recommended pairing for fast reference generation).

Outputs are images and latent (the latter if you want to chain a refine or upscale pass).

Install

cd ComfyUI/custom_nodes
git clone https://github.com/FatMex/ComfyUI-FatMex-Nodes.git FatMex-Nodes
pip install -r FatMex-Nodes/requirements.txt

Or ComfyUI Manager → search "Fat Mex Nodes" → Install → restart.

Where people get burned

  • Reference conditioning is not a face clone. It holds identity loosely - great for "same woman, different outfit," weak for "must be pixel-identical to this exact person." If you need forensic likeness, add a face-swap pass (the pack's Fat Mex Face Swap fits right after this in the graph) or train a LoRA. The KB makes exactly this distinction: adapters/reference conditioning get you 80%, a post-process swap closes the gap.
  • Preset mismatch again. Loaded Qwen 2512 but left preset_hint on auto? You're sampling with Klein's settings. Match them.
  • Low-quality reference = low-quality identity. Garbage in, same-face-garbage out. If the reference is small or blurry, fix it before blaming the node.
CategoryFat Mex

Inputs (15)

NameTypeDefaultDescription
modelMODELThe model from Fat Mex Model Loader.
clipCLIPThe CLIP model.
vaeVAEThe VAE model.
reference_imageIMAGEThe reference image to guide generation.
positive_promptSTRINGDescribe what you want.
negative_promptSTRINGDescribe what you don't want.
seedINT00–18446744073709550000
denoiseFLOAT0.750–1Below 1.0 = img2img refinement from reference. 1.0 = full generation with reference conditioning.
preset_hintoptCOMBOauto8 options: auto, Klein 9B, Klein 9B True, Qwen Image Edit 2509, Qwen Image Edit 2511, Qwen Image 2512, +2
stepsoptINT00–100Override steps (0 = preset default).
cfgoptFLOAT0.00–100
sampler_nameoptCOMBOauto45 options: auto, euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, +39
scheduleroptCOMBOauto10 options: auto, simple, sgm_uniform, karras, exponential, ddim_uniform, +4
widthoptINT00–16384Output width (0 = same as reference).
heightoptINT00–16384Output height (0 = same as reference).

Outputs (2)

NameTypeDescription
imagesIMAGE
latentLATENT