Nodes/ComfyUI-SuiteTea/Tea: Save & Reload Image
ComfyUI Node

Tea: Save & Reload Image

The save-to-disk round trip that rescues small GPUs from OOM

By teepunkt-esspunkt·Created about a year ago·Updated 12 months ago· 4
Tea: Save & Reload Image
  • image_in
  • reloaded_image
image
temp_folderoutput/temp
filenameTeafault.png
also_save_permfalse
perm_folderoutput/saved

If you've ever had a workflow that runs fine in isolation but OOMs the moment you chain two models together - upscale, then img2img, with both models' worth of tensors alive at once - this is the hack for you. The idea is almost embarrassingly simple: it saves the image to disk and immediately loads it back as a brand-new tensor. That round trip severs the tensor lineage, and once the graph can't trace back through it, ComfyUI drops the upstream model's cached output. The README puts it plainly: many workflows pass images straight from one model to another, which causes out-of-memory errors on the first run. This node forces the unload.

It's a detacher, not a fix - but for the specific "image passthrough chain" case it genuinely works, which is more than most VRAM advice can claim.

Two jobs, one node

The node doubles as a normal image loader, which is the part that makes it pleasant to keep in a graph:

  • Detacher mode: connect image_in, and it saves the tensor to temp_folder/filename (defaults output/temp and Teafault.png), then reloads it.
  • Loader mode: leave image_in unconnected and it behaves like the stock Load Image node - picker with preview, upload button, EXIF orientation handling, multi-frame support.

Mechanically it's tensor → PIL → save PNG → reopen → fresh [1,H,W,3] float tensor in [0,1]. The default filename is Teafault.png, which is the exact kind of in-joke that tells you this pack knows what it is.

Inputs that matter

  • image_in - the tensor to detach. Leave it unconnected for loader mode.
  • temp_folder / filename - where it writes and what it calls the file. It appends .png if you leave the extension off.
  • also_save_perm / perm_folder - optionally keep a second copy in output/saved so the file survives temp-folder cleanups.

One output: reloaded_image (an IMAGE tensor). In detacher mode it only uses filename for both the temp and permanent copies, and it always overwrites - there's no overwrite toggle on that path, so if you want a keeper, that's what also_save_perm is for.

Installing it

Same as the rest of the pack, and it has zero extra dependencies:

  • ComfyUI Manager → Custom Nodes → search "SuiteTea", or Manager → Install from URL → https://github.com/teepunkt-esspunkt/ComfyUI-SuiteTea.git
  • Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/teepunkt-esspunkt/ComfyUI-SuiteTea

Restart ComfyUI and it shows up under SuiteTea / IO.

Be honest about what it is

This is duct tape, and it's good duct tape. It doesn't add VRAM - it breaks the chain so the graph frees the upstream tensors, which is exactly what you want when a workflow passes a big image tensor from one model straight into another. If your pipeline still OOMs after the detach, the real fix is a smaller model, GGUF quantization, or ComfyUI's own low-VRAM settings, not more clever hacks.

The one trap to avoid: dropping this node into a graph out of superstition and leaving it there. It works because it forces a disk round trip every run, which costs you a little time. Reach for it when the OOM message actually appears, wire image_in in, and move on.

CategorySuiteTea/IO

Inputs (6)

NameTypeDefaultDescription
imageCOMBO1 options: example.png
temp_folderSTRINGoutput/temp
filenameSTRINGTeafault.png
also_save_permBOOLEANfalse
perm_folderSTRINGoutput/saved
image_inoptIMAGE

Outputs (1)

NameTypeDescription
reloaded_imageIMAGE