Nodes/ComfyUI-TinyBreaker/💪TB | Tiny Upscaler
ComfyUI Node

💪TB | Tiny Upscaler

The model's own hires-fix, controlled from your genparams

By martin-rizzo·Created 2 years ago·Updated about a year ago· 42
💪TB | Tiny Upscaler
  • image
  • genparams
  • model
  • clip
  • vae
  • image
mode
scale_by3.0

Most upscalers are separate models you bolt onto the end of a workflow. 💪TB | Tiny Upscaler is different: it's TinyBreaker's own built-in upscaling pass, wired so the genparams bundle decides whether and how it runs. Think of it as the model's native hires-fix, not a third-party add-on.

Here's the mechanism, straight from the source. The node takes your image, bilinearly scales it up (default 3×), encodes that big image into latent space in tiles, and then runs a short denoising pass with the model's embedded refiner to add plausible detail and clean up the interpolation softness. It uses cross-tiling - alternating top-left-to-bottom-right and bottom-right-to-top-left passes - specifically to kill the grid artifacts tiled upscalers usually leave behind. The author describes it as deliberately low-creativity: it nudges the image just enough that it looks like it was born at high resolution.

The catch before anything else

This node only works with the prototype1 version of the TinyBreaker checkpoint. That's not a version bump for fun - the upscaler needs the refiner and a dedicated upscaler VAE stored inside the checkpoint, and older prototypes don't have them. If you're on prototype0 and the upscaler silently does nothing, that's why.

Inputs

  • image - the image to upscale.
  • model, clip, vae - from LoadTinyBreakerCkpt. These are the "generator" side; the node needs a refiner-capable model or it skips the pass with a warning.
  • genparams - the interesting one. The node reads denoising.upscaler.* for sampler settings and checks image.enable_upscaler to decide whether to run at all. You normally flip that via --upscale in the Unified Prompt, not by toggling the node.
  • scale_by - the upscale factor, 1.5× to 6×, default 3.
  • mode - currently only upscaler; an "enhancer" mode is stubbed but not shipped.

Output is the upscaled image.

The honest part

This is the most experimental node in the pack, and the community experience shows it. Reports of the upscaler misbehaving - oversharpened results, or producing different composition than expected - go back to the prototype0 days, and the fix is usually version-related. Expect it to work, but treat it as a first pass, not a polished tool. If you want predictable detail injection on a clean image, the wider ecosystem has better-refined answers (SeedVR2 and friends); Tiny Upscaler's selling point is that it's inside the model and basically free to enable.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/martin-rizzo/ComfyUI-TinyBreaker

or via ComfyUI Manager, then restart. No pip dependencies. And again: prototype1 checkpoint required, or none of this fires.

Category💪TinyBreaker/upscaler

Inputs (7)

NameTypeDefaultDescription
imageIMAGEThe image to upscale.
genparamsGENPARAMSThe generation parameters containing the upscaling configuration.
modelMODELThe diffusion model used to improve the upscaling quality.
clipCLIPThe CLIP used to encode the prompt for the model.
vaeVAEThe VAE used to encode the image for the model.
modeCOMBOThe upscaling mode (experimental).
scale_byFLOAT3.01.5–6The factor by which to scale the image.

Outputs (1)

NameTypeDescription
imageIMAGEThe upscaled image.