ZeroClip-D Load Anchors
Anchors the model found itself
- anchors
ZeroClip-D is the research-grade variant of this pack: anchor embeddings discovered by the diffusion model itself, with no text encoder anywhere in the pipeline. ZeroClip-D Load Anchors loads that discovered library - a .npy file called anchors_bootstrap.npy - the same way the A loader handles its anchor file.
The idea is genuinely interesting. Variant A builds its anchor library from CLIP text embeddings: words in, embeddings out. Variant D instead runs a bootstrap process where the diffusion model itself is probed - coherence probing, gradient refinement, clustering, per the source docs - to find conditioning vectors the model responds to strongly. Those become the anchors. So instead of "the model is being asked to draw near concepts a text encoder defined," you get "the model tells you which latent regions it knows best." Fully text-free from build to inference.
The one input
anchors_file, a dropdown of .npy files in models/zeroclip/ (sample: anchors_bootstrap.npy). Output is the ZEROCLIP_D_ANCHORS type, which feeds the ZeroClip-D Conditioning, SDXL, and Batch nodes. Like the other loaders it auto-reloads when the file changes on disk.
Getting the file
Honest warning: do not build this yourself unless you have a day to spare. The bootstrap process requires hundreds of diffusion inference steps and takes around five hours on a GPU (it needs diffusers and accelerate). The practical route is to download the prebuilt anchors_bootstrap.npy from huggingface.co/mushroomfleet/zeroclip and drop it in models/zeroclip/. The build script exists if you want to bootstrap against your own checkpoint (--variant D --device cuda), but treat it as an experiment, not setup.
Install
Part of ComfyUI-ZeroCLIP-nodes. ComfyUI Manager (search "ZeroCLIP"), or:
cd ComfyUI/custom_nodes
git clone https://github.com/MushroomFleet/ComfyUI-ZeroCLIP-nodes
Restart ComfyUI; it's under ZeroClip/D - Self-Bootstrapped. No pip install at runtime - the heavy diffusers/accelerate requirements only appear if you run the bootstrap build.
Where people get burned
- The usual empty-folder trap, amplified. Because the file is expensive to produce, it's the easiest one to forget. The dropdown will still show
anchors_bootstrap.npywith nothing behind it until you download it. - Expecting it to behave like A. D's anchors come from the model's own prior, not from a vocabulary - so there's no mapping from a seed back to "this is a concept I can name." Outputs can be great or baffling, and you have less language-shaped structure to reason about. That's the trade the variant is making.
- Mixing D and A files. The loaders are type-separated in ComfyUI, but the file itself doesn't know which variant it belongs to - load a D file where an A loader expects anchors and the shape may load fine while the semantics are nonsense. Keep the bootstrap files in their own names.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| anchors_file | COMBO | Select bootstrap anchors from models/zeroclip/ |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| anchors | ZEROCLIP_D_ANCHORS | — |