Vidu Q1
Vidu Q1 kuria penkių sekundžių vaizdo įrašą su tekstu ir pasirenkamomis vaizdinėmis gairėmis. Ailoot suteikia kadro 1080p išvestį, kadravimą ir movement_amplitude parinktis.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
Naudokite vidu-q1 su model ir prompt galiniame taške /v1/videos. Ši užklausa suteikia penkių sekundžių trukmę ir 1080p raišką. Pasirinkite aspect_ratio 16:9, 1:1 arba 9:16 ir movement_amplitude auto, small, medium arba large. Taip pat prieinami image ir end_image laukai.
Judesio aprašą suderinkite su trumpu matomu veiksmu. Nurodykite, ar juda objektas, kamera, ar fonas, ir aprašykite numatytą galutinę kompoziciją. Jei pateiktas pradinis vaizdas, įvardykite išsaugotinas objekto detales; jei naudojamas galutinis vaizdas, paaiškinkite perėjimą į jį. Judesio nustatymą laikykite kartu su aprašu peržiūrai.
Kadrą pateikite vieną kartą per /v1/videos ir išsaugokite grąžintą užklausos ID. Tikrinkite tos pačios operacijos būseną per /v1/videos/{request_id}, tada išsaugokite kiekvieną užbaigtą vaizdo rezultatą ir visą atsakymą. Visą veiksmą ir galutinę kompoziciją vertinkite pagal pateiktą medžiagą ir aprašą.
Ailoot Ultra · Video POST /v1/videos vidu-q1
vidu-q1Pradžia
Vidu Q1 kuria penkių sekundžių vaizdo įrašą su tekstu ir pasirenkamomis vaizdinėmis gairėmis. Ailoot suteikia kadro 1080p išvestį, kadravimą ir movement_amplitude parinktis.
- Leidžiamos įvestys
- Tekstas · Vaizdai
- Rezultatai
- Vaizdo įrašai
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Video POST /v1/videos
- Įvestis
text,image- Išvestis
video
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos vidu-q1 Sąlygos: Naudokite būtent šį Ailoot maršrutizavimo parinkiklį. | Numatyta— |
Laukasaspect_ratio | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 16:9, 1:1, 9:16 Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasduration | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos 5 Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasend_image | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasimage | Tipasstring or array<string> | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasprompt | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasresolution | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 1080p Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Laukasmovement_amplitude | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos auto, small, medium, large Sąlygos: Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. | Numatyta— |
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, prompt |
Parametrasoptional | Specifikacijaaspect_ratio, duration, end_image, image, resolution, movement_amplitude |
Parametrasmaterial_types | Specifikacijatext, image |
Parametrasconditions | SpecifikacijaNaudokite būtent šį Ailoot maršrutizavimo parinkiklį., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės., Naudokite dokumentuotą pasirinkto modelio lauką ir nurodytus pasirinkimus; neįtraukite neapibrėžtos pasirenkamos reikšmės. |
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/media/assets
GET /v1/media/assets/{asset_id}
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 kiekis | Mokestis |
|---|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Numatomas kiekis— | Apskaitos kiekis— | 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ūracijaUž užklausą | Įkainių lentelė— | Numatomas kiekis— | Apskaitos kiekisviena užklausa | Mokestis Įvestis · Įvertis tik palyginimui $0.8 už užklausą |
| KonfigūracijaNumatoma generavimo kaina | Įkainių lentelė— | Numatomas kiekisvieno generavimo įvertis | Apskaitos kiekis— | Mokestis Išvestis · Numatoma generavimo kaina · Įvertis tik palyginimui $0.8 į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 · 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
Gauti ir išsaugoti rezultatus
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}
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 visą atsakymą ir antraštes, pradinius identifikatorius, kiekvieną tikrą rezultatą ir visus naudojimo bei apskaitos laukus. Išsaugokite kiekvieną unikalų jums priklausantį išteklių ir visas į jį nukreiptas paskirtis.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite grąžintą viešą užduoties ar operacijos id ir visas antraštes. Skaitykite tik pradinės užduoties duomenis; unknown arba result_pending_check nesuteikia leidimo kurti dar kartą.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasid | Tipasstring |
Laukaspolling_url | Tipasstring |
Laukasprovider_task_id | Tipasstring |
Laukastask_id | Tipasstring |
Laukasstatus | Tipasstring |
Laukasvideo_url | Tipasstring |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaPrivalomas laukas, modelio parinkiklis, tipas arba įvesties pateikimo forma yra netinkami. | Kitas žingsnisPrieš rengdami atskirą užklausą, peržiūrėkite grąžintą išsamią patikros informaciją. |
Atsakymas | SąlygaPradinė užklausa arba rezultatas nežinomi arba juos reikia patikrinti. | Kitas žingsnisIšsaugokite pradinius identifikatorius ir antraštes; skaitykite tik palaikomus būsenos ar bibliotekos įrašus. Nesiųskite kūrimo užklausos dar kartą. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra vidu-q1
Metodų kelių pseudonimai
/v1/videos/generations
Susiję ID iškvietimui
FAQ · Vidu Q1
- Kokios įvestys ir rezultatai prieinami?
POST /v1/videos·vidu-q1:text,image→video- Kokius laukus naudoja užklausa?
POST /v1/videos·vidu-q1:model,aspect_ratio,duration,end_image,image,prompt,resolution,movement_amplitude