Vetted CLIP Loader
The CLIP Vision loader hiding in the wrong folder
- clip
PseudoVettedClipLoader looks like a CLIP text-encoder loader, but read the model list and the real job becomes clear. The two "vetted" files are CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors and CLIP-ViT-bigG-14-laion2B-39B-b160k.safetensors - those are CLIP Vision models, not text encoders. This node exists to load the image-embedding side of the pipeline, the one that makes IPAdapter work.
If that's new to you: text CLIP encodes your prompt into tokens, and vision CLIP encodes a reference image into an embedding. IPAdapter - the cheap image-prompting trick that injects that embedding through its own cross-attention path - needs a vision CLIP on hand. The Pseudocomfy regional pipeline uses IPAdapter Plus for image-guided material prompts, and this loader is the curated front door for the CLIP Vision models that feed it. The README's install steps walk you through grabbing exactly these two files and renaming them properly.
How it works
Same architecture as the pack's other vetted loaders: at startup it fetches the approved model list from https://tools.pseudotools.com/api/models and builds the dropdown. Pick a file and it loads via ComfyUI's load_clip, with an important twist - the type dropdown maps the CLIP flavor:
stable_diffusion(default) - the standard case for SD 1.5 / SDXL image promptingstable_cascade,sd3,flux- for those architectures' CLIP handling
Output is a single clip (CLIP) that wires into whatever adapter expects it. There's also device, with a cpu option marked as advanced - hand it to a machine with no VRAM to spare and it'll offload the vision model to CPU. And the usual record_id string, which is just the pseudotools API bookkeeping, safe to ignore.
The folder gotcha (this one is real)
The source loads from folder_paths.get_full_path_or_raise("clip", model) - the models/clip folder, not models/clip_vision. That trips people up constantly because the README's IPAdapter setup tells you to drop CLIP Vision models in models/clip_vision. Follow that, and this loader will look in clip, find nothing, and error out.
So: if you're using this node, put the vision models in ComfyUI/models/clip with the exact filenames from the dropdown. If the same files also live in clip_vision for IPAdapter Plus's own loader, that's fine - both folders can hold them; each node reads its own.
The other gotchas are shared with all the vetted loaders: the dropdown only populates when the Pseudotools API is reachable at startup, and the node doesn't download anything - you supply the files. Also, this loader is for the SD 1.5 / SDXL era of image prompting; if you're on Flux-era models, IPAdapter's own loader plus a clip_vision setup is the more standard route, and the KB's honest position is that Flux workloads moved on to Redux and similar. Use this when you're inside the pack's own SDXL-based pipeline.
Installation
# ComfyUI Manager: Custom Nodes Manager > search "Pseudocomfy" > Install
# or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Pseudotools/Pseudocomfy.git
Restart ComfyUI. On Windows portable, install diffusers into the embedded Python first (README step one). Then download the two CLIP Vision models from cubiq's IPAdapter Plus install notes and drop them in models/clip.
Verdict
A niche convenience loader for a niche pipeline, with one footgun that will cost you twenty minutes the first time. If you run the pack's regional prompting workflow and want your image-prompting CLIPs curated, it's fine. If you're not in that pipeline, IPAdapter Plus's own loader already handles CLIP Vision - and its README lives in a folder you actually expected.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | 2 options: CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors, CLIP-ViT-bigG-14-laion2B-39B-b160k.safetensors | |
| record_id | STRING | pseudotools/clip-vision-clip-vit-h-14-laion2b-s32b-b79k | — |
| type | COMBO | 4 options: stable_diffusion, stable_cascade, sd3, flux | |
| device | COMBO | 2 options: default, cpu |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| clip | CLIP | — |