Nodes/ComfyUI-Kling-Direct/Kling AI Multi-Shot
ComfyUI Node

Kling AI Multi-Shot

One character, six consistent shots — Kling's answer to character drift

By IxMxAMAR·Created 5 months ago·Updated 2 months ago· 4
Kling AI Multi-Shot
  • auth
  • images
  • url
  • task_id
prompt
shot_1_prompt
aspect_ratio1:1
shot_2_prompt
shot_3_prompt
shot_4_prompt
shot_5_prompt
shot_6_prompt

Character consistency is the problem every image-video person eventually hits: you want the same person across multiple shots, and local tools want you to train a LoRA or wire up IP-Adapter to get there. KlingDirect_MultiShot sidesteps all of that with a single API call - give Kling one overall description plus up to six per-shot prompts, and it returns a batch of images that share a coherent subject, no training involved. It's Kling's own answer to the consistency problem, and it lives entirely on their servers.

The tradeoff is worth stating up front: this is a closed-model capability, so you're paying for it per call and you're trusting Kling's idea of "consistent." When it works - and for a single clearly-described character it works well - it beats the local multi-LoRA dance for speed. When it doesn't, there's no adapter to tune; you rewrite the prompt.

How it works

The node sends your prompt as the anchor - the overall scene and character description that every shot must honor - then sends each shot_*_prompt as an individual frame. shot_1_prompt is required; shots 2 through 6 are optional, so a two-shot storyboard is a valid workflow. aspect_ratio (default 1:1) applies to all shots, so pick once for the whole batch. Under the hood it uses Kling's kling-image-o1 multi-shot endpoint (/v1/images/ai-multi-shot), then downloads every returned image and stacks them into one IMAGE batch.

The mental model: the main prompt is the contract ("a red-haired detective in a trench coat, rain-slick city night"), and each shot prompt is a staging direction ("shot 2: she examines a photograph, close-up on her hands"). The more specific your character contract, the less drift you'll see.

Outputs

  • images (IMAGE) - all shots concatenated into a single batch, frames in order. Preview it, split it with a batch-indexing node, or pipe it straight into Video to File to rough-cut a storyboard reel.
  • url - hosted result.
  • task_id - for chaining into Task Status.

The batch-order detail matters: because everything comes back as one tensor, it's trivial to feed the whole thing into image-to-video later, one shot at a time.

Install and what it needs

Part of ComfyUI-Kling-Direct - ComfyUI Manager → search "Kling Direct" → install, or git clone https://github.com/IxMxAMAR/ComfyUI-Kling-Direct into ComfyUI/custom_nodes, then restart. No weights download; the pack needs only your Kling access key + secret key (from https://app.klingai.com/global/dev, KYC required) in the Kling AI Authentication node, or set as KLING_ACCESS_KEY / KLING_SECRET_KEY env vars. Wire auth in and mind the region (Singapore default; China/US accounts need the Region Selector).

Where people get burned

  • Vague anchor prompts. The whole consistency guarantee rests on the main prompt. "A woman in a city" will drift between shots; name the outfit, the hair, the lighting, the vibe.
  • Forgetting it's metered. A six-shot generation is one API job but a multi-image job - it costs more than a single image, and you pay for every shot whether you keep it or not. Draft with two shots, expand once the character holds.
  • Sharing the aspect ratio. All six shots share one aspect_ratio; you can't mix a wide establishing shot with a vertical portrait in the same call. Plan the batch as one framing.

If you need consistency across separate generations rather than inside one batch, that's the harder problem - and Kling's single-shot image gen plus careful prompt engineering is your only lever here. For a storyboard in one call, this node is exactly the right tool.

CategoryKling AI/Image

Inputs (9)

NameTypeDefaultDescription
authKLING_AUTH
promptSTRINGOverall scene/character description for consistency across shots.
shot_1_promptSTRINGPrompt for shot 1 (required).
aspect_ratioCOMBO1:1Aspect ratio for all generated shots.
shot_2_promptoptSTRINGPrompt for shot 2.
shot_3_promptoptSTRINGPrompt for shot 3.
shot_4_promptoptSTRINGPrompt for shot 4.
shot_5_promptoptSTRINGPrompt for shot 5.
shot_6_promptoptSTRINGPrompt for shot 6.

Outputs (3)

NameTypeDescription
imagesIMAGE
urlSTRING
task_idSTRING