ByteDance: Seedance 2.0 Mini
Seedance 2.0 Mini は、文字、画像、動画、音声の参照から短い動画を作り、必要に応じて音も生成します。シーン制作、対象を絞った動画編集、継続に対応し、文書化された出力仕様は 480p または 720p です。
モデルについて
この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。
Seedance 2.0 Mini は、ByteDance の Seedance 2.0 視聴覚系列に属する、独立した名称のモデルです。メーカーは、文字から動画、最初のフレームおよび最初と最後のフレームによる画像から動画、マルチモーダル参照生成、動画編集、動画延長を文書化しています。映像と一緒に音を生成できます。文字の制作指示、固定した開始画像、2 枚の境界フレーム、編集や継続が必要なクリップなど、手元の素材に合わせて制作モードを選んでください。
Mini には独自の出力仕様があります。メーカーは、480p と 720p の動画、8 ビットカラー、毎秒 24 フレーム、MP4 出力を挙げています。対応アスペクト比は 21:9、16:9、4:3、1:1、3:4、9:16 で、文書化された生成時間は 4~15 秒です。メーカーの時間制御では、その範囲内の自動選択もできます。完全版 Seedance 2.0 の 1080p と 4K は別の選択肢で、Mini の設定ではありません。系列の機能表には、生成した最後のフレームを返す機能があり、Draft モードは非対応です。
Omni reference は、入力素材から選んだ情報を使って新しいシーンを作ります。画像は被写体の外観、構図、視覚的な表現を定義できます。動画は行動、カメラ移動、効果を、音声参照は声質、旋律、発話内容を設定できます。すべての性質を複製するよう求めるのではなく、各参照から何を取り込むかを伝えてください。例えば、製品写真で形と色、短いカメラ移動クリップで接近、音の参照で雰囲気を指定します。
系列のワークフローでは参照画像は最大 9 枚、動画クリップは 3 本、音声クリップは 3 本です。動画参照は各 2~15 秒、合計 15 秒以下で、音声参照もクリップごとおよび合計時間に同じ制限を使います。音声だけ、または視覚参照なしの文字と音声という参照の組み合わせには対応しません。文字だけの制作は、別の対応モードです。シーケンスでは素材を意図した順に渡し、メディア種別ごとの順番に基づく Image 1、Video 1、Audio 1 などで一貫して参照します。文字プロンプト内の番号付き参照を、アセット識別子で置き換えないでください。
最初のフレーム画像は、画像主体のショットの冒頭を定義します。最初と最後のフレームのモードは両端を定義します。厳密にその境界画像が重要なら、omni-reference プロンプト内で参照を開始と終了として説明するのではなく、専用モードを選んでください。後者はプロンプトで誘導する効果であり、厳密な境界フレームの選択とは同等ではありません。出力構図に合わせて画像を準備し、開始と終了の状況をつなぐ行動を示します。
動画編集は、クリップを着想として使うだけでなく、既存クリップを変更します。編集対象の動画、変更する物体や領域、登場時刻と位置、保つ細部を指定してください。例えば、「Video 1 のマグカップを Image 1 の容器に置き換えてください。手の動き、フレーミング、照明、テーブルの配置を保ってください」という指示です。削除では不要な物体と、残すべき周囲の要素を名指しします。メーカーは、編集や延長では対象動画を直接指すよう勧めています。参照と表現すると、新しいシーン生成の依頼として伝わる場合があります。
動画延長は、既存クリップの前後に出来事を加えます。継続の方向と、その後または以前に起こることを説明してください。文書化されたワークフローは、生成トランジションで 2 本または 3 本のクリップをつなぐこともできます。入力動画 3 本の合計も、15 秒の参照枠に収まる必要があります。チュートリアルは、主に元クリップの境界映像を含む継続と、元の内容を明示的に保持する要求を区別します。継続部分だけなのか、入力クリップと新しい行動を含むシーンなのか、望む結果の構成を示してください。
明確な指示では、変わらないシーンの説明と出来事の順序を分けます。各被写体を 2~3 の特徴的な外観と一貫したラベルで定義し、その後、行動、設定、照明、カメラ移動、視覚スタイル、制約を説明してください。対話では各台詞を話者と関連行動に結び付けます。正確なタイミングは不安定になり得るとメーカーが指摘しているため、厳密なタイムスタンプを確実な制御と見なさず、順序付きのショットラベルを使います。製品の段階的な指示なら、「Image 1 が Product A を定義します。Shot 1:カウンター上の Product A にゆっくり接近。Shot 2:手が光の方向へ回す。Shot 3:正面ラベルで落ち着く。柔らかな室内環境音。印字を保つ」という形です。
文書化された系列の入力規則に合わせて参照を準備します。対応画像形式には JPEG、PNG、WebP、BMP、TIFF、GIF、HEIC、HEIF があり、各画像は 30 MB 未満です。ガイドは画像の幅と高さを 300 ピクセルより大きく 6,000 ピクセル未満、アスペクト比を 0.4 より大きく 2.5 未満と指定しています。動画参照は MP4 または MOV、映像は H.264 または H.265、音声は AAC または MP3 で、各最大 200 MB、毎秒 24~60 フレームです。幅と高さは 300~6,000 ピクセル、アスペクト比は 0.4~2.5、総画素数は 407,696~8,295,044 です。音声参照は WAV または MP3、各最大 15 MB です。これらはメーカーの入力準備仕様で、特定アプリケーションのアップロード制御とは異なります。
メーカーの人物ワークフローでは、実在する人間の顔を含む画像や動画に特定の準備が必要で、参照の直接アップロードは標準の対応経路ではありません。信頼されたモデル出力、既定のデジタルキャラクター、許可された実在人物アセットのワークフローを、それぞれ別の方法として文書化しています。声の一致、発音、クリップ境界の音も確認が必要です。プロンプトガイドは、意図した声の特徴を説明し、対話のスタイルを音声参照に近づけるよう推奨しています。最終成果物では被写体の一貫性、正確な台詞、行動タイミング、フレーム間の移行、最後の音を確認し、制作指示と異なる特定要素を改善してください。
Ailoot Ultra · 動画 POST /v1/videos bytedance/seedance-2.0-mini
bytedance/seedance-2.0-miniはじめに
Seedance 2.0 Mini は、文字、画像、動画、音声の参照から短い動画を作り、必要に応じて音も生成します。シーン制作、対象を絞った動画編集、継続に対応し、文書化された出力仕様は 480p または 720p です。
- 対応する入力
- テキスト · 画像 · 音声
- 結果
- 動画
Ailootで利用可能 · 入力とメソッド
Ailoot Ultra · 動画 POST /v1/videos
- 入力の種類
text,image,audio- 出力の種類
video- 出力形式
- 元のMP4バイト列(正規化・トランスコードなし)
| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
|---|---|---|---|---|
フィールドmodel | 種類string | 要件必須 | 値と制限 bytedance/seedance-2.0-mini | デフォルト— |
フィールドprompt | 種類string | 要件必須 | 値と制限 | デフォルト— |
フィールドduration | 種類integer | 要件必須 | 値と制限 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 最小値: 1 最大値: 600 | デフォルト— |
フィールドresolution | 種類string | 要件任意 | 値と制限 480p, 720p | デフォルト— |
フィールドaspect_ratio | 種類string | 要件任意 | 値と制限 1:1, 3:4, 9:16, 4:3, 16:9, 21:9, 9:21 | デフォルト— |
フィールドgenerate_audio | 種類boolean | 要件任意 | 値と制限 false, true 条件: generate_audioを省略すると音声ありの料金、falseにすると音声なしの料金が選択されます。音声トラックが返されたかどうかは、結果のhas_audioを確認してください。 | デフォルト— |
フィールドframe_images | 種類array | 要件任意 | 値と制限 最小項目数: 1 最大項目数: 2 入力コンテンツ: フレームオブジェクトの配列。各オブジェクトにはtype=image_url、urlを含むimage_url、およびframe_type=first_frameまたはlast_frameを指定します。各役割はそれぞれ最大一回まで指定できます。公開HTTPS URLを使用してください。 正確なキー: type, image_url, frame_type 条件: これらのキーは各フレームオブジェクトに適用されます。テキストのみのリクエストではframe_imagesを省略してください。 | デフォルト— |
フィールドinput_references | 種類array | 要件任意 | 値と制限 入力コンテンツ: 画像または音声の参照オブジェクトの配列。typeをimage_urlまたはaudio_urlに設定し、urlを含む対応するURLオブジェクトを指定してください。動画の参照素材については、引き続き料金を算出できません。 条件: 参照モードを使用する場合はframe_imagesを省略してください。公開HTTPS URLを使用します。 | デフォルト— |
フィールドsize | 種類string | 要件任意 | 値と制限 480x480, 480x640, 480x854, 640x480, 854x480, 1120x480, 720x720, 720x960, 720x1280, 720x1680, 960x720, 1280x720, 1680x720 パターン: ^[1-9][0-9]*x[1-9][0-9]*$ | デフォルト— |
フィールドseed | 種類integer | 要件任意 | 値と制限 最小値: -9,223,372,036,854,775,808 最大値: 9,223,372,036,854,775,807 | デフォルト— |
フィールドcallback_url | 種類string | 要件任意 | 値と制限 パターン: ^https:// | デフォルト— |
フィールドsession_id | 種類string | 要件任意 | 値と制限 | デフォルト— |
フィールドtrace | 種類object | 要件任意 | 値と制限 | デフォルト— |
フィールドuser | 種類string | 要件任意 | 値と制限 | デフォルト— |
入力素材の組み合わせ
テキストから動画へ · テキストのプロンプト。 · 必須: model, prompt, duration
テキストのプロンプトと、サポートされている整数の秒数を指定してください。一覧にある正確なサイズ、または一覧の寸法に対応する解像度とアスペクト比を使用します。
model: 種類: string · bytedance/seedance-2.0-mini
prompt: 種類: string · 最大UTF-8バイト数: 10,000 · 空白以外の文字が必須: はい
画像から動画へ · テキストのプロンプトとフレーム画像。 · 必須: model, prompt, duration, frame_images
frame_imagesはオブジェクトの配列で、各オブジェクトにはtype=image_url、urlを含むimage_url、およびframe_typeを指定します。公開HTTPS画像URLを使用してください。first_frameとlast_frameはそれぞれ一度だけ指定できます。一覧にある出力サイズ、または互換性のある寸法を使用してください。動画の参照素材は追加しないでください。
正確なキー: type, image_url, frame_type
model: 種類: string · bytedance/seedance-2.0-mini
prompt: 種類: string · 最大UTF-8バイト数: 10,000 · 空白以外の文字が必須: はい
Reference to video · テキストのプロンプトと、画像または音声の参照素材。 · 必須: model, prompt, duration, input_references
input_referencesは配列です。各オブジェクトにはtype=image_urlまたはtype=audio_urlと、urlを含む対応するURLオブジェクトを指定します。公開HTTPSリンクを使用してください。参照モードを選ぶ場合はframe_imagesを省略します。動画の参照素材の料金は算出できません。
model: 種類: string · bytedance/seedance-2.0-mini
prompt: 種類: string · 最大UTF-8バイト数: 10,000 · 空白以外の文字が必須: はい
メソッドのパラメータとライフサイクル
| パラメータ | 仕様 |
|---|---|
パラメータcontent_type | 仕様application/json |
パラメータrequired | 仕様model, prompt, duration |
パラメータmaterial_types | 仕様text, image, audio |
パラメータadditional_properties | 仕様false |
パラメータoptional_controls | 仕様resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user |
ライフサイクル: submit_once_poll_original
GET /v1/videos/{public_id}
GET /v1/videos/{public_id}/content
料金
最終料金の計算方法
表示料金は生成前の費用の見積もりです。最終請求額は、元の生成処理に記録された費用から計算されます。実測された出力時間や予測数量が、そのまま最終的な課金数量になるわけではありません。
料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。
- 高速モード
- 未指定 高速モードが選択されている場合
- Flex モード
- 未指定 flex モードが選択されている場合
- 最大推論量
- 未指定 推論量が最大で、調整に既定値(default)を使用する場合
比較用の推定料金
設定別の価格
各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。
| 設定 | 料金表 | 予測数量 | 課金単位 | 課金条件 | 料金 |
|---|---|---|---|---|---|
| 設定基本トークン料金 | 料金表基本料金 | 予測数量— | 課金単位— | 課金条件— | 料金 入力 · 入力トークン · 比較専用の見積もり — / 1K トークン 出力 · 出力トークン · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ読み取り · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ書き込み · 比較専用の見積もり — / 1K トークン 入力 · キャッシュ書き込み、1時間 · 比較専用の見積もり — / 1K トークン |
| 設定動画トークン料金 | 料金表— | 予測数量— | 課金単位1K動画トークンあたり | 課金条件この価格キーには追加条件が定義されていません。 | 料金 出力 · 動画トークン料金 · 比較専用の見積もり $0.007 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
| 設定動画トークン料金 | 料金表— | 予測数量— | 課金単位1K動画トークンあたり | 課金条件入力:with_video_input | 料金 reference · 動画トークン料金 · 比較専用の見積もり $0.0042 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
| 設定動画トークン料金 | 料金表— | 予測数量— | 課金単位1K動画トークンあたり | 課金条件音声:without_audio | 料金 出力 · 動画トークン料金 · 比較専用の見積もり $0.007 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
| 設定生成費用の見積もり | 料金表— | 予測数量生成1回分の概算 | 課金単位— | 課金条件— | 料金 出力 · 推定生成コスト · 比較専用の見積もり $0.1512 生成前の見積もり この見積もりは追加料金ではなく、完了した生成処理に対する固定料金でもありません。 |
Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →
参考料金の詳細
モデル単位の参照料金表は、メソッド選択、見積もり、課金を変更しません。実際の課金には、選択したAilootメソッドの料金を適用します。
動画設定の料金参照情報
設定別の価格
各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。
| 設定 | 課金条件 | 料金 |
|---|---|---|
| 設定動画トークン料金 | 課金条件この価格キーには追加条件が定義されていません。 | 料金 出力 · 動画トークン料金 $0.007 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
| 設定動画トークン料金 | 課金条件音声:without_audio | 料金 出力 · 動画トークン料金 $0.007 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
| 設定動画トークン料金 | 課金条件入力:with_video_input | 料金 reference · 動画トークン料金 $0.0042 1K動画トークンあたり 動画トークン単価が主な価格参照値です。見出しに表示される秒単位の概算料金は別の参照値であり、追加料金ではありません。 |
リクエスト例
Ailoot Ultra · 動画
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"model":"bytedance/seedance-2.0-mini","prompt":"A serene mountain landscape at sunset","duration":4,"resolution":"480p","size":"480x480","generate_audio":false}', encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
結果を受け取って保存
Ailoot Ultra · 動画
所有コンテンツの署名付きURL
GET /v1/videos/{public_id}GET /v1/videos/{public_id}/content
ジョブのステータスを確認
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
-H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
その他のコンテンツ取得
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
urls.append((str(i),u))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
完了した結果をすべて保存
完了した動画や返されたファイルをすべて保存し、実際に返されたすべてのアセットURLから取得してください。
実際に得られた所有出力と、返された実測メタデータをすべて保持してください。
元のレスポンスを確認する場合
503 result_pending_check + 元のid + X-Should-Retry:false;元のリクエストを決して再実行しないでください
レスポンスのフィールド
| フィールド | 種類 | 意味 |
|---|---|---|
フィールドindex | 種類integer | 意味出力リスト内での、この動画のゼロ始まりの位置。 |
フィールドcontent_url | 種類string | 意味この完了済み動画の署名付きHTTPSダウンロードURL。 |
フィールドsha256 | 種類string | null | 意味元の動画バイト列のSHA-256ダイジェスト。取得できない場合はnullです。 |
フィールドsize_bytes | 種類integer | null | 意味元の動画ファイルのサイズ(バイト)。取得できない場合はnullです。 |
フィールドduration_ms | 種類integer | null | 意味実測された動画の長さ(ミリ秒)。取得できない場合はnullです。 |
フィールドwidth | 種類integer | null | 意味動画の幅(ピクセル)。取得できない場合はnullです。 |
フィールドheight | 種類integer | null | 意味動画の高さ(ピクセル)。取得できない場合はnullです。 |
フィールドvideo_codec | 種類string | null | 意味動画コーデックの識別子。記録されていない場合はnullです。 |
フィールドhas_audio | 種類boolean | null | 意味動画に音声トラックが含まれるかどうか。未測定の場合はnullです。 |
フィールドaudio_codec | 種類string | null | 意味音声コーデックの識別子。識別子が記録されていない場合はnullです。 |
エラーと次の手順
| レスポンス | 条件 | 次の手順 |
|---|---|---|
レスポンス404 · not_found_error | 条件動画へのアクセスが利用できないか、この動画IDが見つかりません。 | 次の手順動画へのアクセス権を確認してください。既存の動画には、元の公開IDと同じAPIキーを使用してください。 |
レスポンス401 · authentication_error | 条件APIキーが認証済みアカウントと一致しません。 | 次の手順送信する前に、APIキーとアカウントのアクセス権を確認してください。 |
レスポンス400 · invalid_request_error | 条件リクエストを読み取れないか、ダウンロードのインデックスが無効です。 | 次の手順リクエスト本文を修正してください。ダウンロードする場合は、元のタスクから返された出力インデックスを選択してください。 |
レスポンス422 · price_unavailable | 条件選択された動画設定の料金を算出できません。 | 次の手順サポートされている動画設定を選び、必須オプションをすべて指定してから、修正したリクエストを送信してください。 |
レスポンス422 · invalid_request_error | 条件動画入力、または元の継続タスクが無効です。 | 次の手順有効なHTTPS入力を使用してください。継続する場合は、完了した元の動画の公開IDと、同じAPIキーを使用してください。 |
レスポンス402 · billing_error | 条件利用可能な残高または上限の制約により、料金を仮押さえできません。 | 次の手順新しいリクエストを送る前に、利用可能な残高と上限を確認してください。 |
レスポンス503 · server_error | 条件動画の検証、保存領域、またはサービスへのアクセスを一時的に利用できません。 | 次の手順サービスが利用可能になるまでお待ちください。すでに動画IDがある場合は、別の生成を作成せず、その元のタスクを確認してください。 |
レスポンス503 · result_pending_check | 条件元の動画の結果と請求額を確認する必要があります。 | 次の手順返された動画IDを保持し、そのタスクを確認してください。確認中に、代わりの生成リクエストを送信しないでください。 |
レスポンス503 · owned_result_unavailable | 条件既存の動画のダウンロードを一時的に利用できません。 | 次の手順後で同じ動画タスクを確認し、その既存の出力をダウンロードしてください。新しい生成を行うと、別の操作が作成されます。 |
レスポンス409 · video_not_ready | 条件動画コンテンツは公開されていません。 | 次の手順元のタスクのステータスを確認してください。completedと報告されたらダウンロードします。failedと報告された場合は、その料金確認の通知に従ってください。 |
エイリアス
モデルのエイリアス
Ailoot Ultra bytedance/seedance-2.0-mini
メソッドパスのエイリアス
上記に表示されたメソッドパスを使用してください。
関連する呼び出し用ID
FAQ · ByteDance: Seedance 2.0 Mini
- 利用できる入力と結果は何ですか?
POST /v1/videos·bytedance/seedance-2.0-mini:text,image,audio→video- リクエストはどの項目を使用しますか?
POST /v1/videos·bytedance/seedance-2.0-mini:model,prompt,duration,resolution,aspect_ratio,generate_audio,frame_images,input_references,size,seed,callback_url,session_id,trace,user- どの制限が適用されますか?
POST /v1/videos·bytedance/seedance-2.0-mini:duration.minimum:1;duration.maximum:600;frame_images.max_items:2;frame_images.min_items:1;seed.minimum:-9223372036854775808;seed.maximum:9223372036854775807