Kling / Video Generation
Kling 视频生成
Kling 模型用于生成短视频。当前支持文生视频、图生视频、首尾帧和动作控制四类能力,请使用任务式接口提交请求,再轮询任务结果。
可用模型
调用时在 model 字段填写控制台开放的模型名。当前 Kling 系列包含以下模型:
| 模型 | 说明 | 常见能力 |
|---|---|---|
kling-v3 | 新一代 Kling 视频模型。 | 文生视频、图生视频、首尾帧、动作控制,支持 4K。 |
kling-v2-6 | Kling 2.6 视频模型。 | 文生视频、图生视频、首尾帧、动作控制。 |
kling-v2-5-turbo | Kling 2.5 Turbo 视频模型。 | 文生视频、图生视频、首尾帧。 |
具体可调用能力以模型广场、控制台模型权限和接口返回为准。没有价格或未开放的能力不会被调用。
四种视频能力
| 能力 | 接口 | 用途 | 关键参数 |
|---|---|---|---|
| 文生视频 | /kling/v1/videos/text2video | 只通过文字提示词生成视频。 | model、prompt、duration、mode、resolution |
| 图生视频 | /kling/v1/videos/image2video | 基于首帧图片生成视频。 | model、image 或 images[0]、prompt、duration、mode、resolution |
| 首尾帧 | /kling/v1/videos/image2video | 指定开始画面和结束画面,生成中间运动过程。 | model、image、metadata.image_tail 或 metadata.image_tail_url、duration、mode、resolution |
| 动作控制 | /kling/v1/videos/motion-control | 使用参考视频驱动图片中的人物或主体动作。 | model、image、metadata.video_url、metadata.character_orientation、duration、mode |
图片和视频 URL 必须能被服务端公网访问。动作控制对素材要求更严格,人物上半身或要控制的主体需要清晰、完整、无遮挡。
清晰度、模式和声音
| 参数 | 可用值 | 说明 |
|---|---|---|
mode | std、pro | 控制生成档位。std 适合普通预览和低成本批量生成,pro 适合更高质量结果。 |
resolution | std、pro、4k | 控制计费和输出清晰度。4K 仅在支持 4K 的模型和能力上可用。 |
duration | 常见为 5 或模型支持的秒数 | Kling 视频按秒计费。实际可用时长由模型和能力决定。 |
metadata.generate_audio | true / false | 是否生成原生声音。并非所有模型、模式和能力都支持有声视频。 |
metadata.voice_id | 音色 ID | 指定音色。只有支持“有声且指定音色”的模型能力才会生效。 |
如果请求的模型不支持某个组合,例如不支持 4K、动作控制或指定音色,接口会返回 400 类错误。排障时先用 duration: 5、mode: "std"、resolution: "std" 跑通最小请求,再逐步开启更高档位或声音参数。
可用 API 一览
Kling 视频使用异步任务接口:先调用创建接口获得 task_id,再调用对应查询接口获取任务状态和结果视频。当前可用的 Kling 专用 API 如下:
| 能力 | 创建接口 | 查询接口 | 说明 |
|---|---|---|---|
| 文生视频 | POST /kling/v1/videos/text2video | GET /kling/v1/videos/text2video/{task_id} | 只根据文字提示词生成视频。 |
| 图生视频 | POST /kling/v1/videos/image2video | GET /kling/v1/videos/image2video/{task_id} | 根据首帧图片和提示词生成视频。 |
| 首尾帧 | POST /kling/v1/videos/image2video | GET /kling/v1/videos/image2video/{task_id} | 仍然使用图生视频接口;请求里带结束帧字段后按首尾帧处理。 |
| 动作控制 | POST /kling/v1/videos/motion-control | GET /kling/v1/videos/motion-control/{task_id} | 使用参考视频控制图片主体动作。 |
首尾帧不是单独路径。它通过 /kling/v1/videos/image2video 创建,请求中携带 metadata.image_tail、metadata.image_tail_url、metadata.end_image 或 metadata.tail_image 时,系统会按首尾帧计费和展示。
文生视频示例
curl "https://youlai.ai/kling/v1/videos/text2video" \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3",
"prompt": "一位产品经理在明亮办公室中展示手机应用界面,镜头缓慢推进,真实电影感",
"duration": 5,
"mode": "std",
"resolution": "std",
"task_type": "kling.videos.text2video"
}'
图生视频示例
curl "https://youlai.ai/kling/v1/videos/image2video" \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3",
"prompt": "让画面中的人物自然转身并微笑,背景保持稳定",
"image": "https://example.com/first-frame.jpg",
"duration": 5,
"mode": "pro",
"resolution": "pro",
"task_type": "kling.videos.image2video"
}'
首尾帧示例
首尾帧仍使用图生视频接口,通过 metadata.image_tail 或 metadata.image_tail_url 传入结束帧。
curl "https://youlai.ai/kling/v1/videos/image2video" \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v2-6",
"prompt": "从第一张图自然过渡到结束姿态,动作连贯,光照一致",
"image": "https://example.com/start.jpg",
"duration": 5,
"mode": "pro",
"resolution": "pro",
"task_type": "kling.videos.image2video",
"metadata": {
"image_tail": "https://example.com/end.jpg"
}
}'
动作控制示例
动作控制使用图片作为主体外观,使用参考视频提供动作。参考视频中的人体或主体需要完整清晰,否则任务可能被上游拒绝。
curl "https://youlai.ai/kling/v1/videos/motion-control" \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3",
"prompt": "保持人物身份和服装一致,让人物按照参考视频做自然手势动作",
"image": "https://example.com/person.jpg",
"duration": 5,
"mode": "std",
"resolution": "std",
"task_type": "kling.videos.motion-control",
"metadata": {
"video_url": "https://example.com/motion-reference.mp4",
"character_orientation": "video"
}
}'
生成有声视频
支持有声视频的模型可以在 metadata 中开启声音。不同模型对“有声无指定音色”和“有声指定音色”的支持不同,价格也可能不同。
curl "https://youlai.ai/kling/v1/videos/text2video" \
-H "Authorization: Bearer sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-v3",
"prompt": "海边咖啡馆外景,人物轻声介绍今日新品,环境音自然",
"duration": 5,
"mode": "pro",
"resolution": "pro",
"task_type": "kling.videos.text2video",
"metadata": {
"generate_audio": true,
"voice_id": "optional-voice-id"
}
}'
如果不需要声音,请省略 generate_audio 或设为 false,避免触发有声计费项。
查询任务结果
提交成功后会返回平台任务 ID。使用同一能力接口加上任务 ID 轮询结果,直到任务进入 SUCCESS 或 FAILURE。
curl "https://youlai.ai/kling/v1/videos/text2video/TASK_ID" \
-H "Authorization: Bearer sk-xxxxxxxx"
| 创建能力 | 查询接口 |
|---|---|
| 文生视频 | GET /kling/v1/videos/text2video/{task_id} |
| 图生视频 | GET /kling/v1/videos/image2video/{task_id} |
| 首尾帧 | GET /kling/v1/videos/image2video/{task_id} |
| 动作控制 | GET /kling/v1/videos/motion-control/{task_id} |
| 字段 | 说明 |
|---|---|
status | 任务状态,常见为排队、处理中、成功或失败。 |
result_url | 任务成功后的结果视频 URL。 |
fail_reason | 任务失败原因,例如素材不可访问、主体不清晰、模型不支持该参数组合。 |
排障建议
| 问题 | 处理方式 |
|---|---|
| 400 参数错误 | 确认 task_type、接口路径、模型名、mode、resolution 是否匹配。 |
| 图片或视频 URL 为空 | 确认 URL 在公网可访问;动作控制建议同时在 metadata.video_url 传参考视频。 |
| 动作控制识别失败 | 换用上半身完整、无遮挡、人物清晰的参考视频和主体图片。 |
| 4K 或有声失败 | 先用 STD 无声请求跑通,再确认当前模型和能力是否支持 4K 或声音。 |
| 费用高于预期 | 检查是否启用了 pro、4k、generate_audio 或指定音色。 |