AIZNT

Kling

快手 Kling 视频模型接入:文生视频、图生视频,异步任务模式。

Kling(可灵)视频模型采用异步任务模式:提交任务 → 轮询状态 → 下载视频,调用流程与 Seedance 一致。不同模型和能力使用不同的创建任务路径,具体字段请以对应模型页面为准。

调用流程

  1. 提交任务:发送提示词(文生视频)或参考图 + 提示词(图生视频),拿到任务 ID
  2. 轮询查询:按任务 ID 查询状态,直到 succeeded
  3. 下载视频:从结果中取视频 URL 并保存(URL 有时效)
import time
import requests

BASE = "https://token.aiznt.com"
HEADERS = {
    "Authorization": "Bearer sk-你的密钥",
    "Content-Type": "application/json",
}

# 1. 提交 Kling 3.0 文生视频任务
task = requests.post(
    f"{BASE}/text-to-video/kling-3.0",
    headers=HEADERS,
    json={
        "prompt": "一只橘猫在键盘上奔跑,镜头跟随",
        "settings": {
            "resolution": "720p",
            "aspect_ratio": "16:9",
            "duration": 3,
        },
    },
    timeout=30,
).json()
if task.get("code") != 0:
    raise RuntimeError(task)
task_id = task["data"]["id"]

# 2. 通过统一任务接口轮询
while True:
    result = requests.get(
        f"{BASE}/tasks",
        params={"task_ids": task_id},
        headers=HEADERS,
        timeout=30,
    ).json()
    if result.get("code") != 0:
        raise RuntimeError(result)
    item = result["data"][0]
    if item["status"] == "succeeded":
        video_url = item["outputs"][0]["url"]
        break
    if item["status"] == "failed":
        raise RuntimeError(item)
    time.sleep(5)

print(video_url)

提示

上例使用 Kling 3.0 文生视频接口。Kling 3.0 Turbo、3.0 Omni 和 O1 的路径、素材类型及参数有所不同,请复制对应子页面的示例。任务创建成功后,使用返回的 data.id 调用 GET /tasks?task_ids=... 查询;状态为 succeeded 时从 data[].outputs[] 的视频 url 取结果。结果 URL 具有时效性,请及时保存。

本页目录