Nodes/WAS_Extras/CLIP Text Encode Sequence (Advanced)
ComfyUI Node

CLIP Text Encode Sequence (Advanced)

A prompt schedule for KSampler Sequence

By WASasquatch·Created 3 years ago·Updated 11 days ago· 43
CLIP Text Encode Sequence (Advanced)
  • clip
  • conditioning_sequence
token_normalization
weight_interpretation
text0:A portrait of a rosebud 5:A portrait of a blooming rosebud 10:A portrait of a blooming rose 15:A portrait of a rose

This isn't a drop-in replacement for a normal CLIP Text Encode. It doesn't output a single CONDITIONING - it outputs a CONDITIONING_SEQ, a schedule of prompts keyed to frame numbers, and the only thing on the other end that speaks that type is KSampler Sequence (KSamplerSeq) from the same pack. If you're not using that sampler, this node has nothing to plug into.

How it works

Instead of one text box, you write one prompt per line, each prefixed with the frame index it should kick in at: 0:A portrait of a rosebud, 5:A portrait of a blooming rosebud, and so on. KSampler Sequence reads that schedule across its own loop and swaps prompts as it advances - this is how the pack does "prompt progression" video-style generation, where each loop nudges the image toward the next described state instead of jumping straight there.

The token_normalization and weight_interpretation fields are the standard Advanced CLIP Text Encode options (none/mean/length/length+mean normalization; comfy/A1111/compel/comfy++ weight syntax) - the README notes this node will use that more advanced text-encode path if you have it installed, and its own defaults otherwise. If you've ever used (word:1.3)-style prompt weighting and wondered which dialect a given node speaks, this is where you pick.

The inputs and outputs that matter

  • clip (CLIP) - your model's CLIP, same as any text encode node.
  • text (multiline STRING) - one frameIndex:prompt line per entry in your schedule. The default text is a working example (rosebud → blooming rosebud → blooming rose → rose across frames 0/5/10/15) - worth running once as-is before writing your own.
  • token_normalization / weight_interpretation - leave these on their defaults unless you already know which weighting syntax you're writing in.

Single output: conditioning_sequence (CONDITIONING_SEQ) - this only wires into KSampler Sequence's positive_seq / negative_seq inputs. It will not connect to a regular KSampler.

How to install it

Via ComfyUI Manager: search "WAS_Extras", install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/WAS_Extras
pip install -r WAS_Extras/requirements.txt

That pip install step matters here specifically: the README calls out that the ksampler_sequence.py file - which is what this node, its v2 sibling, and both KSampler Sequence nodes all live in - needs its requirements.txt installed even if you drop the individual .py files in by hand rather than cloning the whole repo.

Common issues & troubleshooting

Nothing happens when you wire this into a normal KSampler. It can't - the output type is CONDITIONING_SEQ, not CONDITIONING. This node only makes sense paired with KSamplerSeq.

You want the CLIPTextEncodeSequence2 node instead. They look similar but pair with different samplers: this one (v1/"Advanced") uses inline frameIndex:prompt lines and feeds KSamplerSeq; the v2 node uses a plain list of prompts plus a separate keyframe-schedule type and feeds KSamplerSeq2. Wiring the wrong pair together will just fail to connect - ComfyUI's type checking catches it, but it's an easy first mistake given how similar the two look at a glance.

Import errors on first load. Almost always the missing requirements.txt install above - this whole file is a heavier lift than the rest of the pack's mostly-dependency-free nodes.

Prompt weighting isn't doing what you expect. Double-check weight_interpretation matches the syntax you're actually writing ((word:1.3) is comfy-style; A1111 and compel have their own conventions) - mismatching the two is a common source of "my emphasis isn't working."

Categoryconditioning

Inputs (4)

NameTypeDefaultDescription
clipCLIPCLIP model used to encode text prompts.
token_normalizationCOMBONormalization strategy for token weights.
weight_interpretationCOMBOHow to interpret weights and syntax in the text.
textSTRING0:A portrait of a rosebud 5:A portrait of a blooming rosebud 10:A portrait of a blooming rose 15:A portrait of a roseOne entry per line in the form 'frameIndex:prompt'.

Outputs (1)

NameTypeDescription
conditioning_sequenceCONDITIONING_SEQ