Nodes/ComfyUI-ConDelta/Prompt Travel
ComfyUI Node

Prompt Travel

Interpolate between two prompts in one node

By envy-ai·Created 2 years ago·Updated 11 months ago· 209
Prompt Travel
  • clip
  • CONDITIONING
prompt_a
prompt_b
travel_amount0.50

"Prompt travel" is an old idea in this community - it's the name of a well-known A1111/AnimateDiff extension for smoothly moving from one prompt to another across a sequence of frames, and the term still shows up regularly whenever people talk about animating a generation between two concepts rather than jumping between them. This node brings the core operation into ComfyUI's conditioning graph directly: give it two prompts and a travel amount, and it hands you back the interpolated conditioning for wherever you set the dial.

How it works

You supply prompt_a, prompt_b, and a CLIP model. The node encodes both prompts and linearly interpolates between the two resulting conditioning vectors using travel_amount. At 0 you get (close to) prompt_a, at 1 you get prompt_b, and everything in between is a blend. Because the parameter range goes well past 0–1, you can also push past either endpoint and exaggerate the direction from one prompt toward the other, the same extrapolation trick the rest of this pack relies on.

This node does the interpolation for a single value - it doesn't animate anything by itself. If you want an actual prompt-travel animation, you'd drive travel_amount from a schedule (increasing it across a batch of frames, say) and let this node compute the conditioning fresh at each step.

The inputs and outputs that matter

  • prompt_a and prompt_b - the two endpoints of your travel. Both are plain multiline text, encoded the same way a normal CLIP Text Encode would.
  • travel_amount - default 0.5 (the midpoint), range -100 to 100, step 0.01. This is the only thing you need to touch once your two prompts are set.
  • clip - the CLIP model used to encode both prompts.

Output is a single CONDITIONING you feed straight to your sampler.

How to install it

Via ComfyUI Manager: search "ComfyUI-ConDelta", install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/envy-ai/ComfyUI-ConDelta

then restart. No model files and no extra Python dependencies for this node - it's straightforward tensor interpolation on top of whatever CLIP you already have loaded.

Common issues & troubleshooting

Linear blending doesn't always read as a smooth conceptual blend. This is a known soft spot in the technique generally, not something specific to a broken implementation: interpolating two encoded prompts in a straight line through vector space can produce mid-point results where elements of both prompts bleed together oddly, rather than a clean "halfway between city and jungle" image. If your midpoint looks muddier than either endpoint, that's expected behavior for linear interpolation, not a sign something's misconfigured.

Keep travel_amount inside 0–1 unless you specifically want to extrapolate. Values past either endpoint push you beyond prompt_a or prompt_b rather than toward them, which is a different (and less predictable) effect than a blend - useful deliberately, confusing by accident.

For an actual travel animation, you still need to build the schedule yourself. This node computes one interpolated conditioning per call; stepping travel_amount across frames is on you, typically with a value-schedule or batch-index node feeding it.

Categoryconditioning

Inputs (4)

NameTypeDefaultDescription
prompt_aSTRINGThe text to be encoded.
prompt_bSTRINGThe text to be encoded.
travel_amountFLOAT0.50-100–100
clipCLIPThe CLIP model used for encoding the text.

Outputs (1)

NameTypeDescription
CONDITIONINGCONDITIONING