Vidu Q1
Vidu Q1 ustvari petsekundni video z besedilnim in neobveznim slikovnim usmerjanjem. Ailoot za posnetek ponuja izhod 1080p, kadriranje in možnosti movement_amplitude.
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.
Uporabite vidu-q1 s poljema model in prompt v /v1/videos. Ta zahteva omogoča petsekundno trajanje in ločljivost 1080p. Izberite aspect_ratio 16:9, 1:1 ali 9:16 ter movement_amplitude auto, small, medium ali large. Na voljo sta tudi polji image in end_image.
Navodila za gibanje prilagodite kratkemu vidnemu dejanju. Navedite, ali gibanje pripada subjektu, kameri ali ozadju, in opišite predvideno končno kompozicijo. Če je podana začetna slika, določite podrobnosti subjekta za ohranitev; če uporabite končno sliko, pojasnite prehod vanjo. Nastavitev gibanja hranite skupaj z navodili za pregled.
Posnetek oddajte enkrat prek /v1/videos in ohranite vrnjeni ID zahteve. Stanje te iste operacije preverjajte prek /v1/videos/{request_id}, nato shranite vsak dokončani video in celoten odgovor. Celotno dejanje in končno kompozicijo preglejte glede na priloženo gradivo in navodila.
Ailoot Ultra · Video POST /v1/videos vidu-q1
vidu-q1Začetek
Vidu Q1 ustvari petsekundni video z besedilnim in neobveznim slikovnim usmerjanjem. Ailoot za posnetek ponuja izhod 1080p, kadriranje in možnosti movement_amplitude.
- Dovoljeni vhodi
- Besedilo · Slike
- Rezultati
- Video
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Video POST /v1/videos
- Vhod
text,image- Izhod
video
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve vidu-q1 Pogoji: Uporabite natanko ta izbirnik usmerjanja Ailoot. | Privzeto— |
Poljeaspect_ratio | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 16:9, 1:1, 9:16 Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljeduration | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve 5 Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljeend_image | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljeimage | Vrstastring or array<string> | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljeprompt | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljeresolution | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 1080p Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Poljemovement_amplitude | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve auto, small, medium, large Pogoji: Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. | Privzeto— |
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, prompt |
Parameteroptional | Specifikacijaaspect_ratio, duration, end_image, image, resolution, movement_amplitude |
Parametermaterial_types | Specifikacijatext, image |
Parameterconditions | SpecifikacijaUporabite natanko ta izbirnik usmerjanja Ailoot., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite., Uporabite dokumentirano polje za izbrani model in navedene možnosti; nedoločeno izbirno vrednost izpustite. |
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/media/assets
GET /v1/media/assets/{asset_id}
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 količina | Strošek |
|---|---|---|---|---|
| NastavitevOsnovne cene žetonov | Cenovna lestvicaOsnovna cena | Predvidena količina— | Obračunska količina— | 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 |
| NastavitevNa zahtevo | Cenovna lestvica— | Predvidena količina— | Obračunska količinaena zahteva | Strošek Vhod · Ocena samo za primerjavo $0.8 na zahtevo |
| NastavitevOcenjeni strošek ustvarjanja | Cenovna lestvica— | Predvidena količinaocena za eno generiranje | Obračunska količina— | Strošek Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.8 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 · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "vidu-q1", "prompt": "A cat is walking on grass."}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_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
# Submit once. Retain the complete result, original identifiers and every response header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("status.json").read_text())
roles={}
def visit(v,path=""):
if isinstance(v,dict):
for k,x in v.items(): visit(x,path+"/"+k)
elif isinstance(v,list):
for i,x in enumerate(v): visit(x,path+"/"+str(i))
elif isinstance(v,str):
u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
target=Path(f"asset-{i}.bin")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
raw=target.read_bytes()
if not raw: raise SystemExit("Empty asset; retain original status and metadata")
ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
name=f"asset-{i}.{ext}"
if target.name!=name: target.rename(name)
manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
Prejmi in shrani rezultate
Ailoot Ultra · Video
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Ohrani vse dokončane rezultate
Shranite vsak dokončan video ali vrnjeno datoteko; pridobite vsebino z vsake dejansko vrnjene URL gradiva.
Ohranite celoten odgovor in glave, prvotne identifikatorje, vsak dejanski izhod in vsa polja porabe/obračuna. Shranite vsako enolično sredstvo v vaši lasti in ohranite vsako vlogo, ki kaže nanj.
Če je treba preveriti izvirni odgovor
Ohranite vrnjeni javni id opravila ali operacije in vse glave. Berite samo prvotno opravilo; unknown ali result_pending_check ne dovoljujeta novega ustvarjanja.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeid | Vrstastring |
Poljepolling_url | Vrstastring |
Poljeprovider_task_id | Vrstastring |
Poljetask_id | Vrstastring |
Poljestatus | Vrstastring |
Poljevideo_url | Vrstastring |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojObvezno polje, izbirnik modela, vrsta ali oblika vhoda ni veljavna. | Naslednji korakPred pripravo ločene zahteve preglejte vrnjene podrobnosti preverjanja veljavnosti. |
Odgovor | PogojIzvirna zahteva ali rezultat je neznan ali zahteva preverjanje. | Naslednji korakOhranite izvirne identifikatorje in glave; berite le podprte zapise o stanju ali zapise v knjižnici. Zahteve za ustvarjanje ne pošiljajte znova. |
Druga imena
Druga imena modelov
Ailoot Ultra vidu-q1
Druga imena poti metod
/v1/videos/generations
Povezani ID-ji za klic
FAQ · Vidu Q1
- Kateri vhodi in rezultati so na voljo?
POST /v1/videos·vidu-q1:text,image→video- Katera polja uporablja zahteva?
POST /v1/videos·vidu-q1:model,aspect_ratio,duration,end_image,image,prompt,resolution,movement_amplitude