Nodes/SeargeSDXL/FreeU v2
ComfyUI Node Runs on cloud

FreeU v2

Free quality bump, bolted into the Searge data stream

By SeargeDP·Created 3 years ago·Updated 2 years ago· 874
FreeU v2
  • data
  • data
freeu_mode
b11.30
b21.40
s10.90
s20.20
freeu_version

FreeU is one of those rare "free lunch" tricks in diffusion - it can sharpen detail and clean up your images without a bigger model, extra steps, or any more VRAM. SeargeFreeU is Searge's wrapper around it, tuned so you don't have to think in raw scaling factors unless you want to. Pick a preset, and it applies FreeU (v1 or v2) to whatever model is flowing through the workflow.

The "free" in FreeU is literal. It reweights the UNet's own internals during sampling - nudging up the contribution of the model's backbone features while damping the noisy skip-connection features - and that rebalance tends to produce crisper, better-composed results at no runtime cost. It's not magic and it's not always an improvement, but it's cheap enough to just try. This node lives under Searge/UI/Inputs, meaning it's part of the current v4.x workflow, not a deprecated leftover - Searge added FreeU support in v4.2 and the v2 variant plus these presets in v4.3.

How it works

FreeU touches two things inside the UNet at two scales. The b1/b2 values scale the backbone features (the model's own denoising signal); the s1/s2 values scale the skip-connection features (the higher-frequency detail passed forward from earlier layers). Push the backbone up and the skips down a bit, and you get less high-frequency noise and more coherent structure. FreeU v2 is a refinement of the same idea with a slightly different normalization - the pack lets you switch between them.

Rather than make you dial four floats blind, SeargeFreeU ships presets. Choose sdxl or freeu_v2-sdxl for values already sensible for SDXL, subtle or detailed to lean the effect one way, none to switch it off, or custom when you actually want to set the numbers yourself.

The inputs and outputs that matter

  • freeu_mode - the preset picker: none, custom, default, subtle, sdxl, freeu_v2-sdxl, detailed, sd-2.1, sd-1.5. This is the one input most people ever touch. Set it and move on.
  • freeu_version - freeu_v1 or freeu_v2. For SDXL, v2 is the usual pick.
  • b1, b2, s1, s2 - the backbone and skip scaling factors, only meaningful when freeu_mode is custom (b1 1.0–1.4, b2 1.2–1.6, s1/s2 0–1).

The node has one connector: an optional data input and a data output, both the SRG_DATA_STREAM type. That stream is the spine of the v4 workflow - a single wire that carries all your settings from node to node so the graph isn't a spaghetti of individual connections. FreeU reads the stream, adds its settings, passes it along.

How to install it

ComfyUI Manager: search SeargeSDXL, install, restart. Manual: run python -m pip install opencv-python once in ComfyUI's Python env (a required dependency people forget), then cd ComfyUI/custom_nodes && git clone https://github.com/SeargeDP/SeargeSDXL.git and restart. Windows portable has an installer script.

No model download for FreeU itself - it's a pure algorithmic tweak on the model already loaded.

Where people get burned

  • Expecting a miracle. FreeU shifts contrast and detail; it doesn't fix a bad prompt or a wrong sampler. On some images it flattens things or oversharpens. Compare a batch with it on and off before deciding it's an upgrade.
  • v1 numbers on v2. The two versions don't share a scale - a custom value that looked good on v1 can be too strong on v2. If you're hand-tuning, tune per version.
  • Wiring it standalone. It only does anything inside the Searge v4 workflow via the data stream. Dropped into a bare graph with nothing reading the stream, it's a no-op. If you want plain FreeU outside this pack, ComfyUI's own FreeU node is the drop-in.
CategorySearge/UI/Inputs

Inputs (7)

NameTypeDefaultDescription
freeu_modeCOMBO9 options: none, custom, default, subtle, sdxl, freeu_v2-sdxl, +3
b1FLOAT1.301–1.4
b2FLOAT1.401.2–1.6
s1FLOAT0.900–1
s2FLOAT0.200–1
freeu_versionCOMBO2 options: freeu_v1, freeu_v2
dataoptSRG_DATA_STREAM

Outputs (1)

NameTypeDescription
dataSRG_DATA_STREAM