Prompt Relay Encode (Smart) — deprecated
The old auto-parsing Prompt Relay encoder — fold it into the unified node
- model
- clip
- latent
- relay_options
- model
- positive
Deprecated, same as its kijai sibling, and for the same reason: the pack merged everything into PromptRelayEncodeC2C, where this lives on as backend='smart'. If you're starting fresh, that's the node you want. You're reading this because an old workflow dropped it on your canvas, so here's what it did and how to read it.
What "smart" meant
The "smart" part was the parsing. Instead of hand-structuring local_prompts with | separators, this encoder took a plain-English smart_prompt and auto-parsed it - either |-separated segments or a Scene 1: ... / Scene 2: ... block format - so you could write your per-segment prompts like a storyboard and have the node figure out the segmentation. It's the Gordon Chen Prompt Relay technique (per-segment prompts relayed across a video via a cross-attention patch, with epsilon controlling boundary sharpness) aimed at people who didn't want to think about token ranges. The normalize_by_tokens toggle scaled each segment's conditioning weight by its token count, so a long scene didn't get diluted against a short one.
The legacy inputs
Inputs, for the legacy workflows that still carry it: model and clip (plain native MODEL+CLIP), a latent (frame count read from its shape), global_prompt (persistent across the whole video), smart_prompt, normalize_by_tokens, epsilon (default 0.001). Optional relay_options for a RELAY_OPTIONS bundle. Outputs: model and positive CONDITIONING, wired straight into your sampler - the same outputs the unified node gives you on the native path.
Migrating is painless
Migrating is painless: the unified PromptRelayEncodeC2C with backend=smart takes the exact same inputs and produces the same outputs, so you can swap this node for that one, set the backend, and re-wire model/positive to the same sockets. The only real loss is nothing - the parser behavior is identical.
Install and the gotcha
Install is the shared pack: clone Code2Collapse/ComfyUI-CustomNodePacks into ComfyUI/custom_nodes or ComfyUI Manager → "CustomNodePacks". The failure mode to remember: this node (and its replacement) raises a hard error when a required string input arrives as None from a disconnected upstream - that's deliberate, because a silently-guessed prompt produces a video you discover is wrong after a 20-minute render. Check your wiring before queueing, not after.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| clip | CLIP | — | |
| latent | LATENT | — | |
| global_prompt | STRING | — | |
| smart_prompt | STRING | — | |
| normalize_by_tokens | BOOLEAN | false | — |
| epsilon | FLOAT | 0.00100.000001–0.99 | — |
| relay_optionsopt | RELAY_OPTIONS | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| positive | CONDITIONING | — |