- サードパーティ
統一マルチモーダルの参照から動画へのアーキテクチャを採用した ByteDance の次世代動画モデルです。テキスト、最大 30 枚の参照画像、10 本の参照動画、10 本の参照音声クリップから動画を生成します。画像や動画なしの音声のみ入力にも対応します。最初・最後のフレームからの画像から動画、動画編集、動画延長、インテリジェントな長さ(自動選択を含む)、適応的なアスペクト比をサポートします。
const response = await env.AI.run(
'bytedance/seedance-2.5',
{
prompt: 'A golden retriever running through a field of sunflowers on a sunny day',
duration: 5,
resolution: '720p',
},
)
console.log(response)curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"model": "bytedance/seedance-2.5",
"input": {
"prompt": "A golden retriever running through a field of sunflowers on a sunny day",
"duration": 5,
"resolution": "720p"
}
}'{
"state": "Completed",
"result": {
"video": "https://examples.aig.cloudflare.com/bytedance/seedance-2.5/simple-video.mp4"
},
"gatewayMetadata": {
"keySource": "Unified"
}
}シネマティックなワイドショット — 16:9 アスペクト比を明示した、より長いシネマティック動画です
const response = await env.AI.run(
'bytedance/seedance-2.5',
{
prompt:
'A dramatic drone shot flying through misty mountain peaks at sunrise, cinematic lighting with volumetric fog',
aspect_ratio: '16:9',
duration: 12,
resolution: '720p',
},
)
console.log(response)curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"model": "bytedance/seedance-2.5",
"input": {
"prompt": "A dramatic drone shot flying through misty mountain peaks at sunrise, cinematic lighting with volumetric fog",
"aspect_ratio": "16:9",
"duration": 12,
"resolution": "720p"
}
}'{
"state": "Completed",
"result": {
"video": "https://examples.aig.cloudflare.com/bytedance/seedance-2.5/cinematic-wide-shot.mp4"
},
"gatewayMetadata": {
"keySource": "Unified"
}
}最初と最後のフレーム — 指定した最初と最後のフレーム画像の間を遷移する動画を生成します
const response = await env.AI.run(
'bytedance/seedance-2.5',
{
image: 'https://ark-doc.tos-ap-southeast-1.bytepluses.com/doc_image/r2v_tea_pic1.jpg',
last_frame_image: 'https://ark-doc.tos-ap-southeast-1.bytepluses.com/doc_image/r2v_tea_pic2.jpg',
prompt: 'The character slowly turns to face the camera and smiles',
duration: 5,
resolution: '720p',
},
)
console.log(response)curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"model": "bytedance/seedance-2.5",
"input": {
"image": "https://ark-doc.tos-ap-southeast-1.bytepluses.com/doc_image/r2v_tea_pic1.jpg",
"last_frame_image": "https://ark-doc.tos-ap-southeast-1.bytepluses.com/doc_image/r2v_tea_pic2.jpg",
"prompt": "The character slowly turns to face the camera and smiles",
"duration": 5,
"resolution": "720p"
}
}'{
"state": "Completed",
"result": {
"video": "https://examples.aig.cloudflare.com/bytedance/seedance-2.5/first-and-last-frame.mp4"
},
"gatewayMetadata": {
"keySource": "Unified"
}
}MOV 出力のポートレート動画 — SNS 向けの縦向き動画です。色再現を高めるため mov でエンコードします
const response = await env.AI.run(
'bytedance/seedance-2.5',
{
prompt: 'Abstract ink drops spreading through water, vivid colors mixing in slow motion',
aspect_ratio: '9:16',
duration: 5,
resolution: '720p',
output_format: 'mov',
},
)
console.log(response)curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"model": "bytedance/seedance-2.5",
"input": {
"prompt": "Abstract ink drops spreading through water, vivid colors mixing in slow motion",
"aspect_ratio": "9:16",
"duration": 5,
"resolution": "720p",
"output_format": "mov"
}
}'{
"state": "Completed",
"result": {
"video": "https://examples.aig.cloudflare.com/bytedance/seedance-2.5/portrait-video-with-mov-output.mov"
},
"gatewayMetadata": {
"keySource": "Unified"
}
}prompt
stringmaxLength: 2000生成する動画を説明するテキストプロンプトです。参照画像・動画・音声クリップが 1 つ以上ある場合は任意です(Seedance 2.5 は音声のみの入力に対応します)。image
string画像から動画向けの最初のフレーム参照画像です(HTTP(S) URL または Base64 data URI)last_frame_image
string最後のフレームの参照画像です(HTTP(S) URL または Base64 data URI)。最初のフレーム画像も必要です。▶reference_images[]
arraymaxItems: 30マルチモーダルな動画の生成・編集・延長をガイドする参照画像です(0〜30 枚、HTTP(S) URL または Base64 data URI)。▶reference_videos[]
arraymaxItems: 10スタイル/動きのガイド、動画編集、動画延長用の参照動画です(0〜10 本、HTTP(S) URL または Base64 data URI)。参照動画の合計尺は 30 秒以内です。▶reference_audios[]
arraymaxItems: 10参照音声クリップです(0〜10 本、HTTP(S) URL または Base64 `data:audio/...` URI)。音声のみの入力にも対応します(画像や動画は不要)。音声クリップの合計尺は 30 秒以内です。▶duration
いずれか必須resolution
string必須デフォルト: 720penum: 480p, 720p動画の解像度ですaspect_ratio
string必須デフォルト: adaptiveenum: 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive動画のアスペクト比です。`adaptive` は、参照画像または動画のアスペクト比に自動で合わせます(該当する場合)。最初/最後フレームの生成は常に `adaptive` で、指定値は上書きされます。fps
number必須デフォルト: 24const: 24フレームレート(1 秒あたりのフレーム数)ですcamera_fixed
boolean必須デフォルト: falseカメラ位置を固定するかどうかです。現在プロバイダーは未対応で、効果はありません。generate_audio
boolean動画と一緒に音声を生成するかどうかですwatermark
boolean必須デフォルト: false出力動画にウォーターマークを付けるかどうかですseed
integerminimum: -9007199254740991maximum: 9007199254740991乱数シードです。渡してもエラーにはなりませんが、再現性は保証されず、プロバイダーのドキュメントにもありません。output_format
string必須デフォルト: mp4enum: mp4, mov出力動画のコンテナ形式です。`mp4` は互換性が高くファイルも小さく、`mov` はプロ向けの後処理で色再現を保ちますがファイルは大きくなります。use_virtual_avatar
boolean必須デフォルト: false生成前に、画像参照入力(`image`、`reference_images`、`last_frame_image`)を ByteDance の信頼できる仮想アバター素材ライブラリ経由で処理します。顔検出やディープフェイク検出でブロックされやすい、AI 生成/仮想キャラクターのアバター向けですvideo
stringformat: uri生成された動画の URL です