Kling VIDEO 3.0 Turbo
Kling 3.0 Turbo's multi-shot prompt is the hidden superpower most people miss
- frameImages
- video
Read the positivePrompt tooltip on this one before you write anything, because it's the best feature in the whole node and it's buried in a tooltip. Kling 3.0 Turbo accepts a multi-shot template - shot <n>, <seconds>, <prompt>; repeated up to six times - where each shot gets its own prompt and duration, and the seconds add up to your total duration. That's a storyboard built into a prompt box. You can sketch a whole six-shot mini-sequence in one generation instead of running six separate queues and cutting them together.
The tradeoff is the name: Turbo is the speed tier, so it's also the one where you iterate fast and accept a little less polish. Same closed-model situation as every Kling node - it renders on Runware's cloud, no local GPU, pay per run - but the multi-shot prompt makes it uniquely useful for planning.
How it works
Node is standard pack fare: widgets become a request (klingai:[email protected], videoInference), the runware-sdk sends it over REST, and the returned MP4 comes back as a native VIDEO output. Where Turbo differs from the other Kling 3.0 nodes, beyond the prompt template:
size- a dropdown with 720p and 1080p options in 16:9, 1:1, and 9:16, plus720p (from input)and1080p (from input). No width/height widgets here.duration- 3–15 seconds; your per-shot seconds must sum to it.negativePrompt- present, though ignored when guidance is disabled (CFG ≤ 1).frameImages- anIMAGEsocket for conditioning.- No
advanced_json, no sound toggles. Turbo keeps the control surface deliberately small.
Keep the per-shot prompt under 512 characters and the shot count at six or fewer. The template format matters - shot 1, 2, close-up of a cat stretching; - so if a queue comes back with a validation error, check your punctuation before you blame the model.
The output
One video socket, type VIDEO, into Preview Video or Save Video. On older ComfyUI it degrades to a file path string; upgrading ComfyUI fixes that.
Installing it
Standard pack install, once for all nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt
Restart, then set your key in ComfyUI Settings → Runware API key, via RUNWARE_API_KEY, or with runware auth login. Only the SDK, pillow, and soundfile install - nothing else to manage.
Where people get burned
The multi-shot template is easy to get subtly wrong - mismatched seconds that don't sum to duration, or a shot prompt running past 512 characters, and the request bounces. And since Turbo is the cheap tier, the temptation is to iterate until the sun comes up; the run info line prints the cost for a reason. If all you need is one clean shot, Pro or Standard might serve you better. If you need to pitch a sequence, Turbo's template is the trick.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| positivePrompt | STRING | Text prompt describing elements to include in the generated output. Also accepts a multi-shot template of the form `shot <n>, <seconds>, <prompt>;` repeated for up to 6 shots, where the per-shot seconds sum to `duration` and each shot prompt is at most 512 characters. | |
| frameImagesopt | IMAGE | — | |
| negativePromptopt | STRING | Prompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1). | |
| sizeopt | COMBO | 720p (16:9) | Output size. Only one of resolution or dimensions is sent. |
| durationopt | INT | 53–15 | Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps). |
| numberResultsopt | INT | 11–4 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| safetyopt | BOOLEAN | false | Enable to set safety. Off uses the model's default. |
| safety.checkContentopt | BOOLEAN | false | Enable or disable content safety checking. |
| safety.modeopt | COMBO | fast | Safety checking mode for video generation. |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | MP4 | File format for the generated video. |
| outputQualityopt | INT | 9520–99 | Compression quality of the output. Higher values preserve quality but increase file size. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |