Kwaivgi Kling V2.1 I2V Standard
Playground
Try it on WavespeedAI!Kling v2.1 is the latest evolution of Kuaishou’s AI-powered video‑generation model, designed to seamlessly create short, cinematic‑quality clips (typically 5–10 s at 720p or 1080p) from a single image or a text prompt. It represents a major leap forward from Kling 2.0, emphasizing motion fidelity, visual coherence, and prompt accuracy.
Features
Kling v2.1
Kling v2.1 is an AI video generation model developed by KlingAI (Kuaishou). It is purpose-built for creators, artists, and production teams seeking fast, realistic video generation from image and text prompts. Ideal for rapid prototyping, rough drafts, and creative iteration, it balances performance with affordability—while maintaining high-quality motion dynamics and visual coherence.
🔍 Overview
Kling 2.1 leverages 3D spatiotemporal attention, advanced motion synthesis, and cinematic camera simulation to transform static inputs into dynamic, photorealistic video clips. The i2v-standard variant provides a lightweight version for scalable generation tasks without sacrificing essential quality.
✨ Key Features
-
Smooth Motion
- Advanced stabilization techniques ensure jitter-free movement across frames, even during complex sequences.
-
High-Fidelity Rendering
- Realistic modeling of skin, fluids, materials, and reflections to preserve physical consistency.
-
Prompt Understanding
- Enhanced context-aware interpretation of complex actions, camera directives, and stylistic cues.
-
Camera Control
- Supports cinematic moves like dolly zooms, panning, and programmable motion paths for enhanced visual storytelling.
🎯 Use Cases
-
Short-Form Video Production
- Generate fast and engaging clips for TikTok, YouTube Shorts, Instagram Reels, etc.
-
Storyboarding and Previsualization
- Create visual drafts for films, ads, or animation projects with dynamic composition.
-
Promotional Content
- High-resolution marketing videos for commercial brands or product showcases.
-
Artistic Video Creation
- Stylized, experimental outputs suitable for NFTs, video art, and immersive storytelling.
-
Game and Simulation Previews
- Generate scene previews for virtual environments and narrative cutscenes in game development.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/kwaivgi/kling-v2.1-i2v-standard" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"prompt": "In a sky filled with swirling clouds and patches of bright sunlight, a fighter jet pilot expertly performs high-speed maneuvers. As the pilot spots an incoming threat, they swiftly execute a barrel roll to evade it. The jet's engines roar as it slices through the air, leaving a trail of contrails behind. ",
"negative_prompt": "blur, distort, and low quality",
"image": "https://d3gnftk2yhz9lr.wavespeed.ai/media/images/1749521540283047966_dqzyvrnl.jpeg",
"guidance_scale": 0.5,
"duration": "5"
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
Parameter | Type | Required | Default | Range | Description |
---|---|---|---|---|---|
prompt | string | Yes | - | Text prompt for generation; Positive text prompt; Cannot exceed 2500 characters. | |
negative_prompt | string | No | - | Negative text prompt; Cannot exceed 2500 characters. | |
image | string | Yes | - | First frame of the video; Supported image formats include.jpg/.jpeg/.png; The image file size cannot exceed 10MB, and the image resolution should not be less than 300*300px. | |
guidance_scale | number | No | 0.5 | 0.00 ~ 1.00 | The guidance scale to use for the generation. |
duration | string | No | 5 | 5, 10 | The duration of the generated media in seconds. |
Response Parameters
Parameter | Type | Description |
---|---|---|
code | integer | HTTP status code (e.g., 200 for success) |
message | string | Status message (e.g., “success”) |
data.id | string | Unique identifier for the prediction, Task Id |
data.model | string | Model ID used for the prediction |
data.outputs | array | Array of URLs to the generated content (empty when status is not completed ) |
data.urls | object | Object containing related API endpoints |
data.urls.get | string | URL to retrieve the prediction result |
data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
data.status | string | Status of the task: created , processing , completed , or failed |
data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
data.error | string | Error message (empty if no error occurred) |
data.timings | object | Object containing timing details |
data.timings.inference | integer | Inference time in milliseconds |
Result Query Parameters
Result Request Parameters
Parameter | Type | Required | Default | Description |
---|---|---|---|---|
id | string | Yes | - | Task ID |
Result Response Parameters
Parameter | Type | Description |
---|---|---|
code | integer | HTTP status code (e.g., 200 for success) |
message | string | Status message (e.g., “success”) |
data | object | The prediction data object containing all details |
data.id | string | Unique identifier for the prediction, the ID of the prediction to get |
data.model | string | Model ID used for the prediction |
data.outputs | array | Array of URLs to the generated content (empty when status is not completed ) |
data.urls | object | Object containing related API endpoints |
data.urls.get | string | URL to retrieve the prediction result |
data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
data.status | string | Status of the task: created , processing , completed , or failed |
data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
data.error | string | Error message (empty if no error occurred) |
data.timings | object | Object containing timing details |
data.timings.inference | integer | Inference time in milliseconds |