FL SeedVR2 1.4B Upscale
One-step upscale that adds detail instead of rewriting your image
- model
- vae
- images
- images
Upscaling in ComfyUI is really two different jobs that share a word: adding pixels and adding detail. FL SeedVR2 1.4B Upscale is firmly in the second camp. Feed it a soft or low-res image and it invents plausible fine detail - eyelashes, pores, fabric weave - without re-inventing the subject the way SUPIR-style restoration does. That "keeps it as it is" behavior is exactly why SeedVR2 became the community default upscaler and why this node is worth reaching for when an ESRGAN pass comes out plastic.
It's the working half of the small filliptm/ComfyUI-FL-SeedVR2 pack, and it rides ComfyUI's built-in SeedVR2 support rather than bundling its own implementation. Pair it with the pack's loader node (which auto-downloads the 1.4B model) and you have a two-node upscale workflow.
How it works
Behind the scenes the node runs the whole SeedVR2 pipeline for you: it resizes your image with Lanczos to the target scale, preprocesses it, encodes to latents in overlapping tiles, runs a single diffusion step (SeedVR2 is a one-step model - the sampler settings are fixed internally, so there are no step/cfg/sampler inputs to fiddle with and nothing to get wrong), decodes the latents back through the tiled VAE, and optionally color-corrects the result. Images in a batch are processed independently, with the seed nudged per image so a batch doesn't give you identical outputs. Alpha (RGBA) survives the trip.
The output is a standard IMAGE, so it plugs straight into a save node or back into a larger graph. Note the model is FP16 by default - the pack sidesteps the GGUF/FP8 quantization traps that damage SeedVR2 skin texture and leave tiling grids, since it pins the fp16 checkpoint.
The inputs you'll actually touch
- images (
IMAGE) - your input. This is the node you'd feed the output of a generation workflow, or an image loaded into the graph. - scale_multiplier (float, default
4, range 1–8) - output scale. 4x is the default and the sweet spot; the tooltip is honest that the model is intended for 2x–4x and "8x is supported but weaker." Going past 4x rarely buys you anything real. - seed (int) - noise seed for repeatable output, default
0. Set a fixed seed when you want the same image to come out the same way. - color_correction (combo:
none,lab,wavelet,adain, defaultnone) - adjusts the output to better match the source's color. Start withnone; the others are there when the upscale drifts tonally from your input. - vae_tile_size (
512or256, default512) - the one VRAM lever. Drop to 256 if the VAE encode or decode runs out of memory.
Settings worth stealing
The README's recommended starting point: scale 4, color correction none, tile 512. Two community tips from the upscaling playbook carry over:
- If the source is soft rather than just small, downscale it to ~0.35 megapixels first (e.g.
ImageScaleToTotalPixels), then upscale. There's no detail at full resolution to recover, so you give the model a sharper-relative base to rebuild from. Counterintuitive, and it's Comfy Org's own recommendation. - Watch the contrast lift. SeedVR2 is known for bumping contrast so the output can read as more obviously AI-generated than the input. The
color_correctionoptions are your lever here - and the "detail without rewriting faces" nature means close-up faces can still go plasticky, so give recognizable faces their own pass (ADetailer or inpainting) rather than letting the upscaler own them.
Installing it
ComfyUI Manager: search ComfyUI-FL-SeedVR2, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI-FL-SeedVR2.git
Restart after. No extra pip dependencies - the pack uses what ComfyUI ships. The real requirements are ComfyUI 0.28.0+ (native SeedVR2 support) and the ~3.4 GB of model files the loader downloads on first execution. First queue will sit on a download progress bar; that's normal.
Troubleshooting
- Out of memory on encode/decode - set
vae_tile_sizeto256. That's what the toggle exists for. unexpected keys, starting with blocks.0.attn.proj_out.txt.bias- ComfyUI too old (pre-0.28.0). Update ComfyUI and restart; your downloaded model is fine, don't delete it.- Loader says the checkpoint isn't the ComfyUI variant - you replaced the pinned model with the plain HuggingFace checkpoint. The loader only works with the
_comfyuitransformer, so reinstall the pinned files.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| vae | VAE | — | |
| images | IMAGE | — | |
| scale_multiplier | FLOAT | 4.001–8 | Output scale. The model is intended for 2x to 4x; 8x is supported but weaker. |
| seed | INT | 00–18446744073709550000 | — |
| color_correction | COMBO | none | 4 options: none, lab, wavelet, adain |
| vae_tile_size | COMBO | 512 | 512 is recommended. Use 256 when VAE encoding or decoding runs out of memory. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |