ByteDance: Seedance 1.0 Lite Text-to-Video
Seedance 1.0 Lite Text-to-Video paverčia rašytinę sceną vaizdo įrašu be garso. Šis konkretus Lite variantas naudoja tekstą, o ne vaizdinį atskaitos pavyzdį; jo trukmė – 2–12 sekundžių, dažnis – 24 fps, o kadravimas gali būti horizontalus, vertikalus, kvadratinis ar kinematografinis.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
Seedance 1.0 Lite Text-to-Video generuoja vaizdo įrašą pagal rašytinę sceną. Tikslus identifikatorius doubao-seedance-1-0-lite-t2v-250428 žymi Lite leidimo vaizdo generavimo iš teksto variantą. Naudokite jį, kai pagrindinį objektą, aplinką ir judėjimą galima aprašyti tiesiogiai: gaminį ant stalo, bendrą vietovės vaizdą ar trumpą veikėjo veiksmą. Išvestis yra vaizdo klipas; 1.0 profilis negeneruoja sinchronizuoto garso.
Aprašykite sceną tokia tvarka, kokia ją turėtų matyti žiūrovas. Nurodykite pagrindinį objektą ir jo išvaizdą, vietą, veiksmą, plano stambumą bei kameros judėjimą, tada aprašykite galutinę kompoziciją. Naudingame gaminio apraše gali būti butelis ant šviesaus akmens postamento, per etiketę slenkanti saulės šviesa ir lėtas kameros artėjimas prie kamštelio. Tai nurodymai naujai scenai, o ne teiginys, kad modelis atkuria pateiktą gaminio nuotrauką. Matomą veiksmą pritaikykite pasirinktai klipo trukmei.
Šis vaizdo generavimo iš teksto variantas skiriasi nuo atskirai įvardyto Lite vaizdo generavimo iš paveikslėlio varianto. Turinys pateikiamas kaip tekstinis elementas content masyve. Sakinys gali apibūdinti žmogų, objektą ar stilių, tačiau jis neprideda atskaitos vaizdo ir nenustato tikslios vaizdinės tapatybės pagal nematytą failą. Jei scenos pradinė kompozicija turi būti paremta esamu vaizdu, rinkitės vaizdus priimantį profilį, užuot manę, kad Lite t2v pakeičia režimą pridėjus medijos lauką.
Dokumentuotas 1.0 trukmės intervalas yra nuo dviejų iki dvylikos sekundžių, numatytoji trukmė – penkios sekundės, o fiksuotas kadrų dažnis – 24 fps. Lite siūlo 480p, 720p ir 1080p raiškos lygius; dokumentuota numatytoji raiška – 720p. Fiksuoti kraštinių santykiai apima 16:9, 4:3, 1:1, 3:4, 9:16 ir 21:9. Prieš generuodami pasirinkite galutinei paskirčiai tinkamą kadravimą: vertikalų pristatymui vertikaliame formate, kvadratinį kompaktiškai gaminio kortelei ar horizontalų plačiai scenai. Raiškos lygiai ir kraštinių santykiai apibūdina prašomą išvestį; patikrinkite atsisiųsto klipo faktinius matmenis pikseliais ir kadravimą.
Užklausoje numatyti seed, vandenženklio ir kameros valdikliai. Seed yra sveikasis skaičius nuo -1 iki 2^32-1; -1 parenka atsitiktinumą. Fiksuotos kameros užklausa prideda nurodymą kamerai nejudėti, o dokumentacijoje aiškiai sakoma, kad poveikis negarantuojamas. Rašytinėje scenoje ir atskirame valdiklyje nurodyta kameros kryptis turi sutapti. Į tekstą įterpti parametrų nurodymai turi pirmenybę prieš atskirus neprivalomus parametrus, todėl abiejose vietose nenurodykite prieštaringos trukmės, raiškos ar kadravimo.
Naudojimas matuojamas vaizdo žetonais: išvesties plotis × išvesties aukštis × kadrų dažnis × išvesties trukmė / 1024. Užbaigta užduotis pateikia šį kiekį kaip usage.completion_tokens. Išsaugokite pateiktą naudojimą kartu su užbaigtu klipu ir užklausoje nurodytomis nuostatomis.
Generavimas yra asinchroninis. Pateikus užklausą grąžinamas užduoties identifikatorius, o užduoties užklausa pateikia apdorojimo būseną ir, sėkmingai užbaigus, vaizdo įrašo URL lauke content.video_url. Išsaugokite identifikatorių, kol užduotis laukia eilėje ar vykdoma, ir išsaugokite užbaigtą klipą kitai versijai. Dokumentuotas sugeneruotų failų saugojimo laikotarpis – septynios dienos. Užklausa taip pat turi nuo užduoties sukūrimo skaičiuojamą galiojimo intervalą, kuriam pasibaigus neužbaigta užduotis įgyja būseną expired; dokumentuota numatytoji reikšmė – 172 800 sekundžių, leidžiamos reikšmės – nuo 3 600 iki 259 200 sekundžių.
Peržiūrėkite visą klipą pagal aprašą: ar pasirodo numatytas objektas, ar veiksmas vyksta tinkama tvarka, ar kamera juda nurodyta kryptimi ir ar paskutinis kadras tinkamas naudoti. Kitai versijai pakeiskite konkretų nurodymą, išlaikydami pavykusią scenos struktūrą. Kurdami planų seriją išsaugokite kiekvieną užklausos tekstą, prašytas nuostatas ir užbaigtą vaizdo įrašą, kad kitą sceną būtų galima planuoti pagal tikrą rezultatą.
Ailoot Ultra · Vaizdo įrašai POST /v1/videos doubao-seedance-1-0-lite-t2v-250428
doubao-seedance-1-0-lite-t2v-250428
doubao-seedance-1-0-lite-t2v-250428Pradžia
Seedance 1.0 Lite Text-to-Video paverčia rašytinę sceną vaizdo įrašu be garso. Šis konkretus Lite variantas naudoja tekstą, o ne vaizdinį atskaitos pavyzdį; jo trukmė – 2–12 sekundžių, dažnis – 24 fps, o kadravimas gali būti horizontalus, vertikalus, kvadratinis ar kinematografinis.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- Vaizdo įrašai
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Vaizdo įrašai POST /v1/videos
- Įvestis
text- Išvestis
video
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos doubao-seedance-1-0-lite-t2v-250428 | Numatyta— |
Laukascontent | Tipasarray | ReikalavimasPrivaloma | Reikšmės ir ribos Sąlygos: Pirminio formato teksto ir medijos objektai; išorinis masyvas turi būti netuščias. Šis bendras Ailoot konstruktorius netikrina įdėtų mazgų tipų. | Numatyta— |
Laukasduration | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 2 Didžiausia reikšmė: 12 Sąlygos: Pagrindinė 1.x schema: 2–12; vėlesniame bendrame apraše 1.5 nurodyta 4–12 arba -1. Pavyzdyje naudojama abiejuose šaltiniuose dokumentuota 5 reikšmė. | Numatyta5 |
Laukasresolution | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 480p, 720p, 1080p Sąlygos: Bendras išvardijimo tipas; 1080p neleidžiama su pavyzdiniais paveikslėliais ir 1.5. Įterptame pro apraše išvardytos 480p/1080p, o aukščiausio lygio išvardijime yra 720p; pro 720p palaikymas nėra vienareikšmiškai patvirtintas. | Numatyta720p |
Laukasratio | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive Sąlygos: Numatytosios reikšmės priklauso nuo scenos ir modelio; įvesties paveikslėlių dokumentacijoje rekomenduojama adaptive. | Numatyta— |
Laukasservice_tier | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos default, flex Sąlygos: default=online, flex=offline; pasirinkite prieš kurdami. | Numatytadefault |
Laukasseed | Tipasinteger | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausia reikšmė: −1 Didžiausia reikšmė: 4 294 967 295 | Numatyta−1 |
Laukascamerafixed | Tipasboolean | ReikalavimasPrivaloma | Reikšmės ir ribos Sąlygos: Privalomas Ailoot; dokumentacijoje nurodyta, kad kameros valdymas naudojant pavyzdinį paveikslėlį nepalaikomas, o poveikis negarantuojamas. | Numatytafalse |
Laukaswatermark | Tipasboolean | ReikalavimasPrivaloma | Reikšmės ir ribos | Numatytafalse |
Laukasexecution_expires_after | Tipasinteger | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausia reikšmė: 3 600 Didžiausia reikšmė: 259 200 Vienetas: sekundės | Numatyta172 800 |
Įvesties medžiagos deriniai
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijacamerafixed, content, execution_expires_after, model, seed, watermark |
Parametrasoptional | Specifikacijaduration, resolution, ratio, service_tier |
Parametrasmaterial_types | Specifikacijatext |
Parametrasadditional_properties | Specifikacijatrue |
Parametrasvalidation_scope | SpecifikacijaAiloot tikrina privalomų laukų tipus, ar model eilutė netuščia ir ar content masyvas netuščias. Kiti užklausos laukai išsaugomi pasirinktam modeliui. |
Metodo pseudonimai: /v1/videos/generations
Gyvavimo ciklas: 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
Sukurkite vieną kartą ir išsaugokite grąžintus viešuosius id/polling_url.
Periodiškai tikrinkite pradinę užduotį; gavę succeeded, atsisiųskite tikrą jums priklausantį content.video_url.
Planai
Kaip apskaičiuojamas galutinis mokestis
Rodomi įkainiai leidžia įvertinti kainą prieš generavimą. Galutinė suma apskaičiuojama pagal užfiksuotą pradinio generavimo kainą. Išmatuota rezultato trukmė ir prognozuoti kiekiai nėra galutinis apmokestinamas kiekis.
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Nenurodyta Pasirinkus spartųjį režimą
- Flex režimas
- Nenurodyta Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Nenurodyta Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
Numatomi įkainiai palyginimui
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Numatomas kiekis | Apskaitos vienetas | Mokestis |
|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Numatomas kiekis— | Apskaitos vienetas— | Mokestis Įvestis · Įvesties tokenai · Įvertis tik palyginimui — / 1K tokenų Išvestis · Išvesties tokenai · Įvertis tik palyginimui — / 1K tokenų Įvestis · Talpyklos skaitymas · Įvertis tik palyginimui — / 1K tokenų Įvestis · Rašymas į talpyklą · Įvertis tik palyginimui — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val · Įvertis tik palyginimui — / 1K tokenų |
| KonfigūracijaUltra | Įkainių lentelė— | Numatomas kiekis— | Apskaitos vienetasuž 1K vaizdo įrašo tokenų | Mokestis Išvestis · Įvertis tik palyginimui $0.003 už 1K vaizdo įrašo tokenų |
| KonfigūracijaNumatoma generavimo kaina | Įkainių lentelė— | Numatomas kiekisvieno generavimo įvertis | Apskaitos vienetas— | Mokestis Išvestis · Numatoma generavimo kaina · Įvertis tik palyginimui $0.144 įvertis prieš generavimą Šis įvertis nėra papildomas mokestis ar fiksuotas užbaigto generavimo įkainis. |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Vaizdo įrašai
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-1-0-lite-t2v-250428","content":[{"type":"text","text":"女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"}],"resolution":"480p","ratio":"1:1","duration":5,"service_tier":"default","seed":-1,"camerafixed":false,"watermark":false,"execution_expires_after":172800}
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
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Vaizdo įrašai
Pirminis JSON su viešais id/polling_url. Po paskelbimo content.video_url turi Ailoot priklausančius pasirašytus URL; prieš paskelbimą pasirinktų rezultatų URL ištuštinami.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną baigtą vaizdo įrašą arba grąžintą failą; gaukite turinį iš kiekvieno faktiškai grąžinto medžiagos URL.
Išsaugokite kiekvieną tikrą URL lauke content.video_url; index turi nurodyti tikrą grąžintą rezultatą.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite pradinį atsakymą, antraštes ir id bei periodiškai tikrinkite tą operaciją; niekada neteikite kūrimo užklausos dar kartą, kai jos baigtis nežinoma.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasid | Tipasstring |
Laukasprovider_task_id | Tipasstring |
Laukaspolling_url | Tipasstring |
Laukasstatus | Tipasstring when supplied |
Laukascontent.video_url | Tipasstring|string[] |
Laukasusage | Tipasobject when supplied |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkamas JSON/model, privalomų laukų tipai arba turinio indeksas. | Kitas žingsnis |
Atsakymas401 · authentication_error | SąlygaNegaliojantis Ailoot API raktas. | Kitas žingsnis |
Atsakymas404 · not_found_error | SąlygaUžduoties ar rezultato nėra arba jie nepriklauso tam pačiam naudotojui, API raktui ir grupei. | Kitas žingsnis |
Atsakymas502 · result_pending_check | SąlygaPradinio pateikimo ar būsenos duomenys neišsamūs; išsaugokite pradinį ID, neteikite pakartotinai. | Kitas žingsnis |
Atsakymas503 · result_pending_check | SąlygaPradinė medija, maršrutas arba atsiskaitymas tikrinami; tęskite pradinę operaciją. | Kitas žingsnis |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra doubao-seedance-1-0-lite-t2v-250428
Metodų kelių pseudonimai
/v1/videos/generations
Susiję ID iškvietimui
FAQ · ByteDance: Seedance 1.0 Lite Text-to-Video
- Kokios įvestys ir rezultatai prieinami?
POST /v1/videos·doubao-seedance-1-0-lite-t2v-250428:text→video- Kokius laukus naudoja užklausa?
POST /v1/videos·doubao-seedance-1-0-lite-t2v-250428:model,content,duration,resolution,ratio,service_tier,seed,camerafixed,watermark,execution_expires_after- Kokie apribojimai taikomi?
POST /v1/videos·doubao-seedance-1-0-lite-t2v-250428:duration.minimum:2;duration.maximum:12;seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200