Load ConvRot CLIP
The text encoder that actually fits on a Turing card
- clip
The text encoder is the part of a modern generation workflow that quietly eats your VRAM and nobody talks about. On a Turing card - RTX 20-series, sm75 - it's often the difference between a model fitting and the whole graph dying an OOM death. Load ConvRot CLIP is the sibling of this pack's ConvRot DiT loader: it loads a ConvRot-quantized text encoder on its own, without dragging in the diffusion model, so you can size the two halves separately.
That's the part people miss. In the KB's terms, by 2026 the text encoder is "a second model you load, size and quantize on its own" - and on low-VRAM setups it's frequently the bottleneck rather than the model. This node is the answer to that for ConvRot checkpoints.
How it works
Same family as the ConvRot DiT loader: it reads the safetensors header for ConvRot quantization metadata and dispatches each layer to the right W8A8 / W4A8 / W4A4 path. The difference is that it only touches the encoder, and it reuses ComfyUI's official CLIP loader inputs for the type dropdown - so it slots into workflows the same way the stock Load CLIP node does, just with quantized weights.
The inputs that matter
- clip_name - the ConvRot CLIP file. Like its DiT sibling, files without supported ConvRot quantization metadata are hidden from the list, so an empty dropdown means "that's not a ConvRot encoder."
- type - the encoder family, and there are a lot of them:
stable_diffusion,stable_cascade,sd3,stable_audio,mochi,ltxv,pixart,cosmos,lumina2,wan,hidream,chroma, and roughly sixteen more. Pick the one that matches the base model, exactly like the stock CLIP loader. - force_int8_gemm - default
falsefollows each layer's activation format;trueforces INT8 GEMM activations everywhere. Same knob as the DiT loader, same "try it if a checkpoint misbehaves" energy. - device (optional) -
defaultorcpu. Offloading the encoder to CPU is a legit VRAM-saver on tight cards, so this is less exotic than it looks.
Output: a single CLIP socket, wired into your CLIP Text Encode exactly like the stock loader's output.
How to install
cd ComfyUI/custom_nodes
git clone https://github.com/wjie98/comfyui-svdint4
cd comfyui-svdint4
python -m pip install -v --no-build-isolation -e ./kernel
Same pack, same gotcha: the CUDA kernel package doesn't install itself, that pip line compiles it, and you need a CUDA-capable torch and ninja. The W4A8 paths also want comfy-kitchen installed. Restart ComfyUI after the build.
Where people get burned
The usual two. First, the "why is my file list empty" panic - it's the metadata filter, not your filesystem. Second, choosing the wrong type: a Wan workflow wants wan, not the closest-sounding thing, and a mismatched encoder family produces prompt garbage that looks like a prompt problem when it's really a type dropdown problem. And if you're on a card that's tight on VRAM, don't sleep on the cpu device option - for a text encoder it's often free.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_name | COMBO | 0 options: | |
| type | COMBO | 28 options: stable_diffusion, stable_cascade, sd3, stable_audio, mochi, ltxv, +22 | |
| force_int8_gemm | BOOLEAN | false | False follows each layer's activation format. True forces INT8 GEMM activations. |
| deviceopt | COMBO | 2 options: default, cpu |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| clip | CLIP | — |