Load Conditioning
Skip the Text Encoder, Plug In a Saved Conditioning
- CONDITIONING
If SaveConditioning is the pack's write half, LoadConditioning is the read half - and it's the one you'll actually want sitting in your workflow day to day. It reads a .cond file (a saved CONDITIONING from the companion SaveConditioning node) and outputs the exact same tensors, so you can run generations without paying for a CLIP encode. Same prompt across a batch of images, or the same prompt in a workflow you rebuild constantly? This is how you stop re-encoding it.
The mechanism is straightforward. On load it picks a .cond from input/conditioning/ - the folder is auto-created on first use - and hands it to torch.load() with map_location="cpu", then returns the conditioning. Two implementation details shape how the node behaves:
- It tracks the file, not just the name. The node SHA-256 hashes the file contents, so if you drop in a new
.condwith the same name, ComfyUI notices and re-runs everything downstream. No stale-cache surprises when you update the file. - It validates before running. If the selected file has vanished, you get an "Invalid conditioning file" message instead of a mid-graph crash.
Inputs and outputs are a short list: one input, one output.
- conditioning_file - a dropdown listing every
.condfile ininput/conditioning/. It's populated when the node is created, so a freshly saved file needs a workflow refresh (or re-adding the node) to show up. - CONDITIONING - the loaded tensors, ready to plug into KSampler's positive or negative, or any other CONDITIONING input on the graph.
Install is the same as its sibling - same pack, after all. In ComfyUI Manager, search "ComfyUI Conditioning Saver", or:
cd ComfyUI/custom_nodes
git clone https://github.com/nicehero/comfyui-conditioning-saver
then restart. Nothing to download, torch is the only dependency, MIT-licensed.
Where people get burned - the honest list:
- The file lives in
input/conditioning/. SaveConditioning writes tooutput/conditioning/, so the README's flow has you move the file between the two folders. If your dropdown is empty, that's the first thing to check. - The dropdown is a snapshot. Files added after the node already exists won't appear until the workflow refreshes.
- Trust and compatibility. This node loads with
weights_only=False, which means it will happily unpickle arbitrary data - only load.condfiles you created yourself. And the tensors are model-specific: a conditioning encoded for SDXL won't behave in a Flux graph. It's a cache, not a universal prompt format.
The use case here is real - people reach for conditioning-caching nodes precisely for the repetitive-prompt batch work this pack targets, and this pair is a clean, dependency-free way to do it. Load your saved conditioning and let the text encoder sit this one out.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| conditioning_file | COMBO | 0 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |