Load Bernini v2 T5
The text encoder your prompts actually go through
- CLIP
Before your prompt means anything to the Wan renderer, it has to be tokenized and encoded by a text model - and for Bernini v2 that's UMT5-XXL, the same multilingual T5 family Wan uses, but the exact one that shipped with the Bernini repack. Load Bernini v2 T5 is the node that pulls it out of the model package and hands it to ComfyUI as a standard CLIP object. From there it behaves like any other text encoder: you wire it into CLIPTextEncode for your positive and negative conditioning, and those feed Bernini v2 Plan.
There's a subtle reason not to reach for a generic Wan T5 instead: the loader reads the T5 from the same repack manifest the rest of the pack uses, which guarantees the text encoder and the renderer are a matched pair from one download. Bernini's pipeline was tuned against that exact encoder, and prompt adherence is already the model's weakest link on short prompts. Matching the encoder is cheap insurance.
The inputs
Like the other loaders in this pack, it's about as simple as a node gets:
- repack_manifest - dropdown over the
repack-manifest.jsonfiles underComfyUI/models/bernini_v2/. Pick the one for the package you downloaded (Bernini-v2-balanced-int8/orBernini-v2-bf16-native/). The T5 lives inside that package, so this is also the directory choice. - dtype -
bfloat16orfloat16. Default bfloat16; on the Balanced INT8 package the stored weights are INT8 with BF16 compute, so this is the compute dtype, not the storage format.
Output is a CLIP that goes to CLIPTextEncode nodes - one for positive, one for negative. That's the entire consumer.
Practical notes
- It's not free VRAM-wise. UMT5-XXL is a big encoder; it loads under ComfyUI's normal offload management like the rest of the pack, but don't be surprised at a several-gigabyte hit while it's resident. It'll come back out after the job.
- Empty dropdown = wrong model location. Same story as the other loaders: the manifest dropdown only populates when the repack is actually in
ComfyUI/models/bernini_v2/. Re-run the README'shf downloadcommand with the right--local-dirand the folder structure sorts itself out. - This node is why "just use any Wan T5" is a trap. The Bernini repack's T5 matches the renderer's tokenizer and conditioning expectations. Mismatched encoders are exactly the kind of thing that produces "prompt works in the demo, ignores me" behavior. Use the matched one.
Installing it
Pack install: ComfyUI Manager → search "Bernini v2 (Native)", or git clone https://github.com/T8mars/comfyui-bernini-v2-T8.git into ComfyUI/custom_nodes, then restart (needs ComfyUI 0.33+). Models are the real download - the recommended Balanced INT8 package is ~45.6 GiB from t8star/Bernini-V2-Comfy (it includes the T5), into ComfyUI/models/bernini_v2/, plus the Wan 2.1 VAE into ComfyUI/models/vae/. Then load the example t2v.json workflow and you'll see this node feeding the two CLIPTextEncode nodes upstream of Plan.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| repack_manifest | COMBO | 0 options: | |
| dtypeopt | COMBO | bfloat16 | 2 options: bfloat16, float16 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CLIP | CLIP | — |