Save Model (Override)
Write a checkpoint under a fixed name for a Cyclist model loop
- model
- clip
- vae
Save Model (Override) saves a model - checkpoint, CLIP and VAE together - to disk under a fixed filename, no counter, overwriting the last one. It's the rarest node in Cyclist and easily the heaviest: it exists so a loop can persist an entire model between iterations and reload it next pass. Niche doesn't begin to cover it, but when you need it, nothing else does the job.
What it's actually for
Cyclist loops by re-queuing the workflow, and the disk-based Override/Reload pair is how something survives between runs. For most loops that "something" is an image or a latent. Save Model (Override) is for the unusual case where the thing evolving across iterations is the model itself - you're applying changes to it each pass and want to carry the modified model forward. The pack's own example is a LoRA burn-in test: stack more and more random LoRAs onto a model, run after run, saving the progressively-mangled result and reloading it to stack the next one, until the model breaks. It's a compatibility/stress test, not a production pattern - but it's a genuinely clever use of a re-queue loop.
It writes to your default models/checkpoints folder, so the output lands where a normal checkpoint would. And because it's disk, it survives a ComfyUI restart, unlike the memory nodes.
The inputs that matter
filename(STRING, defaultForLoop_1) - the fixed save name; Reload Model reads this exact name.model(MODEL) - the diffusion model.clip(CLIP) - the text encoder.vae(VAE) - the VAE.
All three components go in together, mirroring what Reload Model hands back out. It's a terminal (output) node - no outputs, it just commits the file.
Install
- ComfyUI Manager: search comfyui-cyclist, install, restart.
- Manual:
cd ComfyUI/custom_nodes && git clone https://github.com/Pos13/comfyui-cyclist, restart.
Pure Python - but see the warning below about what it writes.
Read this before you use it
A checkpoint is large - multiple gigabytes. Every iteration of a model loop writes a full checkpoint to models/checkpoints, overwriting the previous one. That's a lot of disk I/O per pass, and it's slow; this is not a node you casually drop into a fast loop. Use it only when persisting the whole model is genuinely the point (like the LoRA-burn test), and keep an eye on how long each save takes relative to the rest of your loop.
The "New Cycle" rule applies as everywhere in Cyclist: only filename widgets and connected Primitives get auto-incremented, not names from Recall String / String Const nodes - so if you want each fresh loop to write a new checkpoint instead of overwriting, keep the filename in a plain widget.
And, as with the whole pack: it's archived and unmaintained. Combined with the fact that this node touches large model files, I'd test it carefully on your setup before trusting it with anything you can't regenerate.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| filename | STRING | ForLoop_1 | — |
| model | MODEL | — | |
| clip | CLIP | — | |
| vae | VAE | — |
Outputs (0)
No outputs