ByteDance: Seedance 2.5
A Seedance 2.5 szövegből és kép-, videó- vagy hangreferenciákból készít videót, dokumentált szerkesztési és meghosszabbítási munkafolyamatokkal. Konkrét 2.5 példája egy termékképet több mozgásreferenciával kombinál, és generált hangot kapcsol be egy összehangolt reklám-eseménysorhoz.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A Seedance 2.5 írott jelenet és multimodális referenciák felhasználásával készít videót. A konkrét doubao-seedance-2-5-260628 azonosítóhoz saját dokumentált művelet és példa tartozik. Ez a művelet videógenerálást, videószerkesztést és videómeghosszabbítást ír le, képeket, videót, hangot és szöveget használva bemeneti médiaként. A referenciákkal adja meg a téma megjelenését, a cselekvést, a kameramozgást, a stílust és a hangot, majd magyarázza el, milyen eredményt szeretne létrehozni belőlük.
A bemeneti kombinációk között szerepel az önálló szöveg, képek vagy videó opcionális szöveggel, képek hanggal, videó hanggal, valamint képek, videó és hang együtt. A felsorolt kombinációk a hangot vizuális médiához csatolják, nem csak hangot tartalmazó kérést írnak le. Minden elemet a szerepe szerint rendezzen: egy kép témát vagy megjelenést rögzít, egy videó mozgást vagy meglévő jelenetet szemléltet, a hang pedig hangreferenciát ad. Mondja meg, melyik szerep fontos a kért plánhoz, hogy egy háttérreferenciát ne tévesszenek össze a főszereplővel.
A konkrét 2.5 példa egy termékreklám eseménysora. Egy képet és több videóreferenciát ad meg, majd nyitó fókuszpontot, rendezett termékelrendezéseket, részletplánokat, lassított cselekvést és záró márkakompozíciót ír le. A kérés reference_image és reference_video szerepeket rendel hozzá, és külön referenciákat használ a kompozícióhoz, a mozgáshoz, a kamerakezeléshez és a hatáshoz. Ez gyakorlati felépítést ad egy kampánykoncepcióhoz: tervezze meg a látható mozzanatokat, azonosítsa minden mozzanat referenciáját, és határozza meg a végső elrendezést.
Az írott eseménysor megkülönböztetheti, mi történik és hogyan filmezik le. Először azt írja le, mi történik a termékkel, majd a plánméretet, a kamera útvonalát, a tempót és a következő nézetre történő átmenetet. Ha egy referencia a terméket határozza meg, egy másik pedig kameramozgást mutat be, nevezze meg ezeket a külön szerepeket. Több tárgyat tartalmazó jelenetnél magyarázza el a helyzetüket és a kölcsönhatások sorrendjét. A generált eredményen a termék tényleges alakját, elrendezését és mozgását ellenőrizze, ne feltételezze, hogy a referenciák minden részlete változatlanul jelenik meg.
Szerkesztéshez nevezze meg a meglévő videót és a módosítandó elemet, például a környezetet, egy cselekvést vagy a vizuális stílust, közben adja meg a megőrzendő folytonosságot. Meghosszabbításhoz írja le, hogyan folytatódjon a jelenet a mellékelt felvételből. A csatlakozást az új szakasszal együtt ellenőrizze: a téma megjelenése, a mozgás iránya, a kamera helyzete és a hang időzítése mind befolyásolja, hogy az eredmény egyetlen jelenetnek hat-e. Az eredeti videót és az elkészült módosítást együtt őrizze meg, hogy a változtatást a tervezett folytonossághoz lehessen mérni.
A 2.5 dokumentált multimodális példája generate_audio=true értéket állít be, és tizenöt másodperces eseménysort kér 16:9 képkivágással. Ezek az értékek azt a példát írják le, nem általános időtartam-plafont vagy referenciafájl-korlátot. A kért jelenetnek adjon világos hangzásbeli elképzelést, a zene, az effektek és a látható cselekvés kapcsolatát is beleértve, majd a tényleges audiovizuális kimenetet értékelje. A hangreferenciát és a generált hangsávot együtt kell ellenőrizni a kívánt tempó és előadásmód szempontjából.
Az időtartamot, a képkivágást és a felbontást az ehhez a konkrét profilhoz kínált beállításokból válassza ki. A kért konfigurációt őrizze meg az utasítással együtt, és hasonlítsa össze a ténylegesen visszaadott feladatmezőkkel. Az elkészült klip célhelyre való előkészítésekor a visszaadott időtartamot, felbontást és képarányt használja. A módosítások nyilvántartásában őrizze meg a pontos profilazonosítót, hogy egy későbbi összehasonlítás ugyanazt a kiválasztott kiadást használja.
A videótoken-használat képlete: (bemeneti videó időtartama + kimeneti videó időtartama) × kimeneti szélesség × kimeneti magasság × kimeneti képkockasebesség / 1024. A bemeneti videót tartalmazó és az azt nem tartalmazó kérések külön számlázási kategóriába tartoznak. A feladat lekérdezése usage.completion_tokens és usage.total_tokens értéket jelent; ezeket a jelentett mennyiségeket őrizze meg az elkészült klippel együtt.
A generálás aszinkron. A beküldés azonosítót ad vissza, a beállított feladatfolyamat pedig állapotot, majd siker után content.video_url értéket biztosít. Az elkészült klipet mentse el a forrásmédiával és az eseménysor leírásával együtt. A teljes eredményen ellenőrizze az összes tervezett mozzanatot, a tárgyak kölcsönhatásait, a szereplők megjelenését, a képkivágást és a hang illeszkedését. Módosításkor azonosítsa a konkrét elhibázott részletet, és őrizze meg a jelenet sikeres részeit, ne cserélje le az egész leírást egymáshoz nem kapcsolódó utasításokra.
Ailoot Ultra · Videó POST /v1/videos doubao-seedance-2-5-260628
doubao-seedance-2-5-260628Kezdő lépések
A Seedance 2.5 szövegből és kép-, videó- vagy hangreferenciákból készít videót, dokumentált szerkesztési és meghosszabbítási munkafolyamatokkal. Konkrét 2.5 példája egy termékképet több mozgásreferenciával kombinál, és generált hangot kapcsol be egy összehangolt reklám-eseménysorhoz.
- Elfogadott bemenetek
- Szöveg · Képek · Videó · Hang
- Eredmények
- Videó
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Videó POST /v1/videos
- Bemenet
text,image,video,audio- Kimenet
video
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok doubao-seedance-2-5-260628 | Alapértelmezett— |
Mezőcontent | Típusarray | KövetelményKötelező | Értékek és korlátok Feltételek: Natív szöveg- és médiaobjektumok; a külső tömb nem lehet üres. Ez az általános Ailoot-konstruktor nem ellenőrzi a beágyazott csomópontok típusát. | Alapértelmezett— |
Mezőgenerate_audio | Típusboolean | KövetelményOpcionális | Értékek és korlátok Feltételek: A 2.5 példája true értéket állít be, de a másolt választóleírás csak a 2.0/fast/1.5 körét sorolja fel; nincs garancia tágabb beállítási körre vagy alapértelmezésre. | Alapértelmezett— |
Meződuration | Típusinteger | KövetelményOpcionális | Értékek és korlátok Feltételek: A 2.5 példában szó szerint szereplő 15 nem maximum vagy alapértelmezés. | Alapértelmezett— |
Mezőresolution | Típusstring | KövetelményOpcionális | Értékek és korlátok Feltételek: Másolt leírásokból nem következtetünk 2.5-specifikus alapértelmezésre vagy felsorolási értékekre. | Alapértelmezett— |
Mezőratio | Típusstring | KövetelményOpcionális | Értékek és korlátok Feltételek: Az adaptive kifejezetten a 2.0/fast/1.5 körére vonatkozik; a 2.5 példájában csak 16:9 szerepel. | Alapértelmezett— |
Mezőwatermark | Típusboolean | KövetelményOpcionális | Értékek és korlátok | Alapértelmezettfalse |
Mezőseed | Típusinteger | KövetelményOpcionális | Értékek és korlátok Minimum: -1 Maximum: 4 294 967 295 | Alapértelmezett-1 |
Mezőexecution_expires_after | Típusinteger | KövetelményOpcionális | Értékek és korlátok Minimum: 3600 Maximum: 259 200 Egység: másodperc | Alapértelmezett172 800 |
Mezőservice_tier | Típusstring | KövetelményOpcionális | Értékek és korlátok Feltételek: A 2.0/fast kizárja az offline flex módot; a 2.5 alkalmazási köre nincs meghatározva. | Alapértelmezett— |
Mezősafety_identifier | Típusstring | KövetelményOpcionális | Értékek és korlátok | Alapértelmezett— |
Bemeneti anyagok kombinációi
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződéscontent, model |
Paraméteroptional | Szerződésgenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier |
Paramétermaterial_types | Szerződéstext, image, video, audio |
Paraméteradditional_properties | Szerződéstrue |
Paramétervalidation_scope | SzerződésAz Ailoot ellenőrzi a kötelező mezők típusát és a nem üres model/content tömböt. A többi kérésmezőt megőrzi a kiválasztott modell számára. |
Paramétermaterial_combinations | Szerződéstext, image, video, image, audio, image, video, video, audio, image, video, audio |
Paraméteroptional_text_with_media | Szerződéstrue |
Paraméterreference_media_count_and_size_limits | Szerződésnull |
Metódus álnevei: /v1/videos/generations
Életciklus: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/videos/generations/{request_id}/content
Hozza létre egyszer, és őrizze meg a visszaadott nyilvános id/polling_url értékeket.
Kérdezze le az eredeti feladatot; succeeded után töltse le a tényleges saját content.video_url tartalmát.
Díjcsomagok
A végső díj számítása
A megjelenített díjtételek a generálás előtti költségbecsléshez szolgálnak. A végleges díj az eredeti generáláshoz rögzített költségből számítódik. A kimenet mért időtartama és az előre jelzett mennyiségek nem azonosak a véglegesen elszámolandó mennyiséggel.
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Becsült díjak összehasonlításhoz
Árak beállításonként
Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.
| Beállítás | Díjtáblázat | Előre jelzett mennyiség | Elszámolási egység | Díj |
|---|---|---|---|---|
| BeállításTokenek alapdíjai | DíjtáblázatAlapdíj | Előre jelzett mennyiség— | Elszámolási egység— | Díj Bemenet · Bemeneti tokenek · Becslés, csak összehasonlításra — / 1K token Kimenet · Kimeneti tokenek · Becslés, csak összehasonlításra — / 1K token Bemenet · Gyorsítótár olvasása · Becslés, csak összehasonlításra — / 1K token Bemenet · Írás a gyorsítótárba · Becslés, csak összehasonlításra — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra · Becslés, csak összehasonlításra — / 1K token |
| BeállításA bemenet tartalmaz videóreferenciát. | Díjtáblázat— | Előre jelzett mennyiség— | Elszámolási egység1K videótokenenként | Díj Kimenet · Becslés, csak összehasonlításra $0.012 1K videótokenenként |
| BeállításA bemenet nem tartalmaz videóreferenciát. | Díjtáblázat— | Előre jelzett mennyiség— | Elszámolási egység1K videótokenenként | Díj Kimenet · Becslés, csak összehasonlításra $0.02 1K videótokenenként |
| BeállításA generálás becsült költsége | Díjtáblázat— | Előre jelzett mennyiségbecslés egy generálásra | Elszámolási egység— | Díj Kimenet · Becsült generálási költség · Becslés, csak összehasonlításra $0.822402 becslés a generálás előtt Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra. |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Videó
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-2-5-260628","content":[{"type":"text","text":"女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"}]}
JSON_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
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_POLL'
import json
from pathlib import Path
from urllib.parse import quote,urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
i=r.get("id")
if not isinstance(i,str) or not i.startswith("native302_"):raise SystemExit("Keep original response/headers/id; do not resubmit creation.")
u=urljoin("https://api.ailoot.ai",r.get("polling_url") or "/v1/videos/"+quote(i,safe=""))
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/videos/"):raise SystemExit("Use actual Ailoot lookup path.")
Path("poll-url.txt").write_text(u)
PY_POLL
curl --fail-with-body --silent --show-error "$(cat poll-url.txt)" -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
set -eu
python3 - <<'PY_ASSETS'
import json
from pathlib import Path
from urllib.parse import urlsplit
r=json.loads(Path("status.json").read_text())
if r.get("status")!="succeeded":raise SystemExit("Poll same original job until an owned result is returned.")
u=r.get("content",{}).get("video_url")
urls=[u] if isinstance(u,str) else u
if not isinstance(urls,list) or not urls:raise SystemExit("No completed video URL.")
for u in urls:
if not isinstance(u,str):raise SystemExit("Invalid returned URL.")
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/media/assets/") or not p.path.endswith("/content") or not p.query:raise SystemExit("Wait for actual Ailoot-owned signed result.")
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_ASSETS
index=0
while IFS= read -r asset_url; do
curl --fail-with-body --silent --show-error "$asset_url" -o "video-${index}.bin"
index=$((index + 1))
done < asset-urls.txt
Eredmények fogadása és mentése
Ailoot Ultra · Videó
Natív JSON nyilvános id/polling_url értékekkel. Közzététel után a content.video_url az Ailoot tulajdonában lévő aláírt URL-címeket tartalmazza; közzététel előtt a kiválasztott kimeneti URL-címek üresek.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Őrizzen meg minden elkészült eredményt
Mentsen minden elkészült videót és visszaadott fájlt; töltse le az összes ténylegesen visszaadott médiafájl URL-jének tartalmát.
Őrizze meg a content.video_url mező összes tényleges URL-címét; az index egy valós visszaadott kimenetet azonosítson.
Ha az eredeti választ ellenőrizni kell
Őrizze meg az eredeti választ, fejléceket és id értéket, és azt a műveletet kérdezze le; ismeretlen kimenetelű létrehozást soha ne küldjön be újra.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőid | Típusstring |
Mezőprovider_task_id | Típusstring |
Mezőpolling_url | Típusstring |
Mezőstatus | Típusstring when supplied |
Mezőcontent.video_url | Típusstring|string[] |
Mezőusage | Típusobject when supplied |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen JSON/modell, kötelező mezőtípusok vagy tartalomindex. | Következő lépés |
Válasz401 · authentication_error | FeltételÉrvénytelen Ailoot API-kulcs. | Következő lépés |
Válasz404 · not_found_error | FeltételA feladat/kimenet hiányzik, vagy nem ugyanahhoz a felhasználóhoz/API-kulcshoz/csoporthoz tartozik. | Következő lépés |
Válasz502 · result_pending_check | FeltételAz eredeti beküldés/állapot hiányos; őrizze meg az eredeti azonosítót, ne küldje be újra. | Következő lépés |
Válasz503 · result_pending_check | FeltételAz eredeti média, útvonal vagy elszámolás ellenőrzés alatt áll; folytassa az eredeti műveletet. | Következő lépés |
Álnevek
Modell álnevei
Ailoot Ultra doubao-seedance-2-5-260628
Metódusútvonalak álnevei
/v1/videos/generations
Kapcsolódó modellazonosítók
FAQ · ByteDance: Seedance 2.5
- Milyen bemenetek és eredmények érhetők el?
POST /v1/videos·doubao-seedance-2-5-260628:text,image,video,audio→video- Mely mezőket használja a kérés?
POST /v1/videos·doubao-seedance-2-5-260628:model,content,generate_audio,duration,resolution,ratio,watermark,seed,execution_expires_after,service_tier,safety_identifier- Milyen korlátok érvényesek?
POST /v1/videos·doubao-seedance-2-5-260628:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200