通过 Comfy Router 使用 Kling 3.0 Turbo
通过 Comfy Router 调用 kling/kling-3.0-turbo:端点、请求结构以及 Router 返回的响应。
通过 Comfy Router 使用 Kling 3.0 Turbo
通过 Comfy Router 调用 kling/kling-3.0-turbo:端点、请求结构以及 Router 返回的响应。
kling/kling-3.0-turbo 的 API 参考,由 Comfy Router 从 Kling 提供。
输入: 文本 · 输出: 视频
快速开始
在你的 Comfy 工作区中创建密钥,并将其导出为 COMFY_API_KEY。Python 和 TypeScript 代码片段使用 Comfy SDK(pip install comfy-sdk 和 npm install @comfyorg/sdk);cURL 代码片段则是通过原始 HTTP 执行的同一调用。
模型 ID:kling/kling-3.0-turbo
端点:POST https://api.comfy.org/v2/models/kling/kling-3.0-turbo
[tab] 等待结果 ``python Python theme={null} from comfy_sdk import Comfy # 从环境变量中读取 COMFY_API_KEY。 # SDK 会自动创建幂等键,并在自动重试时复用它。 with Comfy() as client: result = client.models.run( "kling/kling-3.0-turbo", { "prompt": "A neon-lit alley in the rain, slow dolly forward.", "settings": { "aspect_ratio": "16:9", "duration": 5, "resolution": "1080p", }, }, ) print(result)``typescript TypeScript theme={null} import { comfy } from "@comfyorg/sdk"; // 从环境变量中读取 COMFY_API_KEY。 // SDK 会自动创建幂等键,并在自动重试时复用它。 const { data } = await comfy.models.run("kling/kling-3.0-turbo", { prompt: "A neon-lit alley in the rain, slow dolly forward.", settings: { aspect_ratio: "16:9", duration: 5, resolution: "1080p", }, }); console.log(data);``bash cURL theme={null} curl https://api.comfy.org/v2/models/kling/kling-3.0-turbo \ -H "X-API-Key: $COMFY_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ -d "{\"prompt\": \"A neon-lit alley in the rain, slow dolly forward.\", \"settings\": {\"aspect_ratio\":\"16:9\",\"duration\":5,\"resolution\":\"1080p\"}}"``
[tab] 入队并稍后收集 将相同的请求体发送到POST https://api.comfy.org/v2/models/kling/kling-3.0-turbo/requests。运行一经受理,Router 便会立即返回201和request_id;结果就绪后,可以从本进程或其他进程收集。状态、取消与收集的细节见 队列投递。 ``python Python theme={null} import asyncio from comfy_sdk import AsyncComfy # 从环境变量中读取 COMFY_API_KEY。 # 每次 submit() 调用都会生成自己的 Idempotency-Key,并在自动重试时复用它。 async def main(): async with AsyncComfy() as client: handle = await client.models.submit( "kling/kling-3.0-turbo", { "prompt": "A neon-lit alley in the rain, slow dolly forward.", "settings": { "aspect_ratio": "16:9", "duration": 5, "resolution": "1080p", }, }, ) print("request_id:", handle.request_id) # 配合模型 ID,即为另一个进程所需的全部信息 # 轮询直到请求完成,每次等待服务器指定的 Retry-After 时长。 async for update in handle.iter_events(): print(update.status, update.queue_position) # 提供商的原始响应体,与 models.run() 返回的值相同。 # 失败或已取消的请求会在此处抛出类型化的 Router 错误。 result = await handle.get() print(result) asyncio.run(main())``typescript TypeScript theme={null} import { comfy } from "@comfyorg/sdk"; // 从环境变量中读取 COMFY_API_KEY。 // 每次 submit() 调用都会生成自己的 Idempotency-Key,并在自动重试时复用它。 const handle = await comfy.models.submit("kling/kling-3.0-turbo", { prompt: "A neon-lit alley in the rain, slow dolly forward.", settings: { aspect_ratio: "16:9", duration: 5, resolution: "1080p", }, }); console.log("requestId:", handle.requestId); // 配合模型 ID,即为另一个进程所需的全部信息 // 轮询直到请求完成,每次等待服务器指定的 Retry-After 时长。 for await (const update of handle.events()) { console.log(update.status, update.queuePosition); } // 与 models.run() 返回的结果相同。失败或已取消的请求会在此处拒绝。 const result = await handle.get(); console.log(result.data);``bash cURL theme={null} # 1. 提交。Router 返回 201,并带有 request_id、status_url、response_url 和 cancel_url。 curl https://api.comfy.org/v2/models/kling/kling-3.0-turbo/requests \ -H "X-API-Key: $COMFY_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ -d "{\"prompt\": \"A neon-lit alley in the rain, slow dolly forward.\", \"settings\": {\"aspect_ratio\":\"16:9\",\"duration\":5,\"resolution\":\"1080p\"}}" # 2. 轮询直到状态为 COMPLETED,每次等待响应中指定的 Retry-After 秒数。 REQUEST_ID="<request_id from the 201 body>" curl -i https://api.comfy.org/v2/models/kling/kling-3.0-turbo/requests/$REQUEST_ID/status \ -H "X-API-Key: $COMFY_API_KEY" # 3. 收集结果。若已完成,返回 200 及模型原生输出;若仍在运行,返回 202 及状态响应体。 curl https://api.comfy.org/v2/models/kling/kling-3.0-turbo/requests/$REQUEST_ID \ -H "X-API-Key: $COMFY_API_KEY"``
提供服务的提供商
除非请求指定了其他提供商,否则此模型由 Comfy Router 直接提供服务。以下提供商也提供该模型的服务,使用相同的端点和相同的模型 ID,并通过 model_provider 查询参数进行选择。
- Comfy(默认):
POST https://api.comfy.org/v2/models/kling/kling-3.0-turbo - Higgsfield,作为
higgsfield/higgsfield-kling-3-turbo:POST https://api.comfy.org/v2/models/kling/kling-3.0-turbo?model_provider=higgsfield
strict_mode 默认为 false,因此 Router 会将本页记录的原生请求体转换为提供商自身的 schema,并将响应转换回来。请参阅 API 参考中的 model_provider、strict_mode 和 fallback_provider,以及 提供服务的提供商,以了解所有以此方式路由的模型。
Schema
输入
aspect\_ratio string (default: "16:9")
视频宽高比
可选值:16:9, 9:16, 1:1
duration string (default: "5")
视频长度,以秒为单位
可选值:3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
options object
常规配置,例如回调地址和水印选项。
options.callback\_url string
任务结果回调通知 URL。当任务状态发生变化时,服务器会发送通知。此项会被忽略:comfy-api 在转发前会丢弃该字段;由 Comfy Router 代你轮询。
options.external\_task\_id string
自定义任务 ID。不会覆盖系统生成的任务 ID,但可用于查询。在单个用户账号内必须唯一。此项会被忽略:comfy-api 在转发前会丢弃该字段;由 Comfy Router 代你轮询。
options.watermark\_info object
是否同时生成带水印的结果。不支持自定义水印。
options.watermark\_info.enabled boolean
true 表示生成带水印的结果,false 表示不生成。默认 false。
prompt string required
提示词,可同时包含正面和负面描述。推荐长度不超过 2500 个字符。多镜头视频使用格式 "shot n, m, words; shot n, m, words;"。
settings object
输出配置,例如分辨率、宽高比和时长。
settings.aspect\_ratio string
已生成画面的宽高比(width:height)。取值为 "16:9"、"9:16" 或 "1:1" 之一。默认 "16:9"。
可选值:16:9, 9:16, 1:1
settings.duration integer
视频长度,以秒为单位。支持的取值为 3 到 15。默认 5。
范围:3 到 15
settings.resolution string
已生成视频的清晰度。取值为 "720p" 或 "1080p" 之一。默认 "720p"。
可选值:720p, 1080p
由 Router 在 GET /v2/models/kling/kling-3.0-turbo/openapi.json 提供的 schema 生成,与它在请求到达提供商之前用于校验调用的文档相同。
输出
code integer
错误码。0 表示成功。
data object[]
匹配该查询的任务。
data\[].billing object[]
任务的计费详情。
data\[].billing\[].amount string
消耗金额,精确到小数点后两位。
data\[].billing\[].cash\_type string
扣款来自的现金账户(仅在 charge\_type 为 "cash" 时出现),例如 "balance"。部分任务会返回该字段,部分可能省略。
data\[].billing\[].charge\_type string
消耗账户类型。"cash" 表示余额,"unit" 表示资源包。
data\[].billing\[].currency string
amount 与 list_price 的 ISO 4217 货币代码,例如 "USD"。部分任务会返回该字段,部分可能省略。
data\[].billing\[].list\_price string
折扣前的任务标价,十进制字符串。部分任务会返回该字段,部分可能省略。
data\[].billing\[].package\_type string
可消耗资源包类型(仅在 charge\_type 为 "unit" 时存在)。取值为 "video"、"image" 或 "audio" 之一。
data\[].create\_time integer
任务创建时间。Unix 时间戳,以毫秒为单位。
格式: int64
data\[].external\_id string
此任务的自定义任务 ID(如果有)。
data\[].id string
任务 ID。
data\[].message string
任务状态信息,任务失败时显示失败原因。
data\[].outputs object[]
任务已生成的输出。
data\[].outputs\[].duration string
已生成视频的时长,以秒为单位。
data\[].outputs\[].group\_id string
分组标记,仅对已分组的图像存在。
data\[].outputs\[].id string
由系统生成的输出 ID。
data\[].outputs\[].mp3\_duration string
已生成 MP3 音频的时长,以秒为单位。
data\[].outputs\[].mp3\_url string
已生成音频的 MP3 URL(防盗链保护)。
data\[].outputs\[].name string
已生成素材的名称。
data\[].outputs\[].owned\_by string
素材来源。"kling" 表示官方库;数字为创作者 ID。
data\[].outputs\[].status string
素材状态。取值为 "succeeded" 或 "deleted" 之一。
data\[].outputs\[].type string
输出内容类型。取值为 "video"、"image"、"audio"、"voice" 或 "element" 之一。
data\[].outputs\[].url string
已生成结果的 URL(防盗链保护)。30 天后清除。
data\[].outputs\[].watermark\_url string
带水印结果的 URL(防盗链保护)。
data\[].outputs\[].wav\_duration string
已生成 WAV 音频的时长,以秒为单位。
data\[].outputs\[].wav\_url string
已生成音频的 WAV URL(防盗链保护)。
data\[].status string
任务状态。取值为 "submitted"、"processing"、"succeeded" 或 "failed" 之一。
data\[].update\_time integer
任务更新时间。Unix 时间戳,以毫秒为单位。
格式: int64
message string
报错信息。
request\_id string
由系统生成的请求 ID。
示例
输入
{
"prompt": "A neon-lit alley in the rain, slow dolly forward.",
"settings": {
"aspect_ratio": "16:9",
"duration": 5,
"resolution": "1080p"
}
}
输出
{
"code": 0,
"data": [
{
"create_time": 1798761600000,
"id": "kling-v2-task-7c8d9e0f1a2b",
"message": "",
"outputs": [
{
"duration": "5",
"id": "kling-v2-output-2b1a0f9e8d7c",
"type": "video",
"url": "https://example.invalid/kling/v2/generated.mp4"
}
],
"status": "succeeded",
"update_time": 1798761820000
}
],
"message": "SUCCEED",
"request_id": "3d7e5c91-0b42-4f68-9a13-8e2c6d4b0a75"
}
发布前须知
SDK 会生成 Idempotency-Key 并在自动重试中复用它。手动重试时,请复用原始 key。Router 最长可保持连接 10 分钟。
请求失败时,Router 会发送 X-Comfy-Error-Type 响应头说明原因。422 表示 Router 在调用提供商之前就拒绝了输入,413 表示请求体超出了 Router 可接受的大小。已生成的资源请及时下载,因为结果 URL 会过期。
上文任何字段描述中提到的尺寸限制,都是提供商对该字段自身的限定,引自提供商的规范。Router 会对整个请求体另行设置上限,base64 编码的媒体内容也计入其中:参见请求体大小。
本页记录的是通过 Comfy Router 调用的某一个合作伙伴模型。同一个 comfy-sdk / @comfyorg/sdk 包还提供第二个客户端,用于在 Comfy Cloud 上运行完整的 ComfyUI 工作流图:Comfy(api_key=...) / new Comfy({ apiKey }),并带有 client.workflows、client.assets 和 client.jobs。请参阅 Comfy SDKs。
[card] 请求头 身份验证、幂等性、请求 ID、错误分类、重试节奏、消费限额。
[card] 使用 Router API 模型发现、验证错误、重试与计费。
[card] 限制 Router 目前不支持的功能,以及替代方案。