Nodes/TechNodes/VAEQuant
ComfyUI Node

VAEQuant

Crunch a VAE down to N bits — and don't expect it to save you anything

By TechnoByteJS·Created 2 years ago·Updated 2 years ago· 14
VAEQuant
  • vae
  • VAE
bits8

Lead with the honest framing, straight from the pack's own README: this is "purely experimental," and there's no speed or storage benefit to using it. That matters because the natural assumption - "quantize the VAE, save VRAM, like GGUF or fp8" - is exactly wrong here. If you came looking for a smaller file or a faster decode, GGUF's Q-ladder and fp8 casting are the real tools for that; both genuinely halve (or better) memory use with near-zero quality loss on modern hardware. VAEQuant does neither. It's a toy for a specific curiosity: how much numeric precision does an autoencoder actually need before it visibly breaks?

What it actually does

It takes a loaded vae and re-quantizes its weights down to bits - an integer from 1 to 8, default 8. At 8 bits you're close to a no-op, output should look effectively unchanged. Push it down - 4, 3, 2, 1 - and you're deliberately starving the network of numeric precision; somewhere in that range the decode starts falling apart, and watching exactly where is the entire point of the node. It's a good way to build intuition for how much information a VAE is actually carrying per weight, and pretty much nothing else useful beyond that.

Inputs and output

  • vae (required) - the VAE to degrade.
  • bits (required, 1–8, default 8) - the target precision.

Output is a VAE - the same object type you fed in, so it drops straight back into VAE Decode or VAE Encode with zero rewiring anywhere else in your graph.

Installing it

ComfyUI Manager: search TechNodes, install, restart. Or by hand:

cd ComfyUI/custom_nodes
git clone https://github.com/TechnoByteJS/ComfyUI-TechNodes --depth 1

No model downloads, no extra dependencies.

Where people get burned

The recurring mistake is expecting this to behave like GGUF or fp8 - it doesn't shrink anything on disk (there's no file output at all; it operates in-memory on the VAE object for the duration of the run) and it doesn't speed up decode. There's genuinely nothing to "save" here, by design. The other one: pushing bits down to 1 or 2 and being surprised the output is unusable - that's the expected floor for a network this small carrying this much information, not a bug. If your actual goal is a smaller VAE or faster inference, this is the wrong node entirely; it exists for poking at the model, not optimizing your pipeline.

CategoryTechNodes/quantization

Inputs (2)

NameTypeDefaultDescription
vaeVAE
bitsINT81–8

Outputs (1)

NameTypeDescription
VAEVAE