Style Model Advanced Apply
Five dials for Flux Redux that the stock node won't give you
- conditioning
- style_model
- clip_vision_output
- CONDITIONING
It's a drop-in StyleModelApply with opinions
StyleModelAdvancedApply is a replacement for ComfyUI's built-in StyleModelApply node, aimed at Flux Redux workflows. Where the stock node hands you a single strength and calls it a day, this one splits the Redux image conditioning into five named slices - style, color, content, structure, texture - gives each one a weight, and throws in a similarity check that decides when your prompt text gets to override the reference image. It comes from tanglup's Comfyui_Flux_Style_Adjust pack, which is the author's follow-up to their earlier Comfyui_Redux_Advanced.
Before you get excited, read the disclaimer in the README. The author's own words: "there is no basis for this weight separation, I just want to try it out for learning… This is an inaccurate node." That's not false modesty, that's the spec. This is an experiment someone shipped for fun and education, and knowing that going in is half the battle.
The Redux problem it's poking at
Flux Redux is BFL's official image-variation adapter: you encode a reference image through Clip Vision, load the Redux style model, and it steers generation toward that image. It's genuinely strong at style transfer - the community's big style-transfer comparison found Redux paired with flux-depth-dev "perhaps showed the strongest overall performance in carrying over style." But it's a blunt instrument. Redux can overwhelm your prompt without much help; people quickly found that cranking its conditioning strength much past the low single digits just yields a variation of the input. This node attacks from the other side: instead of one global strength, it tries to let the prompt edit parts of the image conditioning while the rest stays.
How it actually works
Read the source and the mechanism is plain. The style model's get_cond() produces 4096-dimension image features. Your prompt conditioning gets mean-pooled down to one vector and pushed through a small linear projector to match. Then the 4096-dim vector is chopped into five consecutive slices of roughly 819 dimensions, labeled style/color/content/structure/texture. For each slice it computes a blended similarity against the prompt text - 0.4 cosine, 0.2 L2 distance, 0.2 dot product, 0.2 attention - and if that score clears similarity_threshold, the slice is replaced by the text features (scaled by the region weight and an enhancement factor). Below the threshold, the original image slice survives, just multiplied by its weight. The five slices get stitched back together and appended to your conditioning, which is why the output is a CONDITIONING that wires straight into the sampler.
That's the whole trick. It's also exactly where to manage expectations: splitting a 4096-dim vector into five named chunks is not how SigLIP organizes meaning, so "style" and "texture" here are labels on consecutive feature ranges, not semantic regions. The author is upfront that it's arbitrary.
The inputs that matter
- conditioning - your prompt text conditioning.
- style_model - the Redux STYLE_MODEL from the standard style model loader.
- clip_vision_output - your reference image through ClipVisionEncode.
- similarity_threshold (0.7) - the cutoff. Above it, that region gets swapped for text features; below, the image wins.
- style / color / content / structure / texture weight (all default 1.0, range 0–10) - per-region multipliers.
- enhancement_base (1.5) - how hard the text replacement pushes when it fires.
For a first session, leave the five weights at 1 and play with similarity_threshold. Too high and nothing gets replaced (pure Redux variation); too low and the prompt text stomps everything and you've basically turned off the reference. Start at 0.7, move it down in 0.05 steps until the prompt starts to bite.
Installing it
No model downloads and no extra Python dependencies - the pyproject.toml lists nothing beyond stock ComfyUI. The Redux style model and clip vision both come from ComfyUI's normal loaders. Install with Manager (search "Comfyui_Flux_Style_Adjust") or:
cd ComfyUI/custom_nodes
git clone https://github.com/tanglup/Comfyui_Flux_Style_Adjust
Restart ComfyUI, and the node shows up under conditioning/style_model. The pack ships example workflows (semantic replacement, two-image fusion) worth loading to see the intended shape.
Should you reach for it?
As a learning toy, absolutely - it's free, it's tiny, and poking at what Redux conditioning actually is teaches you more than any tutorial. But it's not the node to build a money workflow on. If you need reliable style control on Flux, the stock StyleModelApply with a carefully tuned Redux strength is more predictable, and for identity work PuLID-Flux is the tool people actually rely on. Use this one to learn, to experiment, and to have a bit of fun mixing images - the author would agree.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| conditioning | CONDITIONING | — | |
| style_model | STYLE_MODEL | — | |
| clip_vision_output | CLIP_VISION_OUTPUT | — | |
| style_weight | FLOAT | 1.000–10 | 控制整体艺术风格的权重 |
| color_weight | FLOAT | 1.000–10 | 控制颜色特征的权重 |
| content_weight | FLOAT | 1.000–10 | 控制内容语义的权重 |
| structure_weight | FLOAT | 1.000–10 | 控制结构布局的权重 |
| texture_weight | FLOAT | 1.000–10 | 控制纹理细节的权重 |
| similarity_threshold | FLOAT | 0.700–1 | 特征相似度阈值,超过此值的区域将被替换 |
| enhancement_base | FLOAT | 1.51–3 | 文本特征替换的基础增强系数 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |