ByteDance: Seedance 2.0
Seedance 2.0 luo ja muokkaa videota tekstin sekä kuva-, video- ja ääniviitteiden avulla. Se voi jatkaa olemassa olevaa videota ja luoda synkronoitua ääntä. Kesto on 4–15 sekuntia, tulos 480p tai 720p, ja viitteille määritetään selkeät roolit.
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
Seedance 2.0 luo videota kirjallisesta kohtauksesta tai kuva-, video- ja ääniviitteiden yhdistelmästä. Täsmällinen valitsin doubao-seedance-2-0-260128 yksilöi tavallisen 2.0-profiilin. Sen dokumentoidut työnkulut sisältävät uuden videon luonnin sekä olemassa olevan videon muokkauksen ja jatkamisen. Käytä viitteitä ulkoasun, liikkeen, kamerakielen ja äänen välittämiseen ja kerro sitten, mitä kohtauksen osia niiden tulee ohjata.
Tekstiä voi antaa yksin. Dokumentoidut multimodaaliset yhdistelmät sallivat myös kuvat tai videon valinnaisen tekstin kanssa, kuvat ja äänen, videon ja äänen sekä kuvat, videon ja äänen yhdessä. Ääni siis täydentää visuaalista mediaa näissä yhdistelmissä; sitä ei kuvata itsenäiseksi äänestä videoksi -pyynnöksi. Kirjoita tarkoitettu tulos selkeästi myös silloin, kun teksti on valinnainen, jotta jokaisen viitteen rooli määritetään suoraan eikä sitä jätetä pääteltäväksi irrallisista aineistoista.
content-taulukko erottaa kohteet text, image_url, video_url ja audio_url. Multimodaaliset viitteet käyttävät rooleja kuten reference_image, reference_video ja reference_audio. Kuva voi määrittää henkilön, esineen, paikan tai ilmeen. Video voi näyttää esityksen, liikkeen tai kameranäkymän, ja ääni voi määrittää ääniraidan tai ajoituksen. Kerro tehtäväjako ohjeessa: säilytä kuvan kohde, seuraa videon kameranäkymää ja käytä ääntä taustalla. Älä pyydä jokaista viitettä määrittämään kaikkia ominaisuuksia yhtä aikaa.
Dokumentoitu mainosesimerkki yhdistää kaksi tuotekuvaa videoon ja ääniviitteeseen. Se kuvaa aloitusnäkymän, toimintajakson, tuotteen lähiyksityiskohdan ja loppusommittelun ja pitää samalla taustalla kuuluvan puheäänen yhtenäisenä. Sama rakenne voi järjestää lyhyen esittelyn: esittele esine, näytä yksi toiminto ja päätä sen tunnistettavaan piirteeseen. Yksilöi muokkauksessa lähdevideo ja muutettava osa; selitä jatkossa olemassa olevan kohtauksen yli jatkuva toiminta ja säilytä kohde ja liikesuunta.
2.0-profiili dokumentoi kokonaiset sekunnit neljästä viiteentoista tai arvon -1, jolla kesto valitaan automaattisesti tältä alueelta. Oletus on viisi sekuntia. Tarkkuusvaihtoehdot ovat 480p ja 720p, joista 720p on oletus; 1080p on suljettu pois 2.0:ssa. Kiinteät kuvasuhteet ovat 16:9, 4:3, 1:1, 3:4, 9:16 ja 21:9. Mukautuva kuvasuhde voi valita rajauksen kehotteen tai viitteen perusteella: ensimmäiseen ruutuun perustuva työ seuraa aloituskuvaa, ja multimodaalinen työ käyttää tarkoitettua kohtausta tai ensimmäistä olennaista mediaa niin, että video on ensisijainen kuviin nähden. Tarkista tehtävätuloksesta todellinen kuvasuhde ja kesto.
Luotua ääntä ohjataan erillään viiteaineistosta. generate_audio=true pyytää synkronoituja puheääniä, tehosteita ja taustamusiikkia tekstin ja visuaalisen sisällön perusteella; false pyytää äänetöntä videota. Dokumentoitu oletus on true, ja puheelle suositellaan lainausmerkkeihin suljettua vuoropuhelua. Määritä puhuja ja äänen yhteys näkyvään toimintaan ja tarkista sitten todellinen sanamuoto, äänen kohdentuminen ja ajoitus. Ääniviitteen antaminen ja luodun äänen käyttöönotto ovat erillisiä pyyntövalintoja.
2.0-ohje sulkee pois vanhemmat frames- ja camera_fixed-asetukset eikä tue flex-offline-käsittelyä. Käytä duration-kenttää ja kuvaa kameraliike itse kohtauksessa. seed ja watermark pysyvät dokumentoituina asetuksina; ohjeen mukaan sama pyyntö ja seed voivat tuottaa samankaltaisia tuloksia takaamatta täsmällistä identtisyyttä. Älä pidä seediä toistettavuuden näyttönä tai toistettua pyyntöä jo tarkistettuna leikkeenä.
Videotokenien käyttö lasketaan kaavalla (syötevideon kesto + tulosvideon kesto) × tuloksen leveys × tuloksen korkeus × tuloksen kuvataajuus / 1024. Syötevideon sisältävillä pyynnöillä ja pyynnöillä ilman syötevideota on erilliset laskutusluokat. Tehtäväkysely ilmoittaa kentät usage.completion_tokens ja usage.total_tokens; säilytä nämä ilmoitetut määrät valmiin leikkeen kanssa.
Työnkulku on asynkroninen: lähetys palauttaa tehtävätunnisteen, ja valmis tehtävä antaa kentän content.video_url sekä ilmoitetut keston, tarkkuuden, kuvasuhteen, kuvataajuuden ja tokenkäytön. Säilytä tunniste ja tallenna valmis video alkuperäisten viitteiden ja kehotteen kanssa. Vanhenemiskentän oletus on 172800 sekuntia, ja se hyväksyy 3600–259200 sekuntia tehtävän luonnista; aikavälin ylittävä tehtävä muuttuu vanhentuneeksi. Tarkista koko tuloksesta, myös muokkauksen tai jatkon liitoskohdasta, hahmon ulkoasu, esineen yksityiskohdat, tilalliset suhteet, kameran jatkuvuus ja äänen ajoitus kuvaan nähden.
Ailoot Ultra · Videot POST /v1/videos doubao-seedance-2-0-260128
doubao-seedance-2-0-260128Aloitus
Seedance 2.0 luo ja muokkaa videota tekstin sekä kuva-, video- ja ääniviitteiden avulla. Se voi jatkaa olemassa olevaa videota ja luoda synkronoitua ääntä. Kesto on 4–15 sekuntia, tulos 480p tai 720p, ja viitteille määritetään selkeät roolit.
- Hyväksytyt syötteet
- Teksti · Kuvat · Video · Ääni
- Tulokset
- Video
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Videot POST /v1/videos
- Syötetyypit
text,image,video,audio- Tulostyypit
video
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat doubao-seedance-2-0-260128 | Oletus— |
Kenttäcontent | Tyyppiarray | VaatimusPakollinen | Arvot & rajat Ehdot: Natiivit teksti- ja mediaoliot; ulompi taulukko ei saa olla tyhjä. Tämä Ailoot-palvelun yleinen pyyntörakentaja ei validoi sisäkkäisten solmujen tyyppejä. | Oletus— |
Kenttägenerate_audio | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat Ehdot: Videoon upotettu synkronoitu ääni. | Oletustrue |
Kenttäduration | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Ehdot: Kokonaisluku 4–15 tai -1; todellinen tuloksen kesto palautetaan. | Oletus5 |
Kenttäresolution | Tyyppistring | VaatimusValinnainen | Arvot & rajat 480p, 720p Ehdot: 1080p on nimenomaisesti tukematon versioissa 2.0/fast. | Oletus720p |
Kenttäratio | Tyyppistring | VaatimusValinnainen | Arvot & rajat 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive Ehdot: Adaptive on rajattu nimenomaisesti versioihin 2.0/fast/1.5; version 2.5 esimerkissä on vain 16:9. | Oletusadaptive |
Kenttäwatermark | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat | Oletusfalse |
Kenttäseed | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: −1 Enimmäismäärä: 4 294 967 295 | Oletus−1 |
Kenttäexecution_expires_after | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 3 600 Enimmäismäärä: 259 200 Yksikkö: sekuntia | Oletus172 800 |
Kenttäservice_tier | Tyyppistring | VaatimusValinnainen | Arvot & rajat default Ehdot: 2.0/fast sulkevat pois offline-tilan flex; version 2.5 soveltamisalaa ei ole vahvistettu. | Oletusdefault |
Kenttäsafety_identifier | Tyyppistring | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttätools | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Ehdot: Vain 2.0/fast; dokumentoitu type=web_search. | Oletus— |
Syöteaineistojen yhdistelmät
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimuscontent, model |
Parametrioptional | Sopimusgenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools |
Parametrimaterial_types | Sopimustext, image, video, audio |
Parametriadditional_properties | Sopimustrue |
Parametrivalidation_scope | SopimusAiloot tarkistaa pakollisten kenttien tyypit ja sen, että model/content-taulukko ei ole tyhjä. Muut pyyntökentät säilytetään valittua mallia varten. |
Parametrimaterial_combinations | Sopimustext, image, video, image, audio, image, video, video, audio, image, video, audio |
Parametrioptional_text_with_media | Sopimustrue |
Parametrireference_media_count_and_size_limits | Sopimusnull |
Menetelmien aliakset: /v1/videos/generations
Elinkaari: 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
Luo kerran ja säilytä palautettu julkinen id/polling_url.
Kysy alkuperäisen työn tilaa; lataa todellinen käyttäjälle kuuluva content.video_url-sisältö succeeded-tilan jälkeen.
Hinnoittelu
Lopullisen veloituksen laskenta
Näytettyjen hintojen avulla arvioidaan kustannukset ennen generointia. Lopullinen veloitus lasketaan alkuperäiselle generoinnille kirjatun kustannuksen perusteella. Lopullisena laskutettavana määränä ei käytetä tulosteen mitattua kestoa eikä ennustettuja määriä.
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Ei määritetty Kun nopea tila on valittu
- Flex-tila
- Ei määritetty Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Arvioidut vertailuhinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Ennustettu määrä | Laskutusyksikkö | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Ennustettu määrä— | Laskutusyksikkö— | Veloitus Syöte · Syötetokenit · Arvio vain vertailua varten — / 1K tokenia Tuloste · Tulostokenit · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistin luku · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistiin kirjoitus · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti · Arvio vain vertailua varten — / 1K tokenia |
| AsetuksetSyöte sisältää videoviitteen. | Hinnasto— | Ennustettu määrä— | Laskutusyksikkö1K videotokenia kohden | Veloitus Tuloste · Arvio vain vertailua varten $0.0096 1K videotokenia kohden |
| AsetuksetSyöte ei sisällä videoviitettä. | Hinnasto— | Ennustettu määrä— | Laskutusyksikkö1K videotokenia kohden | Veloitus Tuloste · Arvio vain vertailua varten $0.015768 1K videotokenia kohden |
| AsetuksetArvioitu luontikustannus | Hinnasto— | Ennustettu määräyhden generoinnin arvio | Laskutusyksikkö— | Veloitus Tuloste · Arvioidut generointikustannukset · Arvio vain vertailua varten $0.822402 arvio ennen generointia Tämä arvio ei ole lisämaksu eikä valmistuneen generoinnin kiinteä hinta. |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Videot
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
Vastaanota ja tallenna tulokset
Ailoot Ultra · Videot
Natiivi JSON, jossa on julkinen id/polling_url. Julkaisun jälkeen content.video_url sisältää Ailoot-palvelun hallinnoimat allekirjoitetut URL-osoitteet; ennen julkaisua valitut tulosten URL-osoitteet tyhjennetään.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Säilytä kaikki valmistuneet tulokset
Tallenna jokainen valmistunut video tai palautettu tiedosto; nouda jokainen todellinen palautettu aineiston URL.
Säilytä jokainen todellinen URL content.video_url-kentässä; index-arvon on yksilöitävä todellinen palautettu tulos.
Jos alkuperäinen vastaus on tarkistettava
Säilytä alkuperäinen vastaus, otsakkeet ja id sekä kysy saman operaation tilaa; älä koskaan lähetä tuntemattomaan tilaan jäänyttä luontipyyntöä uudelleen.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäid | Tyyppistring |
Kenttäprovider_task_id | Tyyppistring |
Kenttäpolling_url | Tyyppistring |
Kenttästatus | Tyyppistring when supplied |
Kenttäcontent.video_url | Tyyppistring|string[] |
Kenttäusage | Tyyppiobject when supplied |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoVirheellinen JSON/model, pakollisten kenttien tyypit tai sisältöindeksi. | Seuraava vaihe |
Vastaus401 · authentication_error | EhtoVirheellinen Ailoot API -avain. | Seuraava vaihe |
Vastaus404 · not_found_error | EhtoTehtävä tai tulos puuttuu tai ei kuulu samalle käyttäjälle/API-avaimelle/ryhmälle. | Seuraava vaihe |
Vastaus502 · result_pending_check | EhtoAlkuperäinen lähetys tai tilatieto on puutteellinen; säilytä alkuperäinen tunniste, älä lähetä uudelleen. | Seuraava vaihe |
Vastaus503 · result_pending_check | EhtoAlkuperäistä mediaa, reittiä tai veloituksen lopullista kirjausta tarkistetaan; jatka alkuperäistä operaatiota. | Seuraava vaihe |
Aliakset
Mallin aliakset
Ailoot Ultra doubao-seedance-2-0-260128
Menetelmäpolkujen aliakset
/v1/videos/generations
Liittyvät kutsujan ID:t
FAQ · ByteDance: Seedance 2.0
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/videos·doubao-seedance-2-0-260128:text,image,video,audio→video- Mitä kenttiä pyyntö käyttää?
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- Mitä rajoja sovelletaan?
POST /v1/videos·doubao-seedance-2-0-260128:seed.minimum:-1;seed.maximum:4294967295;execution_expires_after.minimum:3600;execution_expires_after.maximum:259200