Nodes/ComfyUI-Kie-API-Serverless/KIE Kling 2.5 I2V Pro [SL]
ComfyUI Node

KIE Kling 2.5 I2V Pro [SL]

First frame, last frame, and Kling 2.5 fills in the middle

By v3devv·Created 7 months ago·Updated 4 months ago· 0
KIE Kling 2.5 I2V Pro [SL]
  • first_frame
  • last_frame
  • video
api_key
prompt
negative_prompt
duration5
cfg_scale0.5
logtrue

Kling is the closed video model everyone compares the open ones to, and you can't run it locally - there are no weights to download. This node is the KIE door into it: give it a starting frame, optionally an ending frame, and a prompt, and it returns a short MP4 where Kling 2.5 Turbo Pro animates everything between the two.

The real reason to reach for this over the newer Kling 2.6 nodes is that first-and-last-frame control. You pin the start and the end, and the model has to reconcile them - which is how you get a character who ends in a specific pose, a scene that closes on a specific composition, or a loop that actually closes. If your workflow is "generate frame A, generate frame B, let Kling bridge them," this is the node you're describing. The plain Kling 2.6 I2V node takes one image and lets the model decide where it goes; that's a different tool for a different job.

How it works

Standard KIE async pipeline under the hood: your first_frame (and optional last_frame) images are uploaded as PNGs, a job is created against the kling/v2-5-turbo-image-to-video-pro model, and the node polls until the task reports success - which for video can take a couple of minutes. The result downloads and comes back as a proper ComfyUI VIDEO output, so it plugs straight into the official SaveVideo node. If you pass a batch of images, only the first one in each slot is used.

The inputs that matter

  • first_frame - required. Your start image.
  • last_frame - optional. Pin the ending.
  • prompt - what happens in between, max 1000 characters.
  • negative_prompt - what shouldn't happen. Optional but worth using; Kling listens to it better than most video models.
  • duration - 5 or 10 seconds.
  • cfg_scale - 0.0 to 1.0, default 0.5. Video models keep this low compared to image work.

The output is video; wire it into a SaveVideo node to actually keep it, since the node hands you a temporary file reference.

Install

Same story as the rest of this pack - Manager search "Kie-API-Serverless" or:

cd ComfyUI/custom_nodes
git clone https://github.com/v3devv/ComfyUI-Kie-API-Serverless

Restart and you're done. No models, no heavy deps; the heavy lifting is all on KIE's servers and billed per call.

Where people get burned

The obvious failure is transient: 429s and 5xx errors trigger the built-in retry (up to two retries with backoff), so a rate-limited batch usually recovers on its own. If a job genuinely fails, the error message includes the KIE failCode and failMsg - paste those into a KIE support ticket. Two quieter gotchas: video jobs default to a 1000-second timeout, so a slow render will sit there for a while before giving up, and cfg_scale behaves differently from image CFG - leave it near the default unless you know you're chasing something specific. And as always with this pack, your key lives in the node field, so don't share the saved workflow.

Categorykie-sl/api

Inputs (8)

NameTypeDefaultDescription
api_keySTRING
first_frameIMAGE
promptSTRING
last_frameoptIMAGE
negative_promptoptSTRING
durationoptCOMBO52 options: 5, 10
cfg_scaleoptFLOAT0.50–1
logoptBOOLEANtrue

Outputs (1)

NameTypeDescription
videoVIDEO