Documentation Index
Fetch the complete documentation index at: https://docs-model.skyengine.com.cn/llms.txt
Use this file to discover all available pages before exploring further.
可灵 Kling 视频生成示例
以下示例展示如何使用可灵(Kling)视频生成模型通过 OpenAI 兼容接口生成高质量的视频内容。
支持的模型
| 模型 ID | 模式 | 时长 | 分辨率 |
|---|
| kling-v2-6-std | 标准模式 (std) | 5/10 秒 | 1080p |
| kling-v2-6-pro | 专家模式 (pro) | 5/10 秒 | 1080p |
可灵视频生成分为三个步骤:
- 创建视频生成任务 - 提交生成请求,获得任务ID
- 查询任务状态 - 定期检查任务进度
- 下载生成的视频 - 任务完成后下载视频文件
步骤1:创建视频生成任务
curl --request POST \
--url https://model-api.skyengine.com.cn/v1/videos \
--header 'Authorization: Bearer <API-KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "kling-v2-6-std",
"prompt": "一只金毛犬在海边奔跑,阳光洒在它的毛发上,海浪轻轻拍打着沙滩,画面温馨治愈",
"seconds": "5",
"size": "1280x720"
}'
响应示例
{
"id": "kling-task-20260304123456",
"object": "video",
"model": "kling-v2-6-std",
"mode": "std",
"status": "in_queue"
}
步骤2:查询任务状态
# 查询任务状态
curl -X GET "https://model-api.skyengine.com.cn/v1/videos/kling-task-20260304123456" \
--header 'Authorization: Bearer <API-KEY>'
状态响应示例
排队中:
{
"id": "kling-task-20260304123456",
"object": "video",
"model": "kling-v2-6-std",
"mode": "std",
"status": "in_queue"
}
已完成:
{
"id": "kling-task-20260304123456",
"object": "video",
"model": "kling-v2-6-std",
"mode": "std",
"status": "completed",
"created_at": 1741094400,
"completed_at": 1741094700,
"seconds": "5",
"size": "1280x720",
"task_result": {
"videos": [
{
"id": "video-001",
"url": "https://cdn.example.com/videos/output.mp4",
"duration": "5"
}
]
}
}
步骤3:下载生成的视频
# 下载视频文件
curl -X GET "https://model-api.skyengine.com.cn/v1/videos/kling-task-20260304123456/content" \
--header 'Authorization: Bearer <API-KEY>' \
--output kling_video.mp4
完整流程示例
import requests
import time
API_KEY = "<API-KEY>"
BASE_URL = "https://model-api.skyengine.com.cn/v1"
def complete_kling_video_generation(prompt, model="kling-v2-6-std", **kwargs):
"""
完整的可灵视频生成流程
"""
# 步骤1: 创建任务
print("步骤1: 创建视频生成任务...")
create_result = create_kling_video(prompt, model, **kwargs)
if not create_result:
return False
video_id = create_result['id']
print(f"任务ID: {video_id}")
# 步骤2: 等待任务完成
print("步骤2: 等待任务完成...")
max_wait_time = 600 # 10分钟
start_time = time.time()
while time.time() - start_time < max_wait_time:
status_info = check_video_status(video_id)
if not status_info:
break
status = status_info.get('status')
print(f"当前状态: {status}")
if status == 'completed':
print("视频生成完成!")
break
elif status == 'failed':
error_info = status_info.get('error', {})
print(f"视频生成失败: {error_info.get('message', '未知错误')}")
return False
time.sleep(10) # 每10秒检查一次
else:
print("等待超时")
return False
# 步骤3: 下载视频
print("步骤3: 下载视频...")
output_path = f"kling_video_{video_id}.mp4"
if download_video(video_id, output_path):
print(f"视频生成完成: {output_path}")
return True
return False
# 使用示例
if __name__ == "__main__":
# 标准模式
success = complete_kling_video_generation(
prompt="一只金毛犬在海边奔跑,阳光洒在它的毛发上,海浪轻轻拍打着沙滩,画面温馨治愈",
model="kling-v2-6-std",
seconds="5",
size="1280x720"
)
if success:
print("视频生成成功!")
else:
print("视频生成失败!")
支持的参数
基础参数
| 参数名 | 类型 | 必填 | 描述 |
|---|
| model | String | 是 | 使用的模型名称:kling-v2-6-std(标准模式)或 kling-v2-6-pro(专家模式) |
| prompt | String | 是 | 文本提示词,最大 2500 字符 |
视频生成参数
| 参数名 | 类型 | 必填 | 描述 |
|---|
| seconds | String | 否 | 视频时长(秒):5 或 10 |
| size | String | 否 | 视频分辨率,格式为 宽x高(如 1280x720) |
| ratio | String | 否 | 宽高比,可选值:16:9、9:16、1:1。可通过 size 参数自动推导 |
分辨率与宽高比映射
| Size (宽x高) | 宽高比 |
|---|
| 1280x720 | 16:9 |
| 720x1280 | 9:16 |
| 1080x1080 | 1:1 |
高级功能
图生视频(首帧指定)
通过 content 参数指定首帧图片,实现图生视频功能。
{
"model": "kling-v2-6-pro",
"prompt": "让这张图片中的场景动起来,展现自然的风吹效果",
"seconds": "5",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://example.com/image.jpg"
},
"role": "first_frame"
}
]
}
# 图生视频示例
image_content = [
{
"type": "image_url",
"image_url": {
"url": "https://example.com/image.jpg"
},
"role": "first_frame"
}
]
result = create_kling_video(
prompt="让这张图片中的场景动起来,展现自然的风吹效果",
model="kling-v2-6-pro",
seconds="5",
# content 参数需要通过扩展方式传递
)
首尾帧生视频
通过同时指定首帧和尾帧图片,控制视频的起始和结束画面。
{
"model": "kling-v2-6-pro",
"prompt": "从开始的场景自然过渡到结束的场景",
"seconds": "5",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://example.com/start.jpg"
},
"role": "reference_image"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/end.jpg"
},
"role": "last_frame"
}
]
}
curl --request POST \
--url https://model-api.skyengine.com.cn/v1/videos \
--header 'Authorization: Bearer <API-KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "kling-v2-6-pro",
"prompt": "从开始的场景自然过渡到结束的场景",
"seconds": "5",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://example.com/start.jpg"
},
"role": "reference_image"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/end.jpg"
},
"role": "last_frame"
}
]
}'
有声视频生成
通过设置 generate_audio 参数为 true,生成带有音频的视频。
注意: 有声视频生成仅支持专家模式 (pro),标准模式 (std) 不支持此功能。
{
"model": "kling-v2-6-pro",
"prompt": "森林中的鸟鸣声,溪水潺潺,自然风光",
"seconds": "5",
"generate_audio": true
}
curl --request POST \
--url https://model-api.skyengine.com.cn/v1/videos \
--header 'Authorization: Bearer <API-KEY>' \
--header 'Content-Type: application/json' \
--data '{
"model": "kling-v2-6-pro",
"prompt": "森林中的鸟鸣声,溪水潺潺,自然风光",
"seconds": "5",
"generate_audio": true
}'
Content 参数说明
content 数组支持以下类型:
| 类型 | role 值 | 描述 |
|---|
image_url | end_frame / last_frame | 尾帧图片 |
image_url | reference_image | 参考图片(图生视频) |
任务状态说明
- in_queue: 任务已提交,正在排队等待处理
- processing: 任务正在处理中
- completed: 任务已完成,可以下载视频
- failed: 任务失败
模式对比
| 特性 | 标准模式 (std) | 专家模式 (pro) |
|---|
| 生成速度 | 快 | 较慢 |
| 视频质量 | 高 | 更高 |
| 适用场景 | 快速预览、批量生成 | 专业制作、高质量要求 |
| 模型名称 | kling-v2-6-std | kling-v2-6-pro |
提示: 模型名称中包含 -std 或 -pro 后缀时,系统会自动设置对应的生成模式。