Nodes/RES4LYF/ReChromaPatcherAdvanced
ComfyUI Node Runs on cloud

ReChromaPatcherAdvanced

RES4LYF's block-level style patch for Chroma

By ClownsharkBatwing·Created 2 years ago·Updated 18 days ago· 1,222
ReChromaPatcherAdvanced
  • model
  • model
doublestream_blocksall
singlestream_blocksall
style_dtypefloat64
enabletrue

Chroma is the model this node was built to actually get used on. It's the uncensored, Apache-2.0, community-trained fork of Flux.1-schnell that a lot of people reach for specifically because Flux Dev won't touch NSFW and won't let you finetune the weights commercially - and RES4LYF's style-transfer and dual-guide system has been credited by name in some of the highest-scoring Chroma workflow shares floating around. ReChromaPatcherAdvanced is what hooks that machinery into a Chroma model, with block-level control over exactly where in the network the style guide gets to act.

What it's doing

RES4LYF's style-transfer nodes need to inject an extra "style guide" pathway into the model's forward pass, and Chroma's transformer block layout is its own thing - close to Flux's under the hood, but different enough (and different enough from AuraFlow's or SD3.5's) that RES4LYF ships a dedicated patcher per architecture rather than one generic patch. This is the advanced variant, meaning instead of an on/off toggle you get to choose which of Chroma's double-stream and single-stream blocks the style signal is allowed to touch. Restrict it to earlier double-stream blocks and you're mostly steering composition; push it into later single-stream blocks and you're closer to a fine-detail or texture pass. There's no non-advanced "ReChromaPatcher" in the pack - if you want the plain on/off version, just leave both block fields at their default.

The inputs and outputs that matter

  • model (MODEL, required) - your loaded Chroma model.
  • doublestream_blocks (STRING, default "all") - which double-stream transformer blocks get patched. A comma-separated list or range of block indices; leave at "all" unless you have a specific reason to narrow it.
  • singlestream_blocks (STRING, default "all") - same, for the single-stream blocks.
  • style_dtype (default float64) - the numeric precision the style computation runs at, independent of your model's own dtype. float64 is the safe, precise default; drop to bfloat16 if you're VRAM-constrained and willing to trade a little precision for headroom.
  • enable (BOOLEAN, default true) - bypass switch, useful for A/B-ing whether the patch is doing anything without rewiring the graph.

Output: a patched model, wired onward to your sampler like any other model output.

How to install it

Comes with the RES4LYF pack - no separate install step. Via ComfyUI Manager: search "RES4LYF", install, restart. Manually:

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

(swap pip for your portable install's embedded pip.exe on Windows). You'll need Chroma's weights yourself - RES4LYF doesn't ship them - and be aware Chroma at 8.9B parameters on Flux-family architecture is meaningfully slower than SDXL and painfully slow on 12GB cards without quantization, independent of anything this node does.

Common issues & troubleshooting

You don't know where to start with the block strings. Leave both at "all" first - confirm the style effect looks right at the default before narrowing anything. Change one field, keep the seed fixed, compare; don't touch both ranges at once or you won't know which change did what.

A block range does nothing. These are free-text fields, no validation on the index range - a typo or an index outside Chroma's actual block count will silently fail to do what you intended rather than throwing an obvious error. If narrowing seems inert, double-check the string parsed the way you meant.

Slow generation, and you're not sure if it's this node. Chroma itself is the slower model in the room; float64 on just the style pathway is a comparatively small add-on. If you're chasing speed, quantize Chroma first (a common complaint on 12GB cards) before assuming the patcher's precision setting is your bottleneck.

Wrong patcher for the model. Chroma shares a lot of DNA with Flux under the hood, but it's not the same weights, and RES4LYF's per-architecture patchers aren't interchangeable - use ReFluxPatcherAdvanced for actual Flux checkpoints and this one for Chroma, not the other way around.

CategoryRES4LYF/model_patches

Inputs (5)

NameTypeDefaultDescription
modelMODEL
doublestream_blocksSTRINGall
singlestream_blocksSTRINGall
style_dtypeCOMBOfloat645 options: default, bfloat16, float16, float32, float64
enableBOOLEANtrue

Outputs (1)

NameTypeDescription
modelMODEL