模型指南

Kling 3.0 API:价格、声音和可运行的代码

Kling 3.0 是 Kuaishou 的带声音视频模型,视频最长 15 秒,输出最高 4K。本指南介绍你可以在 Revana 上调用的 Kling 模型、各自的费用,以及可以直接运行的请求。

Kling 3.0 擅长什么

Kuaishou 于 2026 年初发布了 Kling 3.0。与其他当前的旗舰视频模型一样,它会随画面一起生成声音,包括语音,并且支持根据文本、单张图片,或一对首帧和尾帧来生成。

  • 口型同步的语音。写一句对白,角色就会说出来,口型与文字匹配,同时还有音效和环境声。
  • 一段视频里有多个镜头。视频最长 15 秒,足够容纳一个带一两次切镜的短场景。
  • 通过图片控制。让静态图动起来,或者同时设置首帧和尾帧,让模型补全中间的动作。
  • 最高 4K。先用 720p 出草稿,再用 1080p 或 4K 渲染最终的那一条。

和所有当前的视频模型一样,画面中精确的文字并不可靠,所以请在剪辑时添加标题和字幕。

输入与限制

选项Kling 3.0
模型 idkling-3.0
任务文生视频、图生视频以及首尾帧
分辨率720p、1080p 和 4K
时长3 到 15 秒
宽高比目录中未列出,所以请不要传 aspect_ratio
声音audio:true 或 false,4K 以下分别计价
线路两条线路

模型不支持的字段或取值,会在任何扣费之前以 422 被拒绝。如果你需要 9:16 这样的固定画幅,请先查看模型页面,或者使用列出该选项的模型,例如 Seedance 2.0 或 Wan 3.0。

Revana 上的 Kling 模型

Kling 模型对比
模型任务分辨率时长起价 / 秒线路
Kling 3.0文生视频、图生视频以及首尾帧720p、1080p 和 4K3 到 15 秒$0.09两条线路
Kling 3.0 Omni文生视频、图生视频、首尾帧、参考图和视频生视频720p、1080p 和 4K3 到 15 秒$0.09两条线路
Kling 3.0 Turbo文生视频和图生视频720p 和 1080p由模型决定$0.12两条线路
Kling 3.0 Motion Control视频生视频720p 和 1080p由模型决定$0.13两条线路
Kling 2.6 Pro文生视频、图生视频以及首尾帧1080p5 秒或 10 秒$0.07两条线路
  • Kling 3.0 Omni 增加了参考图和视频生视频。目录中对以视频作为输入的 Omni 任务单独列出了费率:720p 下每秒 $0.13,1080p 下 $0.17。
  • Kling 3.0 Turbo 支持 720p 和 1080p 的文生视频和图生视频,每种分辨率一个费率。
  • Kling 3.0 Motion Control 基于源视频(视频生视频)工作,分辨率为 720p 或 1080p。
  • Kling 2.6 Pro 是上一代:仅支持 1080p,5 秒或 10 秒,有三种费率:静音每秒 $0.07,带声音 $0.14,带声音和人声 $0.19。

Kling 3.0 价格(2026 年 10 月)

Kling 3.0 按输出视频的每秒计费。720p 和 1080p 下,静音视频一个费率,带声音的更高;4K 下,目录中无论哪种都只列一个费率。

Kling 3.0 的每秒价格和每段价格
分辨率静音 / 秒带声音 / 秒5 秒带声音10 秒带声音15 秒带声音
720p$0.09$0.13$0.65$1.30$1.95
1080p$0.12$0.17$0.85$1.70$2.55
4K$0.42$0.42$2.10$4.20$6.30

如果你用过 Kling 自己的 Standard 和 Pro 模式,它们对应这里的 720p 和 1080p 两行。每个任务的价格在提交时从你的余额中预留,只有任务成功时才会扣费;实际扣费金额会作为 cost_usd 返回。额度包和其他所有模型的价格见价格页面。

生成一段带对白的 Kling 3.0 视频

发送 POST /v1/generations,带上 "model": "kling-3.0"。这个请求要求生成一段 10 秒 1080p 带声音和两句对白的视频,费用为 $1.70。没有 aspect_ratio 字段,因为目录中没有为 Kling 3.0 列出该字段。

cURL
export REVANA_API_KEY="sr_live_..."

# 1. Submit the job (returns 202 with the generation id)
curl https://api.revana.si/v1/generations \
  -H "Authorization: Bearer $REVANA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-3.0",
    "input": {
      "prompt": "Two old friends sit on a park bench in autumn. The man says: \"I never thought we would make it this far.\" The woman laughs and replies: \"Neither did I.\" Leaves falling, gentle wind, distant children playing.",
      "resolution": "1080p",
      "duration": 10,
      "audio": true
    },
    "max_cost_usd": 3
  }'

# 2. Poll with the id from step 1 until status is "succeeded" or "failed"
curl https://api.revana.si/v1/generations/gen_01JBX7Q2M4 \
  -H "Authorization: Bearer $REVANA_API_KEY"
Python
import os
import time

import requests

API = "https://api.revana.si/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['REVANA_API_KEY']}"}

resp = requests.post(f"{API}/generations", headers=HEADERS, json={
    "model": "kling-3.0",
    "input": {
        "prompt": "Two old friends sit on a park bench in autumn. The man says: \"I never thought we would make it this far.\" The woman laughs and replies: \"Neither did I.\" Leaves falling, gentle wind, distant children playing.",
        "resolution": "1080p",
        "duration": 10,
        "audio": True,
    },
    "max_cost_usd": 3,
})
resp.raise_for_status()
job = resp.json()

while job["status"] in ("queued", "running"):
    time.sleep(5)
    job = requests.get(f"{API}/generations/{job['id']}", headers=HEADERS).json()

