Video
Kling 4.0 Flash
テキスト、参照画像、参照動画、再利用できるキャラクターや小道具のエレメントから、3〜20 秒・720p の Kling 4.0 Flash クリップを音声付きで生成します。
Kling 4.0 Flash は Kuaishou の Kling 4.0 ファミリーの軽量モデルです。SeedRouter ではテキストからの動画生成と参照に基づく生成に対応し、最大 10 枚の参照画像、最大 5 本の参照動画、最大 7 つのエレメント(2〜4 枚の画像または短い動画 1 本から作る名前付きの被写体)を、それぞれプロンプトで指定できます。すべてのクリップは 3〜20 秒、720p の音声付きです。リクエストを送信し、返されたタスク ID を保持して、完成した動画をタスクから読み取ってください。メディアは URL で渡します。
モデル ID
| モデル ID | 入力 | 解像度 | 長さ |
|---|---|---|---|
kling-4-0-flash | テキスト、参照画像、参照動画、エレメント | 720p | 3〜20 秒 |
現在の料金はモデルページをご覧ください。
クイックサンプル
curl https://api.seedrouter.ai/v1/videos/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-4-0-flash",
"prompt": "A paper boat drifts down a rain-filled city gutter at dusk, the camera skimming the water beside it past glowing shop windows, raindrops ticking on the surface. No text, no logos.",
"duration": 5,
"aspect_ratio": "16:9"
}'エンドポイント
POST https://api.seedrouter.ai/v1/videos/generations| ヘッダー | 値 |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
レスポンスはタスク({"id": "task_...", "status": "processing"})であり、完成した動画ではありません。結果は GET /v1/tasks/{task_id} をポーリングして取得してください。API キーはサーバー側のコードで保持してください。
パラメータ
| フィールド | 型 | デフォルト | 説明 |
|---|---|---|---|
model | 文字列 | 必須 | kling-4-0-flash |
prompt | 文字列 | 必須 | 最大 8,000 文字。送信する画像・動画・エレメントを @image_1、@video_1、@<element name> として記述します(メンションを参照)。 |
duration | 整数 | 5 | 出力の長さは 3〜20 秒。 |
resolution | 列挙型 | 720p | 出力は 720p のみです。 |
aspect_ratio | 列挙型 | 入力による | auto、16:9、9:16、1:1、21:9。省略時は参照画像・動画・エレメントがある場合は auto、それ以外は 16:9 です。 |
image_urls | URL の配列 | なし | 参照画像、最大 10 枚。@image_1、@image_2、… の順に記述します。 |
video_urls | URL の配列 | なし | 参照動画、最大 5 本。@video_1、@video_2、… として記述します。動画入力レートで課金されます。 |
keep_original_sound | 真偽値 | false | 参照動画の元の音声を保持します。video_urls がある場合にのみ有効です。参照動画がない場合は常に新しい音声が生成されます。 |
elements | オブジェクトの配列 | なし | このリクエストで使う被写体、最大 7 つ。@name として記述します(エレメントを参照)。 |
すべてのクリップには音声が付き、音声スイッチはありません。最初・中間・最後のフレームを指定するフィールド、negative_prompt、watermark、独立した voices フィールドはありません。声は voice_url でエレメントに紐付けます。スキーマは厳格です。未知のフィールドは無視されず、拒否されます。callback_url は利用できません。代わりにタスクをポーリングしてください。
メンション
送信する画像・動画・エレメントはすべて任意です。何も送らない場合はテキストのみから動画を生成します。送信した場合は、プロンプト内でそれぞれを指定してください:
| 送信するメディア・エレメント | メンション | 上限 |
|---|---|---|
image_urls | @image_1、@image_2、… | 画像 10 枚 |
video_urls | @video_1、@video_2、… | 動画 5 本 |
elements | @name | エレメント 7 つ、うち動画エレメントは最大 3 つ |
英字、数字、アンダースコア、漢字が続くすべての @ は、このリクエストで送信した画像・動画・エレメントを指す必要があります。そうでない場合、課金前にリクエストが拒否されます。名前は大文字と小文字を区別せず、長いものから照合します。英字、数字、アンダースコアで終わる名前の直後に、別の英字、数字、アンダースコアを続けることはできません。画像が 1 枚の場合、@image_12 は拒否されます。@image_1 2 または @image_1, と記述してください。
参照動画と動画エレメントは合わせて最大 5 つ、画像・動画・エレメントは合わせて最大 15 個です。
{
"model": "kling-4-0-flash",
"prompt": "The dancer from @image_1 performs the routine of @video_1 on a rooftop at dusk",
"image_urls": ["https://example.com/dancer.png"],
"video_urls": ["https://example.com/routine.mp4"],
"keep_original_sound": false,
"duration": 8
}エレメント
エレメントは、プロンプトで再利用できる名前付きの被写体です。次の 2 種類があります:
| フィールド | 画像エレメント | 動画エレメント |
|---|---|---|
name | 必須 | 必須 |
type | image(デフォルト) | video |
image_urls | 2〜4 アングル、最初の画像がメイン | 受け付けません |
video_url | 受け付けません | キャラクターの 3〜8 秒のワンショット動画 1 本、短辺が 700 ピクセル以上 |
tag | character、animal、prop、costume、scene、effect、others。省略時は推定されます | character のみ |
description | 最大 100 文字 | 最大 100 文字 |
voice_url | 参照音声。キャラクターのみ(tag が character または省略時) | 参照音声。省略時は動画内の発話を使用します |
名前には英字、数字、アンダースコア、漢字を 1〜20 文字使用でき、大文字と小文字を区別せず一意である必要があります。image_N、video_N、keyframe_N、object_N、audio_N、first_frame、last_frame は予約されています。
{
"model": "kling-4-0-flash",
"prompt": "@Mira opens the shop door and greets the morning crowd",
"elements": [
{
"name": "Mira",
"image_urls": ["https://example.com/mira-front.png", "https://example.com/mira-side.png"],
"tag": "character",
"description": "baker in a flour-dusted apron"
}
],
"aspect_ratio": "9:16",
"duration": 6
}メディア入力
画像、動画、音声はすべて公開されている HTTP(S) URL です。Base64 の data URI は受け付けません。ファイルを自分のストレージにアップロードし、その URL を渡してください。参照動画と動画エレメントの合計は 2〜20 秒である必要があります。リクエスト受理時に長さを読み取り、長さを読み取れない動画は課金前に拒否されます。
料金の要素
現在のレートはモデルの料金セクションをご覧ください。Kling 4.0 Flash は 720p 動画の秒数で課金されます:
text, reference images, image elements: cost = duration × standard rate
reference videos or video elements: cost = (output + max(output, input)) × video-input rateinput は参照動画と動画エレメントの合計の長さを秒単位で切り上げた値です。リクエスト受理時に測定されるため、確保される金額がそのまま課金額になります。例:7.2 秒の参照動画を使って 5 秒のクリップを生成すると、5 + 8 = 13 秒が課金対象です。3 秒の参照動画なら 5 + 5 = 10 秒です。失敗したタスクは課金されません。
出力スキーマ
送信するとタスクが返されます:
{"id": "task_...", "model": "kling-4-0-flash", "status": "processing", "created_at": 1789689600}タスクを取得する
GET https://api.seedrouter.ai/v1/tasks/{task_id}status が completed または failed になるまで、10〜20 秒ごとにポーリングしてください。ポーリング中のネットワークタイムアウトは生成の失敗を意味しません。タスク ID を保持して確認を再開してください。進捗確認のために別のタスクを作成しないでください。
完了したタスク
{
"id": "task_...",
"model": "kling-4-0-flash",
"status": "completed",
"created_at": 1789689600,
"finished_at": 1789689800,
"output": {
"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"
}
}私たちのテストでは、5 秒のクリップが送信から 91〜103 秒後に、1280 × 720 の MP4(H.264)とステレオ AAC トラックで返されました。ファイルの長さは duration より約 1 フレーム長くなります(5 秒指定で 5.04 秒)。
エラー
タスク作成前に拒否されたリクエストは、HTTP エラーと error オブジェクトを返し、課金されません。受理後に失敗したタスクは、照会時に HTTP 200 と status: "failed"、そして error オブジェクトを返します。
コード・HTTP ステータス・リトライの指針は共通エラーカタログを参照してください。
{
"id": "task_...",
"model": "kling-4-0-flash",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}送信自体がタイムアウトした場合は、再送信の前にタスクを確認してください。最初のリクエストが受理されている可能性があります。
ヒント
- 被写体、場所、カメラの動き、光と音を記述してください。クリップの音声はプロンプトに従います。
- Flash でプロンプト、アスペクト比、参照を低コストで試し、1080p、キーフレーム、編集や延長が必要になったら、うまくいったショットを Kling 4.0 に移してください。
- 繰り返し登場するキャラクターには、参照画像 1 枚の代わりに、二つか三つの鮮明なアングルから作ったエレメントを指定してください。
- 勝手なマークが入らないよう、
no text, no logosを加えてください。
