ByteDance: Seedance 2.0
Seedance 2.0 vytvára a upravuje video pomocou textu, obrázkov a referenčných videí či zvuku. Dokáže pokračovať v existujúcom videu a vytvárať synchronizovaný zvuk, s trvaním 4–15 sekúnd, výstupom 480p alebo 720p a výslovne určenými úlohami referencií.
O modeli
Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.
Seedance 2.0 vytvára video z písomného opisu scény alebo kombinácie obrázkov a referenčných videí či zvuku. Konkrétny identifikátor doubao-seedance-2-0-260128 označuje štandardný profil 2.0. Zdokumentované postupy zahŕňajú tvorbu nového videa, úpravy a predlžovanie existujúcich záberov. Referenciami sprostredkujte vzhľad, pohyb, kamerové postupy a zvuk a potom uveďte, ktoré časti scény majú určovať.
Text možno dodať samostatne. Zdokumentované multimodálne kombinácie umožňujú aj obrázky alebo video s voliteľným textom, obrázky so zvukom, video so zvukom a obrázky, video a zvuk spolu. V týchto uvedených kombináciách teda zvuk sprevádza vizuálne médiá; samostatná požiadavka na tvorbu videa iba zo zvuku nie je opísaná. Zamýšľaný výsledok napíšte jasne aj tam, kde je text voliteľný, aby bola úloha každej referencie výslovná a nemusela sa odhadovať z nesúvisiacich podkladov.
Pole content rozlišuje položky text, image_url, video_url a audio_url. Multimodálne referencie používajú roly ako reference_image, reference_video a reference_audio. Obrázok môže určiť človeka, predmet, miesto alebo vzhľad. Video môže predviesť výkon, pohyb alebo pohľad kamery a zvuk môže určiť zvukovú stopu či načasovanie. V zadaní uveďte rozdelenie úloh: zachovať hlavný objekt z obrázka, nasledovať pohľad kamery vo videu a použiť zvuk ako pozadie. Nežiadajte od každej referencie, aby určovala všetky vlastnosti naraz.
Zdokumentovaný reklamný príklad kombinuje dva obrázky produktu s referenčným videom a zvukom. Opisuje úvodný pohľad, postupnosť činností, detail produktu a záverečnú kompozíciu, pričom zachováva rovnaký hlas na pozadí. Rovnaká štruktúra môže usporiadať krátku prezentáciu: predstavte predmet, predveďte jednu činnosť a skončite na jeho rozpoznateľnom prvku. Pri úprave určte zdrojové zábery a prvok, ktorý sa má zmeniť; pri predĺžení vysvetlite činnosť pokračujúcu za existujúcu scénu pri zachovaní hlavného objektu a smeru pohybu.
Profil 2.0 má zdokumentované trvanie v celých sekundách od štyroch do pätnástich alebo -1 pre automaticky vybrané trvanie v tomto rozsahu. Predvolených je päť sekúnd. Možnosti rozlíšenia sú 480p a 720p, s predvolenou hodnotou 720p; 1080p je pre 2.0 vylúčené. Pevné pomery strán zahŕňajú 16:9, 4:3, 1:1, 3:4, 9:16 a 21:9. Adaptívny pomer môže zvoliť kompozíciu podľa promptu alebo referencie: práca s prvou snímkou sleduje úvodný obrázok a multimodálna práca používa zamýšľanú scénu alebo prvé relevantné médium, pričom video má prednosť pred obrázkami. Vo výsledku úlohy skontrolujte skutočný pomer strán a trvanie.
Generovaný zvuk sa ovláda nezávisle od referenčných médií. generate_audio=true žiada synchronizované hlasy, efekty a hudbu na pozadí podľa textu a vizuálneho obsahu; false žiada video bez zvuku. Zdokumentovaná predvolená hodnota je true a pri reči sa odporúča dialóg v úvodzovkách. Určte, kto hovorí a ako zvuk súvisí s viditeľnou činnosťou, potom skontrolujte skutočné znenie, priradenie hlasov a načasovanie. Dodanie zvukovej referencie a zapnutie generovaného zvuku sú odlišné voľby požiadavky.
Príručka 2.0 vylučuje staršie nastavenia frames a camera_fixed a nepodporuje offline spracovanie flex. Použite pole duration a pohyb kamery opíšte priamo v scéne. Seed a watermark zostávajú zdokumentovanými nastaveniami; príručka uvádza, že rovnaká požiadavka a seed môžu priniesť podobné výsledky bez záruky presnej zhody. Nepovažujte seed za dôkaz reprodukovateľnosti ani opakovanú požiadavku za už skontrolovaný klip.
Spotreba videotokenov sa počíta ako (trvanie vstupného videa + trvanie výstupného videa) × šírka výstupu × výška výstupu × snímková frekvencia výstupu / 1024. Požiadavky so vstupným videom a bez vstupného videa patria do odlišných kategórií účtovania. Dotaz na úlohu vykazuje usage.completion_tokens a usage.total_tokens; tieto vykázané veličiny uchovajte spolu s dokončeným klipom.
Postup je asynchrónny: odoslanie vráti identifikátor úlohy a dokončená úloha poskytne content.video_url spolu s vykázaným trvaním, rozlíšením, pomerom strán, snímkovou frekvenciou a spotrebou tokenov. Identifikátor uchovajte a hotové video uložte spolu s pôvodnými referenciami a promptom. Pole platnosti má predvolenú hodnotu 172800 sekúnd a prijíma 3600–259200 sekúnd od vytvorenia úlohy; úlohe, ktorá prekročí interval, vyprší platnosť. Skontrolujte celý výstup vrátane spoja pri úprave alebo pokračovaní: vzhľad postáv, detaily predmetov, priestorové vzťahy, nadväznosť pohybu kamery a časové zladenie zvuku s obrazom.
Ailoot Ultra · Generovanie videa POST /v1/videos doubao-seedance-2-0-260128
doubao-seedance-2-0-260128Úvod
Seedance 2.0 vytvára a upravuje video pomocou textu, obrázkov a referenčných videí či zvuku. Dokáže pokračovať v existujúcom videu a vytvárať synchronizovaný zvuk, s trvaním 4–15 sekúnd, výstupom 480p alebo 720p a výslovne určenými úlohami referencií.
- Povolené vstupy
- Text · Obrázky · Video · Audio
- Výsledky
- Video
Dostupné v Ailoot · vstupy a metódy
Ailoot Ultra · Generovanie videa POST /v1/videos
- Vstup
text,image,video,audio- Výstup
video
| Pole | Typ | Požiadavka | Hodnoty a limity | Predvolené |
|---|---|---|---|---|
Polemodel | Typstring | PožiadavkaPovinné | Hodnoty a limity doubao-seedance-2-0-260128 | Predvolené— |
Polecontent | Typarray | PožiadavkaPovinné | Hodnoty a limity Podmienky: Natívne objekty textu a médií; vonkajšie pole musí byť neprázdne. Tento všeobecný konštruktor Ailoot neoveruje typy vnorených uzlov. | Predvolené— |
Polegenerate_audio | Typboolean | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Synchronizovaný zvuk vložený do videa. | Predvolenétrue |
Poleduration | Typinteger | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Celé číslo 4–15 alebo -1; vráti sa skutočná dĺžka výstupu. | Predvolené5 |
Poleresolution | Typstring | PožiadavkaVoliteľné | Hodnoty a limity 480p, 720p Podmienky: 1080p je pre 2.0/fast výslovne nepodporované. | Predvolené720p |
Poleratio | Typstring | PožiadavkaVoliteľné | Hodnoty a limity 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive Podmienky: Adaptive je výslovne vymedzené na 2.0/fast/1.5; príklad 2.5 používa iba 16:9. | Predvolenéadaptive |
Polewatermark | Typboolean | PožiadavkaVoliteľné | Hodnoty a limity | Predvolenéfalse |
Poleseed | Typinteger | PožiadavkaVoliteľné | Hodnoty a limity Minimum: -1 Maximum: 4 294 967 295 | Predvolené-1 |
Poleexecution_expires_after | Typinteger | PožiadavkaVoliteľné | Hodnoty a limity Minimum: 3 600 Maximum: 259 200 Jednotka: sekundy | Predvolené172 800 |
Poleservice_tier | Typstring | PožiadavkaVoliteľné | Hodnoty a limity default Podmienky: 2.0/fast vylučujú offline flex; rozsah podpory pre 2.5 nie je stanovený. | Predvolenédefault |
Polesafety_identifier | Typstring | PožiadavkaVoliteľné | Hodnoty a limity | Predvolené— |
Poletools | Typobject | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Iba 2.0/fast; zdokumentované type=web_search. | Predvolené— |
Kombinácie vstupných podkladov
Parametre a životný cyklus metódy
| Parameter | Špecifikácia |
|---|---|
Parametercontent_type | Špecifikáciaapplication/json |
Parameterrequired | Špecifikáciacontent, model |
Parameteroptional | Špecifikáciagenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools |
Parametermaterial_types | Špecifikáciatext, image, video, audio |
Parameteradditional_properties | Špecifikáciatrue |
Parametervalidation_scope | ŠpecifikáciaAiloot kontroluje povinné typy polí a neprázdny model aj pole content. Ostatné polia požiadavky sa zachovávajú pre vybraný model. |
Parametermaterial_combinations | Špecifikáciatext, image, video, image, audio, image, video, video, audio, image, video, audio |
Parameteroptional_text_with_media | Špecifikáciatrue |
Parameterreference_media_count_and_size_limits | Špecifikácianull |
Aliasy metódy: /v1/videos/generations
Životný cyklus: 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
Vytvorte iba raz a zachovajte vrátené verejné id/polling_url.
Priebežne zisťujte stav pôvodnej úlohy; po succeeded stiahnite skutočné content.video_url vo vašom vlastníctve.
Cenník
Ako sa vypočíta konečný poplatok
Zobrazené sadzby slúžia na odhad nákladov pred generovaním. Konečný poplatok sa vypočíta z nákladov zaznamenaných pri pôvodnom generovaní. Namerané trvanie výstupu a predpokladané množstvá nepredstavujú konečné účtované množstvo.
Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.
- Rýchly režim
- Neuvedené Keď je zvolený rýchly režim
- Režim Flex
- Neuvedené Keď je zvolený režim flex
- Maximálna úroveň uvažovania
- Neuvedené Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)
Odhadované sadzby na porovnanie
Ceny podľa konfigurácie
Každý poplatok priraďte k zobrazeným podmienkam. Pre každú skupinu alternatívnych konfigurácií použite jednu sadzbu.
| Konfigurácia | Sadzobník | Odhadované množstvo | Účtovacia jednotka | Poplatok |
|---|---|---|---|---|
| KonfiguráciaZákladné sadzby za tokeny | SadzobníkZákladná sadzba | Odhadované množstvo— | Účtovacia jednotka— | Poplatok Vstup · Vstupné tokeny · Odhad iba na porovnanie — / 1K tokenov Výstup · Výstupné tokeny · Odhad iba na porovnanie — / 1K tokenov Vstup · Čítanie cache · Odhad iba na porovnanie — / 1K tokenov Vstup · Zápis do cache · Odhad iba na porovnanie — / 1K tokenov Vstup · Zápis do cache, 1 hod · Odhad iba na porovnanie — / 1K tokenov |
| KonfiguráciaVstup obsahuje video. | Sadzobník— | Odhadované množstvo— | Účtovacia jednotkaza 1K video tokenov | Poplatok Výstup · Odhad iba na porovnanie $0.0096 za 1K video tokenov |
| KonfiguráciaVstup neobsahuje video. | Sadzobník— | Odhadované množstvo— | Účtovacia jednotkaza 1K video tokenov | Poplatok Výstup · Odhad iba na porovnanie $0.015768 za 1K video tokenov |
| KonfiguráciaOdhadované náklady na generovanie | Sadzobník— | Odhadované množstvoodhad pre jedno generovanie | Účtovacia jednotka— | Poplatok Výstup · Odhadované náklady na generovanie · Odhad iba na porovnanie $0.822402 odhad pred generovaním Tento odhad nepredstavuje dodatočný poplatok ani pevnú sadzbu za dokončené generovanie. |
Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →
Príklady požiadaviek
Ailoot Ultra · Generovanie videa
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-2-0-260128","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
Prijať a uložiť výsledky
Ailoot Ultra · Generovanie videa
Natívny JSON s verejným id/polling_url. Po zverejnení obsahuje content.video_url podpísané URL vo vlastníctve Ailoot; pred zverejnením sú vybrané URL výstupov prázdne.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Uchovať všetky dokončené výsledky
Uložte každé dokončené video alebo vrátený súbor; načítajte obsah každej skutočne vrátenej URL podkladu.
Zachovajte každú skutočnú URL v content.video_url; index musí označovať skutočne vrátený výstup.
Ak treba overiť pôvodnú odpoveď
Zachovajte pôvodnú odpoveď, hlavičky a id a priebežne zisťujte stav tejto operácie; vytvorenie s neznámym výsledkom nikdy znova neodosielajte.
Polia odpovede
| Pole | Typ |
|---|---|
Poleid | Typstring |
Poleprovider_task_id | Typstring |
Polepolling_url | Typstring |
Polestatus | Typstring when supplied |
Polecontent.video_url | Typstring|string[] |
Poleusage | Typobject when supplied |
Chyby a ďalšie kroky
| Odpoveď | Podmienka | Ďalší krok |
|---|---|---|
Odpoveď400 · invalid_request_error | PodmienkaNeplatný JSON/model/typy povinných polí alebo index obsahu. | Ďalší krok |
Odpoveď401 · authentication_error | PodmienkaNeplatný kľúč API služby Ailoot. | Ďalší krok |
Odpoveď404 · not_found_error | PodmienkaÚloha alebo výstup chýbajú alebo nepatria rovnakému používateľovi, kľúču API či skupine. | Ďalší krok |
Odpoveď502 · result_pending_check | PodmienkaPôvodné odoslanie alebo stav sú neúplné; zachovajte pôvodné ID a znova neodosielajte. | Ďalší krok |
Odpoveď503 · result_pending_check | PodmienkaPôvodné médium, trasa alebo zúčtovanie sa kontrolujú; pokračujte v pôvodnej operácii. | Ďalší krok |
Aliasy
Aliasy modelov
Ailoot Ultra doubao-seedance-2-0-260128
Aliasy ciest metód
/v1/videos/generations
Súvisiace ID na volanie
FAQ · ByteDance: Seedance 2.0
- Aké vstupy a výsledky sú dostupné?
POST /v1/videos·doubao-seedance-2-0-260128:text,image,video,audio→video- Aké polia používa požiadavka?
POST /v1/videos·doubao-seedance-2-0-260128:model,content,generate_audio,duration,resolution,ratio,watermark,seed,execution_expires_after,service_tier,safety_identifier,tools- Aké limity platia?
POST /v1/videos·doubao-seedance-2-0-260128:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200