if job["status"] == "succeeded":
    print(job["output"]["urls"], job["cost_usd"])
else:
    print("Failed:", job["error"])
Node.js
// Node 18 or later. Save as generate.mjs and run: node generate.mjs
const API = "https://api.revana.si/v1";
const headers = {
  Authorization: `Bearer ${process.env.REVANA_API_KEY}`,
  "Content-Type": "application/json",
};

const res = await fetch(`${API}/generations`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    model: "kling-3.0",
    input: {
      prompt: "Two old friends sit on a park bench in autumn. The man says: \"I never thought we would make it this far.\" The woman laughs and replies: \"Neither did I.\" Leaves falling, gentle wind, distant children playing.",
      resolution: "1080p",
      duration: 10,
      audio: true,
    },
    max_cost_usd: 3,
  }),
});
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
let job = await res.json();

while (job.status === "queued" || job.status === "running") {
  await new Promise((r) => setTimeout(r, 5000));
  job = await (await fetch(`${API}/generations/${job.id}`, { headers })).json();
}

if (job.status === "succeeded") console.log(job.output.urls, job.cost_usd);
else console.error("Failed:", job.error);

提交调用会返回 202 和一个生成任务 id。每隔几秒轮询一次;当状态为 succeeded 时,视频链接在 output.urls 中:

响应
{
  "id": "gen_01JBX7Q2M4",
  "model": "kling-3.0",
  "status": "succeeded",
  "output": {
    "urls": [
      "https://cdn.revana.si/g/gen_01JBX7Q2M4/0.mp4"
    ]
  },
  "cost_usd": 1.7,
  "attempts": 1,
  "error": null,
  "created_at": "2026-10-19T14:02:11Z",
  "completed_at": "2026-10-19T14:03:47Z"
}

请尽快下载文件,因为输出链接会过期。

让照片动起来

通过 image_url 传入照片,并描述接下来发生什么。这段 5 秒 720p 带声音的视频费用为 $0.65。

请求体
{
  "model": "kling-3.0",
  "input": {
    "prompt": "The dog in the photo shakes the water off its coat and runs toward the camera. Splashing, happy barking.",
    "image_url": "https://example.com/dog.jpg",
    "resolution": "720p",
    "duration": 5,
    "audio": true
  },
  "max_cost_usd": 1
}

首帧和尾帧

添加 end_image_url 来固定镜头的结尾。这对产品揭晓和转场很有用。一段 5 秒 1080p 的静音视频费用为 $0.60。

请求体
{
  "model": "kling-3.0",
  "input": {
    "prompt": "The gift box opens and the watch rises out of it, turning slowly under a soft spotlight",
    "image_url": "https://example.com/box-closed.jpg",
    "end_image_url": "https://example.com/watch-reveal.jpg",
    "resolution": "1080p",
    "duration": 5,
    "audio": false
  },
  "max_cost_usd": 1
}

Kling 3.0 的提示词技巧

  • 写明每一位说话者。把每句话放在引号里,并按顺序说明是谁说的。保持句子简短:一段 10 秒的视频可以容纳两三句简短的对话。
  • 在重要时描述声音。“低沉、疲惫的声音”或“兴奋的低语”可以引导表达方式。
  • 把画面和声音分开写。先描述场景,再描述环境声和音效。
  • 每个镜头一种运镜。缓慢推近、手持跟拍或固定机位,每一种都能清楚表达;一连串的运镜则不行。
  • 用 720p 出草稿。在价格较低的分辨率上反复调整,再用 1080p 或 4K 渲染你满意的那一条。不同分辨率的结果有差异,所以会有小的变化。

路由与回退

目前 Kling 3.0 在 Revana 上有两条线路,Kling 3.0 Omni 有两条线路。路由器会先把每个任务发给最便宜的线路;如果失败或超时,任务会自动转到下一条线路。无论由哪条线路处理,你都按标价付费,且只有成功的那条线路才会收费。attempts 字段会显示尝试了多少条。

回退并不等于保证可用。如果所有线路都失败,任务会以 failed 和一条错误信息结束,且不收费;请在你的应用中处理这种情况。

在模型页面将 Kling 与目录中的其他模型对比,在文档中查看字段参考,或者获取 API 密钥。

常见问题

Kling 3.0 API 的价格是多少?

2026 年 10 月,Kling 3.0 在 720p 下不带声音每秒 $0.09,带声音 $0.13;1080p 下分别为 $0.12 和 $0.17。一段 10 秒 1080p 带声音的视频为 $1.70。

Kling 3.0 会生成声音和语音吗?

会。把 audio 设为 true,并在提示词中写出对白;模型会随画面一起生成语音、音效和环境声。4K 以下,带声音的视频按带声音的费率计费。

Kling 3.0 和 Kling 3.0 Omni 有什么区别?

Kling 3.0 Omni 在 Kling 3.0 的任务之外增加了参考图和视频生视频,目录中对带视频输入的 Omni 任务单独列出了费率。

Kling 3.0 的视频最长可以多长?

每次请求 3 到 15 秒。用 duration 字段设置时长。

我可以为 Kling 3.0 设置宽高比吗?

目录中没有为 Kling 3.0 列出宽高比选项,所以请不要传 aspect_ratio。如果需要 9:16 这样的固定画幅,请使用列出该选项的模型,例如 Seedance 2.0 或 Wan 3.0。

Kling 的 Standard 和 Pro 模式是什么?

它们是 Kling 对 720p 和 1080p 输出的叫法。在 Revana 上,你通过 resolution 字段选择:720p 或 1080p。

用一个密钥调用 Kling 3.0

Kling、Veo、Seedance、Wan 以及目录中的其他模型使用同一个密钥和同一种请求格式。预付额度 $10 起。