Vidu Q1
A Vidu Q1 ötmásodperces videót készít szöveggel és opcionális képi irányítással. Az Ailoot 1080p kimenetet, képkivágást és movement_amplitude lehetőségeket kínál a felvételhez.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
Használd a vidu-q1 modellt model és prompt mezővel a /v1/videos végponton. Ez a kérés ötmásodperces időtartamot és 1080p felbontást biztosít. Válassz 16:9, 1:1 vagy 9:16 aspect_ratio értéket, a movement_amplitude pedig auto, small, medium vagy large lehet. Image és end_image mező is rendelkezésre áll.
A mozgásleírást rövid, látható cselekvéshez igazítsd. Nevezd meg, hogy a mozgás a témához, a kamerához vagy a háttérhez tartozik-e, és írd le a kívánt végső kompozíciót. Ha kezdőképet adsz meg, nevezd meg a téma megőrzendő részleteit; zárókép használatakor magyarázd el az abba vezető átmenetet. Az ellenőrzéshez tartsd meg a mozgásbeállítást a feladatleírással együtt.
A felvételt egyszer küldd be a /v1/videos végponton, és őrizd meg a visszaadott kérésazonosítót. Ugyanannak a műveletnek kérdezd le az állapotát a /v1/videos/{request_id} végponton, majd ments el minden elkészült videókimenetet és a teljes választ. Ellenőrizd a teljes cselekményt és a végső kompozíciót a megadott anyag és feladatleírás alapján.
Ailoot Ultra · Video POST /v1/videos vidu-q1
vidu-q1Kezdő lépések
A Vidu Q1 ötmásodperces videót készít szöveggel és opcionális képi irányítással. Az Ailoot 1080p kimenetet, képkivágást és movement_amplitude lehetőségeket kínál a felvételhez.
- Elfogadott bemenetek
- Szöveg · Képek
- Eredmények
- Videó
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Video POST /v1/videos
- Bemenet
text,image- Kimenet
video
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok vidu-q1 Feltételek: Pontosan ezt az Ailoot-útválasztási azonosítót használja. | Alapértelmezett— |
Mezőaspect_ratio | Típusstring | KövetelményOpcionális | Értékek és korlátok 16:9, 1:1, 9:16 Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Meződuration | Típusinteger | KövetelményOpcionális | Értékek és korlátok 5 Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Mezőend_image | Típusstring | KövetelményOpcionális | Értékek és korlátok Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Mezőimage | Típusstring or array<string> | KövetelményOpcionális | Értékek és korlátok Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Mezőprompt | Típusstring | KövetelményKötelező | Értékek és korlátok Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Mezőresolution | Típusstring | KövetelményOpcionális | Értékek és korlátok 1080p Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Mezőmovement_amplitude | Típusstring | KövetelményOpcionális | Értékek és korlátok auto, small, medium, large Feltételek: Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. | Alapértelmezett— |
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésmodel, prompt |
Paraméteroptional | Szerződésaspect_ratio, duration, end_image, image, resolution, movement_amplitude |
Paramétermaterial_types | Szerződéstext, image |
Paraméterconditions | SzerződésPontosan ezt az Ailoot-útválasztási azonosítót használja., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki., Használja a kiválasztott modell dokumentált mezőjét és felsorolt értékeit; a meg nem adott választható értéket hagyja ki. |
Metódus álnevei: /v1/videos/generations
Életciklus: 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}
Díjcsomagok
A végső díj számítása
A megjelenített díjtételek a generálás előtti költségbecsléshez szolgálnak. A végleges díj az eredeti generáláshoz rögzített költségből számítódik. A kimenet mért időtartama és az előre jelzett mennyiségek nem azonosak a véglegesen elszámolandó mennyiséggel.
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Becsült díjak összehasonlításhoz
Árak beállításonként
Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.
| Beállítás | Díjtáblázat | Előre jelzett mennyiség | Elszámolási mennyiség | Díj |
|---|---|---|---|---|
| BeállításTokenek alapdíjai | DíjtáblázatAlapdíj | Előre jelzett mennyiség— | Elszámolási mennyiség— | Díj Bemenet · Bemeneti tokenek · Becslés, csak összehasonlításra — / 1K token Kimenet · Kimeneti tokenek · Becslés, csak összehasonlításra — / 1K token Bemenet · Gyorsítótár olvasása · Becslés, csak összehasonlításra — / 1K token Bemenet · Írás a gyorsítótárba · Becslés, csak összehasonlításra — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra · Becslés, csak összehasonlításra — / 1K token |
| BeállításKérésenként | Díjtáblázat— | Előre jelzett mennyiség— | Elszámolási mennyiségegy kérés | Díj Bemenet · Becslés, csak összehasonlításra $0.8 kérésenként |
| BeállításA generálás becsült költsége | Díjtáblázat— | Előre jelzett mennyiségbecslés egy generálásra | Elszámolási mennyiség— | Díj Kimenet · Becsült generálási költség · Becslés, csak összehasonlításra $0.8 becslés a generálás előtt Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra. |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
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
Eredmények fogadása és mentése
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}
Őrizzen meg minden elkészült eredményt
Mentsen minden elkészült videót és visszaadott fájlt; töltse le az összes ténylegesen visszaadott médiafájl URL-jének tartalmát.
Őrizze meg a teljes választ és fejléceit, az eredeti azonosítókat, az összes tényleges kimenetet és minden felhasználási, illetve elszámolási mezőt. Mentsen el minden egyedi saját médiaállományt, és őrizzen meg minden rá mutató szerepet.
Ha az eredeti választ ellenőrizni kell
Őrizze meg a visszaadott nyilvános feladat- vagy műveletazonosítót és az összes fejlécet. Csak az eredeti feladatot kérdezze le; az unknown vagy result_pending_check nem jogosít fel újabb létrehozásra.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőid | Típusstring |
Mezőpolling_url | Típusstring |
Mezőprovider_task_id | Típusstring |
Mezőtask_id | Típusstring |
Mezőstatus | Típusstring |
Mezővideo_url | Típusstring |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételEgy kötelező mező, modellválasztó, típus vagy bemeneti ábrázolási forma érvénytelen. | Következő lépésKülön kérés előkészítése előtt vizsgálja meg a visszaadott érvényesítési részleteket. |
Válasz | FeltételAz eredeti kérés vagy eredmény ismeretlen, vagy ellenőrzést igényel. | Következő lépésŐrizze meg az eredeti azonosítókat és fejléceket; csak a támogatott állapot- és médiatárbejegyzéseket olvassa le. Ne küldje el újra a létrehozási kérelmet. |
Álnevek
Modell álnevei
Ailoot Ultra vidu-q1
Metódusútvonalak álnevei
/v1/videos/generations
Kapcsolódó modellazonosítók
FAQ · Vidu Q1
- Milyen bemenetek és eredmények érhetők el?
POST /v1/videos·vidu-q1:text,image→video- Mely mezőket használja a kérés?
POST /v1/videos·vidu-q1:model,aspect_ratio,duration,end_image,image,prompt,resolution,movement_amplitude