ByteDance: Seedance 2.0
Seedance 2.0 ustvarja in ureja video z besedilom, slikami ter video- in zvočnimi referencami. Lahko nadaljuje obstoječe posnetke in ustvari sinhronizirani zvok, s trajanjem 4–15 sekund, izhodom 480p ali 720p ter izrecno določenimi vlogami referenc.
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
Seedance 2.0 ustvari video iz pisnega opisa prizora ali kombinacije slik ter video- in zvočnih referenc. Konkretni identifikator doubao-seedance-2-0-260128 označuje standardni profil 2.0. Dokumentirani postopki vključujejo ustvarjanje novega videa, urejanje in podaljševanje obstoječih posnetkov. Z referencami sporočite videz, gibanje, snemalne prijeme in zvok, nato določite, katere dele prizora naj usmerjajo.
Besedilo lahko podate samostojno. Dokumentirane večmodalne kombinacije omogočajo tudi slike ali video z neobveznim besedilom, slike z zvokom, video z zvokom ter slike, video in zvok skupaj. Zvok torej v teh navedenih kombinacijah spremlja vizualne medije; samostojna zahteva za ustvarjanje videa samo iz zvoka ni opisana. Predvideni rezultat jasno opišite tudi tam, kjer je besedilo neobvezno, da bo vloga vsake reference izrecna in je ne bo treba sklepati iz nepovezanih gradiv.
Polje content razlikuje postavke text, image_url, video_url in audio_url. Večmodalne reference uporabljajo vloge, kot so reference_image, reference_video in reference_audio. Slika lahko določi osebo, predmet, lokacijo ali videz. Video lahko prikaže izvedbo, gibanje ali pogled kamere, zvok pa določi zvočno podlago ali časovni potek. V navodilu določite razdelitev nalog: ohranite glavni motiv iz slike, sledite pogledu kamere v videu in uporabite zvok kot ozadje. Od vsake reference ne zahtevajte, da hkrati določa vse lastnosti.
Dokumentirani oglaševalski primer združuje dve sliki izdelka z video- in zvočno referenco. Opisuje začetni pogled, zaporedje dejanj, bližnji pogled podrobnosti izdelka in končno kompozicijo, ob tem pa ohranja enak glas v ozadju. Enaka zgradba lahko uredi kratko predstavitev: predstavite predmet, prikažite eno dejanje in končajte pri njegovi prepoznavni značilnosti. Pri urejanju določite izvorni posnetek in element, ki naj se spremeni; pri podaljševanju pojasnite dejanje, ki se nadaljuje po obstoječem prizoru, ob ohranitvi glavnega motiva in smeri gibanja.
Profil 2.0 ima dokumentirano trajanje v celih sekundah od štirih do petnajstih ali -1 za samodejno izbrano trajanje v tem razponu. Privzeto je pet sekund. Možnosti ločljivosti sta 480p in 720p, s privzeto vrednostjo 720p; 1080p je za 2.0 izključeno. Fiksna razmerja stranic vključujejo 16:9, 4:3, 1:1, 3:4, 9:16 in 21:9. Prilagodljivo razmerje lahko izbere kompozicijo glede na poziv ali referenco: delo s prvo sličico sledi začetni sliki, večmodalno delo pa uporabi predvideni prizor ali prvi ustrezni medij, pri čemer ima video prednost pred slikami. V rezultatu naloge preverite dejansko razmerje in trajanje.
Ustvarjeni zvok se upravlja ločeno od referenčnih medijev. generate_audio=true zahteva sinhronizirane glasove, učinke in glasbo v ozadju na podlagi besedila in vizualne vsebine; false zahteva video brez zvoka. Dokumentirana privzeta vrednost je true, pri govoru pa je priporočen dialog v narekovajih. Določite, kdo govori in kako je zvok povezan z vidnim dejanjem, nato preverite dejansko besedilo, pripis glasov in časovni potek. Podajanje zvočne reference in vklop ustvarjenega zvoka sta ločeni izbiri zahteve.
Vodnik 2.0 izključuje starejši nastavitvi frames in camera_fixed ter ne podpira obdelave offline flex. Uporabite polje duration, gibanje kamere pa opišite v samem prizoru. Seed in watermark ostajata dokumentirani nastavitvi; vodnik navaja, da lahko ista zahteva in seed ustvarita podobne rezultate brez zagotovila popolne istovetnosti. Vrednosti seed ne obravnavajte kot dokaz ponovljivosti, ponovljene zahteve pa ne kot že pregledan posnetek.
Poraba videožetonov se izračuna kot (trajanje vhodnega videa + trajanje izhodnega videa) × širina izhoda × višina izhoda × hitrost izhodnih sličic / 1024. Zahteve z vhodnim videom in zahteve brez njega imajo ločene obračunske kategorije. Poizvedba o nalogi sporoči usage.completion_tokens in usage.total_tokens; sporočeni količini shranite skupaj s končanim posnetkom.
Postopek je asinhron: oddaja vrne identifikator naloge, dokončana naloga pa poda content.video_url skupaj s sporočenimi trajanjem, ločljivostjo, razmerjem, hitrostjo sličic in porabo žetonov. Identifikator ohranite ter končani video shranite skupaj z izvirnimi referencami in pozivom. Polje veljavnosti ima privzeto vrednost 172800 sekund in sprejme 3600–259200 sekund od nastanka naloge; naloga, ki preseže interval, preide v stanje s pretečeno veljavnostjo. Preglejte celoten izhod, vključno s spojem pri urejanju ali nadaljevanju: videz likov, podrobnosti predmetov, prostorska razmerja, kontinuiteto gibanja kamere in časovno usklajenost zvoka s sliko.
Ailoot Ultra · Videoposnetki POST /v1/videos doubao-seedance-2-0-260128
doubao-seedance-2-0-260128Začetek
Seedance 2.0 ustvarja in ureja video z besedilom, slikami ter video- in zvočnimi referencami. Lahko nadaljuje obstoječe posnetke in ustvari sinhronizirani zvok, s trajanjem 4–15 sekund, izhodom 480p ali 720p ter izrecno določenimi vlogami referenc.
- Dovoljeni vhodi
- Besedilo · Slike · Video · Zvok
- Rezultati
- Video
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Videoposnetki POST /v1/videos
- Vhod
text,image,video,audio- Izhod
video
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve doubao-seedance-2-0-260128 | Privzeto— |
Poljecontent | Vrstaarray | ZahtevaObvezno | Vrednosti in omejitve Pogoji: Izvorni besedilni/medijski objekti; zunanje polje mora biti neprazno. Ta splošni konstruktor Ailoot ne preverja vrst ugnezdenih vozlišč. | Privzeto— |
Poljegenerate_audio | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Sinhroniziran zvok, vdelan v video. | Privzetotrue |
Poljeduration | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Celo število 4–15 ali -1; vrne se dejansko trajanje izhoda. | Privzeto5 |
Poljeresolution | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 480p, 720p Pogoji: 1080p je izrecno nepodprt pri 2.0/fast. | Privzeto720p |
Poljeratio | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive Pogoji: Adaptive je izrecno omejen na 2.0/fast/1.5; primer za 2.5 uporablja samo 16:9. | Privzetoadaptive |
Poljewatermark | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve | Privzetofalse |
Poljeseed | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: −1 Največ: 4.294.967.295 | Privzeto−1 |
Poljeexecution_expires_after | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 3600 Največ: 259.200 Enota: sekunde | Privzeto172.800 |
Poljeservice_tier | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve default Pogoji: 2.0/fast izključujeta offline flex; obseg za 2.5 ni določen. | Privzetodefault |
Poljesafety_identifier | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve | Privzeto— |
Poljetools | Vrstaobject | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Samo 2.0/fast; dokumentirani type=web_search. | Privzeto— |
Kombinacije vhodnih gradiv
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijacontent, model |
Parameteroptional | Specifikacijagenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools |
Parametermaterial_types | Specifikacijatext, image, video, audio |
Parameteradditional_properties | Specifikacijatrue |
Parametervalidation_scope | SpecifikacijaAiloot preveri obvezne vrste polj in neprazno polje model/content. Druga polja zahteve se ohranijo za izbrani model. |
Parametermaterial_combinations | Specifikacijatext, image, video, image, audio, image, video, video, audio, image, video, audio |
Parameteroptional_text_with_media | Specifikacijatrue |
Parameterreference_media_count_and_size_limits | Specifikacijanull |
Druga imena metode: /v1/videos/generations
Življenjski cikel: 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
Ustvarite enkrat in ohranite vrnjeni javni id/polling_url.
Preverjajte prvotno opravilo; po succeeded prenesite dejansko vsebino content.video_url v vaši lasti.
Cenik
Kako se izračuna končni strošek
Prikazane cene so namenjene oceni stroškov pred generiranjem. Končni znesek se izračuna na podlagi stroška, zabeleženega za izvirno generiranje. Izmerjeno trajanje izhoda in napovedane količine niso končna obračunska količina.
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Ocenjene cene za primerjavo
Cene po nastavitvah
Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.
| Nastavitev | Cenovna lestvica | Predvidena količina | Obračunska enota | Strošek |
|---|---|---|---|---|
| NastavitevOsnovne cene žetonov | Cenovna lestvicaOsnovna cena | Predvidena količina— | Obračunska enota— | Strošek Vhod · Vhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Izhod · Izhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Vhod · Branje predpomnilnika · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura · Ocena samo za primerjavo — / 1K žetonov |
| NastavitevVhod vsebuje video. | Cenovna lestvica— | Predvidena količina— | Obračunska enotana 1K video žetonov | Strošek Izhod · Ocena samo za primerjavo $0.0096 na 1K video žetonov |
| NastavitevVhod ne vsebuje videa. | Cenovna lestvica— | Predvidena količina— | Obračunska enotana 1K video žetonov | Strošek Izhod · Ocena samo za primerjavo $0.015768 na 1K video žetonov |
| NastavitevOcenjeni strošek ustvarjanja | Cenovna lestvica— | Predvidena količinaocena za eno generiranje | Obračunska enota— | Strošek Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.822402 ocena pred ustvarjanjem Ta ocena ni dodatno plačilo ali fiksna cena za dokončano generiranje. |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Videoposnetki
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
Prejmi in shrani rezultate
Ailoot Ultra · Videoposnetki
Izvorni JSON z javnima id/polling_url. Po objavi content.video_url vsebuje podpisane URL-je v lasti Ailoot; pred objavo so izbrani izhodni URL-ji izpraznjeni.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Ohrani vse dokončane rezultate
Shranite vsak dokončan video ali vrnjeno datoteko; pridobite vsebino z vsake dejansko vrnjene URL gradiva.
Ohranite vsak dejanski URL v content.video_url; index mora označevati dejanski vrnjeni izhod.
Če je treba preveriti izvirni odgovor
Ohranite prvotni odgovor/glave/id in preverjajte to operacijo; neznanega ustvarjanja nikoli ne oddajte znova.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeid | Vrstastring |
Poljeprovider_task_id | Vrstastring |
Poljepolling_url | Vrstastring |
Poljestatus | Vrstastring when supplied |
Poljecontent.video_url | Vrstastring|string[] |
Poljeusage | Vrstaobject when supplied |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljaven JSON/model/vrste obveznih polj ali indeks vsebine. | Naslednji korak |
Odgovor401 · authentication_error | PogojNeveljaven ključ Ailoot API. | Naslednji korak |
Odgovor404 · not_found_error | PogojOpravilo/izhod manjka ali ni v lasti istega uporabnika/ključa API/skupine. | Naslednji korak |
Odgovor502 · result_pending_check | PogojPrvotna oddaja/stanje je nepopolno; ohranite prvotni ID, ne oddajte znova. | Naslednji korak |
Odgovor503 · result_pending_check | PogojPrvotni medij/pot/obračun se preverja; nadaljujte prvotno operacijo. | Naslednji korak |
Druga imena
Druga imena modelov
Ailoot Ultra doubao-seedance-2-0-260128
Druga imena poti metod
/v1/videos/generations
Povezani ID-ji za klic
FAQ · ByteDance: Seedance 2.0
- Kateri vhodi in rezultati so na voljo?
POST /v1/videos·doubao-seedance-2-0-260128:text,image,video,audio→video- Katera polja uporablja zahteva?
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- Katere omejitve veljajo?
POST /v1/videos·doubao-seedance-2-0-260128:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200