Vidu: Q2 Text-to-Video
Vidu Q2 skaber video ud fra en skriftlig scenebeskrivelse med en varighed på 1–10 sekunder, output i 540p, 720p eller 1080p og fem billedformater. Denne specifikke viduq2-profil bruger prompten til stil og bevægelse og returnerer resultatet gennem en asynkron opgave.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
Vidu Q2 skaber video ud fra en skriftlig scene gennem den tekst-til-video-profil, der vælges med viduq2. De påkrævede input er den præcise modelidentifikator og en prompt, der beskriver scenen. Brug den til et kort produktkoncept, et oversigtsbillede eller en karakterhandling, hvis udseende og bevægelse kan angives med ord. Denne konfigurerede metode er tekst-til-video; beskrivelsen tildeler ikke selektoren en separat tilstand til billedreferencer eller videoredigering.
Opbyg opgavebeskrivelsen omkring en synlig sekvens. Angiv motiv, sted, handling, billedudsnit, kamerabevægelse og slutkomposition. Ved et produktkoncept beskrives en genstand på en bordplade, lys, der bevæger sig over materialet, og en langsom kamerabevægelse frem mod en genkendelig detalje, hvor optagelsen slutter. Ved en lokalitetsscene etableres omgivelserne, før kameraet bevæges mod fokuspunktet. Tilpas handlingen til den valgte kliplængde, så scenen har plads til den tilsigtede afslutning.
Promptgrænsen er 2.000 tegn. Placer det væsentlige motiv og handlingen først, og tilføj derefter de detaljer om belysning, materiale, omgivelser og kamera, som ændrer det ønskede resultat. Angiv den visuelle stil i prompten. Den Q2-specifikke vejledning angiver, at de separate parametre style og movement_amplitude ikke har virkning for denne model, så forudindstillingen general eller anime og valgmulighederne for bevægelsesamplitude erstatter ikke en tydelig scenebeskrivelse.
Den modelspecifikke varighedsindstilling accepterer hele sekunder fra ét til ti. De Q2-specifikke opløsningsvalg er 540p, 720p og 1080p med 720p som dokumenteret standard. Vælg varighed og opløsning sammen efter handlingen og anvendelsen. En kort afsløring og en længere bevægelse kræver forskellig timing; en øget ønsket varighed skal tjene den synlige sekvens frem for blot at strække en uændret opgavebeskrivelse. Undersøg det returnerede klips faktiske dimensioner og længde, når den endelige placering forberedes.
De dokumenterede valg til aspect_ratio er 16:9, 9:16, 3:4, 4:3 og 1:1 med 16:9 som standard. Vejledningen medtager udtrykkeligt 3:4 og 4:3 til Q2-familien. Vælg billedformat før generering, og beskriv en komposition, der passer til det: hold et hovedmotiv tydeligt i et stående billede, eller brug bredden af et liggende billede til omgivelserne. Hold slutbilledet tydeligt nok til den tilsigtede side, præsentation eller senere tilføjelse af tekst.
Feltet seed styrer variation. Udeladelse eller angivelse af 0 vælger en tilfældig værdi; en værdi forskellig fra nul vælger den dokumenterede mulighed med fast seed til gentagelig generering. Bevar den returnerede seed sammen med prompten og indstillingerne ved sammenligning af versioner. Den fælles arbejdsgang dokumenterer også indstillingerne audio og off_peak specifikt til Q3-modeller. Disse Q3-valg er ikke funktioner, der er tildelt denne Q2-profil; planlæg anmodningen omkring dens dokumenterede tekstinput og videooutput.
Genereringen er asynkron. Indsendelse returnerer task_id og en indledende tilstand med created til en nyoprettet opgave. Bevar opgaveidentiteten, mens behandlingen følges. Den dokumenterede resultatforespørgsel bruger state=success til et vellykket resultat og returnerer et creations-array. Hvert element har sin video-URL i creations[].url; gem alle returnerede videoer frem for at antage, at opgaven altid indeholder præcis én frembringelse.
Resultatdokumentationen rapporterer også den faktiske videos varighed, fps samt opløsningens bredde og højde. Bevar de rapporterede værdier sammen med det færdige klip frem for at behandle et eksempels billedfrekvens eller dimensioner som en fast Q2-specifikation. Svaret ved oprettelse af opgaven indeholder en credits-værdi sammen med anmodningskonfigurationen. Bevar disse rapporterede opgavemetadata og den fuldførte identitet sammen med resultatet, så hver video forbliver knyttet til sine genereringsindstillinger.
Gennemgå hele sekvensen i forhold til den oprindelige opgavebeskrivelse: motivets udseende, genstandens form, bevægelsesretning, kamerakontinuitet og det tilsigtede slutbillede. Ved en revision skal den konkrete detalje, der ikke fulgte opgavebeskrivelsen, identificeres, og de vellykkede dele af scenen bevares. Bevar prompten, den præcise selektor, indstillingerne, opgaveidentiteten og de færdige videoer samlet, så en senere sammenligning bygger på de faktiske resultater.
Ailoot Ultra · Videoer POST /v1/videos viduq2
viduq2Start
Vidu Q2 skaber video ud fra en skriftlig scenebeskrivelse med en varighed på 1–10 sekunder, output i 540p, 720p eller 1080p og fem billedformater. Denne specifikke viduq2-profil bruger prompten til stil og bevægelse og returnerer resultatet gennem en asynkron opgave.
- Accepterede input
- Tekst
- Resultater
- Video
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Videoer POST /v1/videos
- Inputtyper
text- Outputtyper
video
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser viduq2 | Standard— |
Feltprompt | Typestring | KravPåkrævet | Værdier og grænser Betingelser: Beskriv scenen, der skal genereres. Den dokumenterede grænse er 2000 tegn; Ailoot kontrollerer, at strengen ikke er tom, og bevarer teksten. | Standard— |
Feltduration | Typeinteger | KravValgfrit | Værdier og grænser Minimum: 1 Maksimum: 10 Betingelser: Den modelspecifikke beskrivelse af viduq2 angiver 1–10 hele sekunder. Der er ikke dokumenteret nogen modelspecifik standardvarighed. Enhed: sekunder | Standard— |
Feltseed | Typestring | KravValgfrit | Værdier og grænser Betingelser: Udelad feltet, eller send strengen "0" for tilfældighed. En angivet seed-værdi, der ikke er nul, vælger den dokumenterede adfærd med fast seed; der er ikke angivet noget numerisk interval. | Standard— |
Feltaspect_ratio | Typestring | KravValgfrit | Værdier og grænser 16:9, 9:16, 3:4, 4:3, 1:1 | Standard16:9 |
Feltresolution | Typestring | KravValgfrit | Værdier og grænser 540p, 720p, 1080p Betingelser: Den modelspecifikke viduq2-liste dokumenterer disse niveauer for 1–10 sekunder. En fælles enum og tabel nævner også 360p; dens anvendelighed er i modstrid med denne liste og fastslås ikke her. | Standard720p |
Feltstyle | Typestring | KravValgfrit | Værdier og grænser general, anime Betingelser: Den fælles forespørgsel accepterer dette felt, men dokumentationen siger udtrykkeligt, at det ikke har nogen virkning for viduq2. | Standardgeneral |
Feltmovement_amplitude | Typestring | KravValgfrit | Værdier og grænser auto, small, medium, large Betingelser: Den fælles forespørgsel accepterer dette felt, men dokumentationen siger udtrykkeligt, at det ikke har nogen virkning for q2-modeller. | Standardauto |
Kombinationer af inputmaterialer
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, prompt |
Parameteroptional | Kontraktduration, seed, aspect_ratio, resolution, style, movement_amplitude |
Parametermaterial_types | Kontrakttext |
Parameteradditional_properties | Kontrakttrue |
Parametervalidation_scope | KontraktAiloot validerer de ikke-tomme model/prompt-strenge. De valgfrie typer og grænser nedenfor er den dokumenterede forespørgselskontrakt; andre forespørgselsfelter bevares til den valgte model. |
Metodealiaser: /v1/videos/generations
Livscyklus: 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
Opret én gang, og behold det returnerede offentlige id og polling_url.
Forespørg på den oprindelige operations status, og læs state; success og et ejet resultat i creations[].url udgør grænsen for, hvornår operationen er færdig.
Download hver returneret URL til din video; udled ikke et fast antal resultater, en fast varighed eller en fast billedfrekvens af eksemplet.
Priser
Sådan beregnes det endelige beløb
De viste satser bruges til at anslå omkostningen før genereringen. Det endelige beløb beregnes ud fra den registrerede omkostning for den oprindelige generering. Den målte varighed af outputtet og de anslåede mængder er ikke den endelige fakturerbare mængde.
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Ikke angivet Når hurtig tilstand er valgt
- flex-tilstand
- Ikke angivet Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Estimerede takster til sammenligning
Priser efter konfiguration
Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.
| Konfiguration | Takstplan | Forventet mængde | Beløb |
|---|---|---|---|
| KonfigurationGrundpriser for tokens | TakstplanGrundtakst | Forventet mængde— | Beløb Input · Inputtokens · Estimat kun til sammenligning — / 1K tokens Output · Outputtokens · Estimat kun til sammenligning — / 1K tokens Input · Cachelæsning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning · Estimat kun til sammenligning — / 1K tokens Input · Cacheskrivning, 1 time · Estimat kun til sammenligning — / 1K tokens |
| KonfigurationAnslået genereringsomkostning | Takstplan— | Forventet mængdeestimat for én generering | Beløb Output · Anslået genereringsomkostning · Estimat kun til sammenligning $5.12 estimat før generering Dette estimat er hverken et ekstra gebyr eller en fast pris for den færdige generering. |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Videoer
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"viduq2","prompt":"In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene."}
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: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 the 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("state")!="success":raise SystemExit("Poll the same original job until its owned result is returned.")
creations=r.get("creations")
if not isinstance(creations,list) or not creations:raise SystemExit("No completed video creations.")
urls=[]
for item in creations:
value=item.get("url") if isinstance(item,dict) else None
values=[value] if isinstance(value,str) else value
if not isinstance(values,list) or not values:raise SystemExit("No completed video URL.")
for u in values:
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 the actual Ailoot-owned signed result.")
urls.append(u)
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
Hent og gem resultater
Ailoot Ultra · Videoer
JSON bevarer den native state og creations-arrayet med tilføjet offentligt id/provider_task_id/polling_url. De valgte video-URL’er er tomme før offentliggørelse og bliver til signerede URL’er, der ejes af Ailoot, efter færdiggørelse.
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Behold alle færdige resultater
Gem hver færdig video eller returneret fil; hent hver faktisk returneret fil-URL.
Download hver faktisk returneret URL i creations[].url; et indholdsindeks identificerer ét reelt returneret output.
Hvis det oprindelige svar skal kontrolleres
Den fastlagte specifikation opregner ingen afsluttende fejltilstand. Behold det oprindelige svar, headere og id, og kontrollér samme operation ved enhver ukendt tilstand eller result_pending_check-fejl; indsend aldrig en oprettelse med ukendt udfald igen.
Svarfelter
| Felt | Type | Betydning |
|---|---|---|
Feltid | Typestring | BetydningReturneret offentlig Ailoot-opgave- eller operationsidentifikator. |
Feltprovider_task_id | Typestring | BetydningOprindelig opgaveidentifikator, adskilt fra det offentlige id. |
Feltpolling_url | Typestring | BetydningReturneret Ailoot-opslagssti til den oprindelige opgave. |
Felttask_id | Typestring when supplied | BetydningOprindelig identifikator, som findes i oprettelsessvaret. |
Feltstate | Typestring when supplied | BetydningOpgavens native tilstand: created for den fastlagte ventetilstand og success, når den er færdig. |
Felterr_code | Typestring when supplied | BetydningOpgavediagnostik; den gemte specifikation angiver ingen opregnet liste over fejlkoder. |
Feltcreations[].url | Typestring|string[] | BetydningHver valgt URL til en færdig video erstattes med en signeret URL, der ejes af Ailoot. |
Feltcreations[].video.duration | Typenumber when supplied | BetydningReturneret videovarighed; kontrollér det faktiske færdige resultat. |
Feltcreations[].video.fps | Typeinteger when supplied | BetydningReturneret billedfrekvens; der loves ingen fast billedfrekvens. |
Feltcreations[].video.resolution.width | Typeinteger when supplied | BetydningReturneret outputbredde i pixels. |
Feltcreations[].video.resolution.height | Typeinteger when supplied | BetydningReturneret outputhøjde i pixels. |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldig JSON/model, manglende eller tomme påkrævede strenge eller et ugyldigt indholdsindeks. | Næste trin |
Svar401 · authentication_error | BetingelseUgyldig Ailoot API-nøgle. | Næste trin |
Svar403 · permission_error | BetingelseAPI-nøglens gruppe har ikke adgang til denne medierute. | Næste trin |
Svar404 · not_found_error | BetingelseDen oprindelige opgave eller det ønskede output mangler eller tilhører ikke samme bruger/API-nøgle/gruppe. | Næste trin |
Svar502 · result_pending_check | BetingelseDen oprindelige indsendelse eller status er ufuldstændig eller kan ikke afstemmes; behold det oprindelige ID, og indsend ikke igen. | Næste trin |
Svar503 · result_pending_check | BetingelseDen oprindelige tilknytning, rute eller de ejede medier kontrolleres stadig; fortsæt kontrollen af denne oprindelige operation. | Næste trin |
Svar503 · server_error | BetingelseMedietjenesten eller lageret for den oprindelige opgave er utilgængeligt. | Næste trin |
Aliaser
Modelaliaser
Ailoot Ultra viduq2
Aliaser for metodestier
/v1/videos/generations
Relaterede kalder-ID’er
FAQ · Vidu: Q2 Text-to-Video
- Hvilke input og resultater er tilgængelige?
POST /v1/videos·viduq2:text→video- Hvilke felter bruger anmodningen?
POST /v1/videos·viduq2:model,prompt,duration,seed,aspect_ratio,resolution,style,movement_amplitude- Hvilke grænser gælder?
POST /v1/videos·viduq2:duration.minimum:1;duration.maximum:10