ByteDance: Seedance 1.5 Pro
Seedance 1.5 Pro generuje video z textu nebo obrázku a může vytvářet synchronizované hlasy, efekty a hudební podkres. Zvuk lze zapnout nebo vypnout; dokumentovaný profil nabízí scény o délce 4–12 sekund, kompozici adaptive a zpracování online nebo flex.
O modelu
Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.
Seedance 1.5 Pro generuje video z textu nebo obrázku a může vytvářet zvuk společně s obrazem. Přesný selektor je doubao-seedance-1-5-pro-251215. Nastavení zvuku jej odlišuje od němých profilů Seedance 1.0: generate_audio=true žádá synchronizovaný zvuk, zatímco false žádá němé video. Pro nový koncept použijte písemný popis scény, pro stanovení úvodního objektu a kompozice obrázek.
Popište viditelnou akci a zvuk jako součásti stejné scény. Určete objekt, prostředí, pohyb a kameru a poté vysvětlete zamýšlené hlasy, zvukové efekty nebo hudební podkres. Portrétní scéna může ukazovat člověka otevírajícího oči při pomalém odjezdu kamery, s větrem v okolí. U produktové scény spojte zvuk s viditelnou událostí, například otevřením víčka nebo dotykem předmětu s povrchem, místo přidávání nesouvisejícího seznamu efektů.
Model může generovat hlasy, efekty a hudební podkres z promptu a vizuálního obsahu. Příručka doporučuje dát mluvený dialog do dvojitých uvozovek. Udržujte řeč dostatečně krátkou pro požadovanou akci a pauzy a rozlišujte mluvčí, když je ve scéně více postav. Zkontrolujte skutečné znění, přiřazení hlasů a synchronizaci s obrazem. Zvukový pokyn vede generovaný přednes; v dokumentovaném požadavku tohoto profilu nejde o samostatný nahraný vstup hlasové reference.
Generování videa z obrázku používá položku image_url spolu s textem. Dodejte dostupnou URL obrázku nebo datovou URL Base64 ve formátu JPEG, PNG, WEBP, BMP, TIFF či GIF. Dokumentované limity obrázku jsou velikost pod 30 MB, oba rozměry přísně mezi 300 a 6000 pixely a poměr šířky k výšce přísně mezi 0.4 a 2.5. Jasně připravte zamýšlený výřez a objekt a poté popište pohyb z této kompozice. Obrazový příklad používá poměr adaptive, aby sledoval předlohu.
Průvodce délkou pro tento profil uvádí celé sekundy od čtyř do dvanácti nebo -1, kdy model zvolí délku v tomto rozsahu. Výchozí délka je pět sekund. Seedance 1.5 Pro má výchozí rozlišení 720p a zachovaná tabulka profilu dokumentuje 480p a 720p; vyhrazená příručka operace nenabízí 1080p pro 1.5 Pro. Pevné poměry zahrnují 16:9, 4:3, 1:1, 3:4, 9:16 a 21:9, s adaptive jako dokumentovanou výchozí hodnotou 1.5. Zkontrolujte skutečnou délku a proporce klipu místo zacházení s požadovanými hodnotami jako s již vráceným artefaktem.
Požadavek nabízí dvě úrovně zpracování. service_tier=default vybírá zpracování online, zatímco flex vybírá zpracování offline pro práci, která snese větší zpoždění. Úroveň nelze změnit po odeslání úlohy. Vyberte ji podle časových potřeb pracovního postupu a uchovejte tuto volbu v záznamu požadavku. Režim zvuku a úroveň zpracování jsou samostatné volby: němý klip není automaticky úlohou offline a zapnutí zvuku nevybírá úroveň zpracování.
Udržujte pokyny pro seed, vodoznak a kameru ve shodě se scénou. Příkazy parametrů vložené do textu mají přednost před samostatnými volitelnými parametry. Nastavení pevné kamery je vyloučeno ve scénáři s referenčním obrázkem a tam, kde se uplatňuje, není zaručeným vizuálním zámkem. U animace vedené obrázkem vysvětlete zamýšlený pohyb přímo místo předpokladu, že nastavení kamery nahrazuje popis záběru.
Spotřeba se měří v tokenech videa: výstupní šířka × výstupní výška × snímková frekvence × délka výstupního videa / 1024. Dokončená úloha tuto veličinu hlásí jako usage.completion_tokens. Uchovejte hlášenou spotřebu spolu s hotovým klipem a požadovanými nastaveními. Zapnutý či vypnutý zvuk a zpracování online či flex zůstávají samostatnými kategoriemi účtování podle spotřeby.
Odeslání vrací identifikátor asynchronní úlohy. Sledujte úlohu až do dokončení a poté uložte video poskytnuté v content.video_url. Dokumentovaná doba uchování vygenerovaných souborů je sedm dní. Nastavení vypršení se měří od vytvoření, má výchozí hodnotu 172800 sekund a přijímá hodnoty od 3600 do 259200 sekund; nedokončená úloha po nastaveném intervalu přejde do stavu expired. Uchovejte hotový klip, původní obrázek a přesné zadání obrazu i zvuku společně a poté zkontrolujte celý výsledek z hlediska akce, identity, návaznosti kamery a sladění zvuku.
Ailoot Ultra · Tvorba videa POST /v1/videos doubao-seedance-1-5-pro-251215
doubao-seedance-1-5-pro-251215
doubao-seedance-1-5-pro-251215Úvod
Seedance 1.5 Pro generuje video z textu nebo obrázku a může vytvářet synchronizované hlasy, efekty a hudební podkres. Zvuk lze zapnout nebo vypnout; dokumentovaný profil nabízí scény o délce 4–12 sekund, kompozici adaptive a zpracování online nebo flex.
- Přijímané vstupy
- Text · Obrázky
- Výsledky
- Video
Dostupné v Ailoot · vstupy a metody
Ailoot Ultra · Tvorba videa POST /v1/videos
- Vstup
text,image- Výstup
video
| Pole | Typ | Požadavek | Hodnoty a limity | Výchozí |
|---|---|---|---|---|
Polemodel | Typstring | PožadavekPovinné | Hodnoty a limity doubao-seedance-1-5-pro-251215 | Výchozí— |
Polecontent | Typarray | PožadavekPovinné | Hodnoty a limity Podmínky: Nativní textové a multimediální objekty; vnější pole musí být neprázdné. Tento obecný konstruktor Ailoot nekontroluje typy vnořených uzlů. | Výchozí— |
Poleduration | Typinteger | PožadavekVolitelné | Hodnoty a limity Podmínky: Primární schéma 1.x uvádí 2–12; pozdější společný popis uvádí pro 1.5 hodnoty 4–12 nebo -1. Příklad používá hodnotu 5, dokumentovanou v obou případech. | Výchozí5 |
Poleresolution | Typstring | PožadavekVolitelné | Hodnoty a limity 480p, 720p Podmínky: Seedance 1.5 Pro podporuje 480p a 720p; 1080p je vyloučeno. Dokumentované výchozí rozlišení je 720p. | Výchozí720p |
Poleratio | Typstring | PožadavekVolitelné | Hodnoty a limity 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive Podmínky: Dokumentovaný výchozí poměr stran Seedance 1.5 Pro je adaptive. Pevné možnosti poměru stran zůstávají beze změny. | Výchozíadaptive |
Poleservice_tier | Typstring | PožadavekVolitelné | Hodnoty a limity default, flex Podmínky: default=online, flex=offline; zvolte před vytvořením. | Výchozídefault |
Poleseed | Typinteger | PožadavekPovinné | Hodnoty a limity Minimum: -1 Maximum: 4 294 967 295 | Výchozí-1 |
Polecamerafixed | Typboolean | PožadavekPovinné | Hodnoty a limity Podmínky: Ailoot jej vyžaduje; ovládání kamery při použití referenčního obrázku je podle dokumentace nepodporované a jeho účinek není zaručen. | Výchozífalse |
Polewatermark | Typboolean | PožadavekPovinné | Hodnoty a limity | Výchozífalse |
Poleexecution_expires_after | Typinteger | PožadavekPovinné | Hodnoty a limity Minimum: 3 600 Maximum: 259 200 Jednotka: sekundy | Výchozí172 800 |
Polegenerate_audio | Typboolean | PožadavekVolitelné | Hodnoty a limity Podmínky: Synchronizovaný zvuk vložený do generovaného videa pouze pro 1.5. | Výchozítrue |
Kombinace vstupních materiálů
Parametry a životní cyklus metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktcamerafixed, content, execution_expires_after, model, seed, watermark |
Parametroptional | Kontraktduration, resolution, ratio, service_tier, generate_audio |
Parametrmaterial_types | Kontrakttext, image |
Parametradditional_properties | Kontrakttrue |
Parametrvalidation_scope | KontraktAiloot kontroluje typy povinných polí, neprázdný model a neprázdné pole content. Ostatní pole požadavku se zachovávají pro vybraný model. |
Parametrimage_constraints | Kontrakt{"formats":["jpeg","png","webp","bmp","tiff","gif"],"aspect_ratio_exclusive":[0.4,2.5],"dimensions_px_exclusive":[300,6000],"file_size_mb_exclusive":30,"mb_bytes_definition":null} |
Aliasy metody: /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
Vytvořte pouze jednou a uchovejte vrácené veřejné id/polling_url.
Dotazujte se na původní úlohu; po dosažení stavu succeeded stáhněte skutečný obsah spravovaný službou z content.video_url.
Tarify
Jak se vypočítá konečný poplatek
Zobrazené sazby slouží k odhadu ceny před generováním. Konečný poplatek se vypočítá z nákladů zaznamenaných u původního generování. Naměřená délka výstupu ani odhadovaná množství nejsou konečným účtovaným množstvím.
Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.
- Rychlý režim
- Neuvedeno Při výběru rychlého režimu
- Režim flex
- Neuvedeno Při výběru režimu flex
- Maximální intenzita uvažování
- Neuvedeno Když se při maximální intenzitě uvažování použije výchozí úprava (default)
Odhadované sazby pro srovnání
Ceny podle konfigurace
Přiřaďte každý poplatek k uvedeným podmínkám. Pro každou sadu alternativních konfigurací použijte jednu sazbu.
| Konfigurace | Tabulka sazeb | Předpokládané množství | Generovat zvuk | Úroveň služby | Účtovací jednotka | Poplatek |
|---|---|---|---|---|---|---|
| KonfiguraceZákladní sazby za tokeny | Tabulka sazebZákladní sazba | Předpokládané množství— | Generovat zvuk— | Úroveň služby— | Účtovací jednotka— | Poplatek Vstup · Vstupní tokeny · Odhad pouze pro srovnání — / 1K tokenů Výstup · Výstupní tokeny · Odhad pouze pro srovnání — / 1K tokenů Vstup · Čtení z mezipaměti · Odhad pouze pro srovnání — / 1K tokenů Vstup · Zápis do mezipaměti · Odhad pouze pro srovnání — / 1K tokenů Vstup · Zápis do mezipaměti, 1 hodina · Odhad pouze pro srovnání — / 1K tokenů |
| KonfiguraceÚroveň služby s offline zpracováním (flex). Výstup se synchronizovaným zvukem. | Tabulka sazeb— | Předpokládané množství— | Generovat zvukSe zvukem | Úroveň službyflex | Účtovací jednotkaza 1K videotokenů | Poplatek Výstup · Odhad pouze pro srovnání $0.0024 za 1K videotokenů |
| KonfiguraceÚroveň služby s offline zpracováním (flex). Výstup bez synchronizovaného zvuku. | Tabulka sazeb— | Předpokládané množství— | Generovat zvukBez zvuku | Úroveň službyflex | Účtovací jednotkaza 1K videotokenů | Poplatek Výstup · Odhad pouze pro srovnání $0.0012 za 1K videotokenů |
| KonfiguraceÚroveň služby s online zpracováním (default). Výstup se synchronizovaným zvukem. | Tabulka sazeb— | Předpokládané množství— | Generovat zvukSe zvukem | Úroveň službydefault | Účtovací jednotkaza 1K videotokenů | Poplatek Výstup · Odhad pouze pro srovnání $0.0048 za 1K videotokenů |
| KonfiguraceÚroveň služby s online zpracováním (default). Výstup bez synchronizovaného zvuku. | Tabulka sazeb— | Předpokládané množství— | Generovat zvukBez zvuku | Úroveň službydefault | Účtovací jednotkaza 1K videotokenů | Poplatek Výstup · Odhad pouze pro srovnání $0.0024 za 1K videotokenů |
| KonfiguraceOdhadovaná cena generování | Tabulka sazeb— | Předpokládané množstvíodhad pro jedno generování | Generovat zvuk— | Úroveň služby— | Účtovací jednotka— | Poplatek Výstup · Odhadovaná cena generování · Odhad pouze pro srovnání $0.1152 odhad před generováním Tento odhad není dodatečným poplatkem ani pevnou sazbou za dokončené generování. |
Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →
Příklady požadavků
Ailoot Ultra · Tvorba videa
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-1-5-pro-251215","content":[{"type":"text","text":"女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"}],"resolution":"480p","ratio":"1:1","duration":5,"service_tier":"default","seed":-1,"camerafixed":false,"watermark":false,"execution_expires_after":172800,"generate_audio":false}
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
Přijímání a ukládání výsledků
Ailoot Ultra · Tvorba videa
Nativní JSON s veřejným id/polling_url. Po zveřejnění obsahuje content.video_url podepsané URL spravované službou Ailoot; před zveřejněním jsou vybrané výstupní URL prázdné.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Uchovejte všechny dokončené výsledky
Uložte každé dokončené video či vrácený soubor; stáhněte obsah každé skutečně vrácené URL souboru.
Uchovejte každou skutečnou URL v content.video_url; index musí označovat skutečně vrácený výstup.
Pokud je nutné ověřit původní odpověď
Zachovejte původní odpověď, hlavičky a id a dotazujte se na tuto operaci; vytvoření s neznámým výsledkem nikdy znovu neodesílejte.
Pole odpovědi
| 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 další kroky
| Odpověď | Podmínka | Další krok |
|---|---|---|
Odpověď400 · invalid_request_error | PodmínkaNeplatný JSON/model, typy povinných polí nebo index obsahu. | Další krok |
Odpověď401 · authentication_error | PodmínkaNeplatný klíč API Ailoot. | Další krok |
Odpověď404 · not_found_error | PodmínkaÚloha či výstup chybí nebo nepatří stejnému uživateli, klíči API či skupině. | Další krok |
Odpověď502 · result_pending_check | PodmínkaPůvodní odeslání či stav jsou neúplné; zachovejte původní ID, znovu neodesílejte. | Další krok |
Odpověď503 · result_pending_check | PodmínkaPůvodní médium, trasa či vyúčtování se kontrolují; pokračujte v původní operaci. | Další krok |
Aliasy
Aliasy modelu
Ailoot Ultra doubao-seedance-1-5-pro-251215
Aliasy cest metod
/v1/videos/generations
Související ID modelů
FAQ · ByteDance: Seedance 1.5 Pro
- Jaké vstupy a výsledky jsou dostupné?
POST /v1/videos·doubao-seedance-1-5-pro-251215:text,image→video- Jaká pole požadavek používá?
POST /v1/videos·doubao-seedance-1-5-pro-251215:model,content,duration,resolution,ratio,service_tier,seed,camerafixed,watermark,execution_expires_after,generate_audio- Jaké limity platí?
POST /v1/videos·doubao-seedance-1-5-pro-251215:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200