☁️BizyAir Kling 2.5 Image To Video
BizyAir Kling 2.5 Image To Video — ComfyUI Node Guide
- first_frame_image
- last_frame_image
- video
- bizyair_model_name
What it is
Kling is Kuaishou's closed video model - never open-weighted, priced and gated like every other major Chinese video API, and grouped by the community with Hailuo and Vidu as the "all closed source" set outside open source's reach. This node is the 2.5 Turbo version of Kling's image-to-video API, wired into ComfyUI through BizyAir. It sits alongside BizyAir_Kling_2_6_I2V_API in the same pack - this is the earlier, and typically cheaper/faster, "turbo" tier rather than the newer 2.6.
The feature that sets this one apart from its 2.6 sibling: it supports both a first and a last frame, which makes it useful for a specific job 2.6 in this pack doesn't cover - interpolating a video between two fixed points rather than just animating outward from one.
How it works
Give it a starting frame, a prompt, and optionally an ending frame; Kling generates the motion that connects them. Without a last frame, it behaves like a standard image-to-video model, animating outward from your source image according to the prompt. With one supplied, it's closer to keyframe interpolation - the model has to land on a specific target rather than just going wherever the prompt suggests, which is a meaningfully different and often harder task for the model to nail.
Inputs and outputs that matter
first_frame_image is required and anchors the video's starting composition. prompt describes the desired motion or scene change. negative_prompt lets you explicitly rule things out - a field the 2.6 node in this pack doesn't have, worth using if you're getting unwanted elements creeping in. model_name is locked to kling-v2-5-turbo. duration is 5 or 10 seconds.
The optional last_frame_image is the headline feature here - supply it and you're asking Kling to generate the transition between your two frames rather than freely animating from just one.
Output is video for the result, plus bizyair_model_name, an internal tag for logging/billing rather than something you'd wire further.
Installing it
Search "BizyAir" in ComfyUI Manager and install, or clone manually: cd ComfyUI/custom_nodes && git clone https://github.com/siliconflow/BizyAir.git, then restart. Every node in this pack requires a BizyAir API key before it'll run - set that up via the login prompt on first launch.
Common issues
If you supply a last_frame_image that's dramatically different from the first_frame_image - different subject, composition, or lighting entirely - expect the model to struggle or produce something jarring; this feature works best when the two frames represent a plausible transition, not an arbitrary jump. Cost and rate limits trace back to Kling's own API pricing passed through your BizyAir credits, so if a generation fails outright, check your account balance before assuming a workflow bug. And if you don't actually need the first/last-frame interpolation, the plainer BizyAir_Kling_2_6_I2V_API node in this same pack may suit a simple animate-from-one-image job better and is the newer model version besides.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| first_frame_image | IMAGE | 首帧图片 | |
| prompt | STRING | — | |
| negative_prompt | STRING | — | |
| model_name | COMBO | kling-v2-5-turbo | 1 options: kling-v2-5-turbo |
| duration | COMBO | 5 | 2 options: 5, 10 |
| last_frame_imageopt | IMAGE | 末帧图片 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| bizyair_model_name | {"kling-v2-5-turbo": "kling-v2-5"} | — |