ComfyUI Node

Stack_Redux

Flux Redux Style Transfer With the Knobs Stock ComfyUI Doesn't Give You

By cardenluo·Created 2 years ago·Updated 18 days ago· 309
Stack_Redux
  • image
  • mask
  • redux_stack
  • redux_stack
style_modelflux1-redux-dev.safetensors
clip_visionsigclip_vision_patch14_384.safetensors
cropnone
sharpen0.0
patch_res16
style_strength1.00
prompt_strength1.00
blend_modelerp
noise_level0.00
guidance30.0

Flux Redux has a well-known problem: run it with the default stock ComfyUI workflow and you basically just get variations of your input image. One community member testing it early on put it exactly right - "running the default workflow in Comfy felt like I was just getting variations of the same image" - and had to build a custom setup just to get the strength dial fine enough to be useful, landing on something like 0.04-0.07 out of a 0-1 range before Redux started drowning out the text prompt entirely. Stack_Redux is Apt_Preset's answer to that: it wraps the same style-model + CLIP-vision mechanism but exposes a lot more surface area for actually controlling the balance between "look like the reference" and "listen to the prompt."

How it works. Redux takes a reference image, runs it through a CLIP vision encoder, and feeds that as style conditioning alongside your text prompt - no LoRA training, no fine-tune, just image-prompt conditioning bolted onto Flux. This node's style_strength and prompt_strength (both 0-2, default 1) are the direct fix for the "overwhelms the prompt" problem above: turn style_strength down and prompt_strength up if you're getting a near-copy of the reference instead of something that actually follows your text. blend_mode picks the algorithm doing that mixing - lerp is a straight linear blend that stays closest to the reference, feature_boost pushes toward more realistic detail, and frequency specifically emphasizes high-frequency texture over broad composition. crop controls what part of the reference actually gets used: center crops to the middle, mask_area restricts the style source to wherever your mask input is set (so you can pull style from just a piece of clothing or a background element instead of the whole image), and none uses it uncropped.

The finer controls are patch_res (how finely the reference gets divided into patches before encoding - higher means finer, more localized style transfer), sharpen (negative blurs the reference before use, positive sharpens it, 0 leaves it alone - useful if your reference photo is a bit soft and you want cleaner style signal), and noise_level, which the tooltip describes as a repair tool: adding a bit of random noise can smooth over erroneous details the style transfer introduced. guidance is Flux's usual guidance scale, exposed here at 0-100 (default 30).

Chaining and output. redux_stack as an optional input lets you feed the output of one Stack_Redux into another - layering multiple reference images with different settings before it all hits the sampler. The output is that same redux_stack type, consumed downstream.

Installing it. No special dependency for this node beyond the base pack - git clone https://github.com/cardenluo/ComfyUI-Apt_Preset into custom_nodes, restart, or search the pack title in ComfyUI Manager. What you do need is the actual Redux model files, same ones any stock Redux setup uses: flux1-redux-dev.safetensors in models/style_models, and sigclip_vision_patch14_384.safetensors in models/clip_vision. Neither ships with the pack - grab them from Black Forest Labs' HuggingFace repo if you don't already have a Flux setup with Redux working.

Troubleshooting. If your output looks like a near-identical copy of the reference image regardless of your prompt, that's the classic Redux failure mode described above - bring style_strength down and prompt_strength up, and try feature_boost or frequency instead of lerp if you want more of your prompt's own detail to show through. If style transfer is bleeding in stuff you didn't want from the reference (a background, an outfit you weren't targeting), set crop to mask_area and wire in a mask covering just the part you want. And if the output looks artifact-y or oddly textured, try backing sharpen toward zero before reaching for noise_level - sharpening a soft reference too aggressively before encoding is a more common cause than the model itself misbehaving.

CategoryApt_Preset/stack/😺backup

Inputs (13)

NameTypeDefaultDescription
style_modelCOMBOflux1-redux-dev.safetensors0 options:
clip_visionCOMBOsigclip_vision_patch14_384.safetensors0 options:
cropCOMBOnone裁剪模式:center-中心裁剪, mask_area-遮罩区域裁剪, none-不裁剪
sharpenFLOAT0.0-5–5锐化强度:负值为模糊,正值为锐化,0为不处理
patch_resINT161–64patch分辨率,数值越大分块越细致
style_strengthFLOAT1.000–2风格强度,越高越偏向参考图片
prompt_strengthFLOAT1.000–2文本提示词强度,越高文本特征越强
blend_modeCOMBOlerp风格强度的计算方式: lerp - 线性混合 - 高度参考原图 feature_boost - 特征增强 - 增强真实感 frequency - 频率增强 - 增强高频细节
noise_levelFLOAT0.000–1添加随机噪声的强度,可用于修复错误细节
imageoptIMAGE
maskoptMASK
guidanceoptFLOAT30.00–100
redux_stackoptREDUX_STACK

Outputs (1)

NameTypeDescription
redux_stackREDUX_STACK