Kiwi Edit MLLM Encode Context (Yogurt Kiwi Edit)
Where Kiwi-Edit actually reads your instruction
- pipeline
- conditioning
- context
Most video models never "read" your prompt the way you imagine - a text encoder turns words into embeddings and that's the end of the conversation. Kiwi-Edit is different: it has a whole multimodal encoder on the front, and this node is the stage that runs it. Give it the conditioning from VAE Encode Inputs plus your instruction, and it produces the context that the denoiser will actually condition on.
This is stage two of the pack's split design, and it's the heaviest module per byte of output. The Qwen-based MLLM encoder is roughly 7.5 GB of the model download on its own, so while this node runs, it moves that encoder onto the GPU and everything else onto the CPU - the same offload dance every stage in this pack does. It's slow on purpose; peak VRAM stays sane.
The inputs
pipeline- the handle from Load Kiwi Edit Pipeline. The node verifies the conditioning was made by the same model path, so keep one pipeline through the whole graph.conditioning- the output of Kiwi Edit VAE Encode Inputs. It carries the source frames (and reference images, if you connected any) that the encoder looks at alongside your prompt.prompt- the editing instruction. Multiline, no fancy syntax, just English. "Add a red hat to the woman while keeping the facial identity unchanged" is the example workflow's prompt, and it's a good template: state the change, then state what to preserve.
Output is a single context handle - the encoded prompt plus visual context - which feeds straight into Generate Latents.
What happens under the hood
The node calls the pipeline's MLLM encoder on your prompt plus the source frames. If reference images are present it passes them as reference guidance; a single source frame takes the image path instead of the video path. The result is cached in the handle, so Generate Latents doesn't re-encode anything - it just consumes the context.
Installing it
Same install as the rest of the pack - ComfyUI Manager (search "ComfyUI-YogurtKiwiEdit") or clone into custom_nodes and pip install -r requirements.txt (diffusers>=0.36.0, accelerate), then restart. You need a Kiwi-Edit model folder under ComfyUI/models/KiwiEdit first, and the loader node loaded, or there's nothing to encode with.
Where people get stuck
Two things. First, this stage is where the VRAM wall shows up if your card is small - the MLLM encoder plus ComfyUI itself can push an 8 GB card to its limit even before the transformer stage. cpu_offload on the loader is doing real work here; leave it on. Second, because the context is computed once and then reused, you must re-run this node after editing the prompt - if you change the text and only re-run Generate Latents, you're denoising with the old instruction. In ComfyUI that happens naturally on a fresh queue, but it trips people up when they're selectively re-running nodes while tuning prompts.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| pipeline | KIWI_EDIT_PIPELINE | — | |
| conditioning | KIWI_EDIT_CONDITIONING | — | |
| prompt | STRING | Editing instruction for Kiwi-Edit MLLM context encoding. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| context | KIWI_EDIT_CONTEXT | — |