MiniMax: Hailuo 02
Hailuo 02 vytvára video z textu alebo obrázka prvej snímky a podporuje dokumentovaný postup s prvou a poslednou snímkou. Príkazy kamery, optimalizácia promptu a voľby trvania a rozlíšenia podľa režimu pomáhajú vytvoriť zamýšľaný záber.
O modeli
Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.
Hailuo 02 je videomodel MiniMax pre scény vytvárané z textu, animovanie obrázkov a postup s prvou a poslednou snímkou. Písomné zadanie opisuje subjekt, dej a kameru, zatiaľ čo dodané obrázky snímok môžu určiť vizuálny východiskový bod alebo cieľ prechodu. Režim generovania vyberte podľa materiálu, ktorý už máte, a časti záberu, ktorú potrebujete ovládať.
Pri generovaní z textu opíšte ucelený dej so zrozumiteľným prostredím a uhlom pohľadu. Scéna môže napríklad ukazovať malú plachetnicu plávajúcu popri móle, zatiaľ čo ju kamera sleduje z brehu. Určite, čo sa pohybuje, ktoré detaily majú zostať viditeľné a ako sa záber končí. Zadanie sústreďte na pozorovateľné udalosti namiesto zoznamu nesúvisiacich vizuálnych vlastností.
Pri generovaní z obrázka pripravte prvú snímku s už určeným subjektom a kompozíciou záberu. Výrobca prijíma obrázky JPG, JPEG, PNG a WebP menšie než 20 MB, s kratšou stranou väčšou než 300 pixelov a pomerom strán od 2:5 do 5:2. Použite obrázok, na ktorom sú viditeľné dôležité obrysy a črty, a potom opíšte pohyb, ktorý sa má z neho rozvinúť.
Hailuo 02 má aj dokumentovaný režim prvej a poslednej snímky. Dva obrázky pripravte ako zamýšľaný úvodný a záverečný stav jednej sekvencie a opíšte pohyb scény medzi nimi. Prvá snímka určuje kompozíciu záberu; výrobca uvádza, že posledná snímka s odlišnou veľkosťou sa oreže tak, aby jej zodpovedala. Kompozíciu obrázkov zlaďte vopred, ak subjekt musí zostať viditeľný počas celého prechodu.
Prompt môže obsahovať najviac 2 000 znakov. Hailuo 02 podporuje príkazy kamery v zátvorkách vrátane push, pull, truck, pan, pedestal, tilt, zoom, tracking a statického záberu. Príkazy vložené spoločne do jednej zátvorky požadujú súčasný pohyb; príkazy na rôznych miestach opisu požadujú sekvenciu. Výrobca odporúča kombinovať najviac tri pohyby, preto vyberte pohyb kamery, ktorý uľahčí čitateľnosť subjektu.
Trvanie a rozlíšenie sú viazané na režim. Pri generovaní z textu je dokumentovaných šesť alebo desať sekúnd v 768P a šesť sekúnd v 1080P. Generovanie z obrázka navyše dokumentuje 512P na šesť alebo desať sekúnd. Postup s prvou a poslednou snímkou dokumentuje 768P na šesť alebo desať sekúnd a 1080P na šesť sekúnd. Pre záber vyberte podporovanú kombináciu namiesto prenášania možností rozlíšenia jedného režimu na všetky ostatné režimy.
Automatická optimalizácia promptu je dokumentovaný ovládací prvok a v postupe výrobcu je predvolene zapnutá. Pri porovnávaní verzií uchovajte jej nastavenie, pretože prepísané zadanie mení to, čo model dostane. Presný text, referenčné snímky a vybrané výstupné nastavenia uchovajte spolu s generovaným klipom, aby sa úprava mohla zamerať na dej alebo kompozíciu záberu, ktoré treba zlepšiť.
Skontrolujte celú dokončenú sekvenciu: úvodnú kompozíciu, kontinuitu subjektu, načasovanie deja a záverečnú snímku. Pri prechode skontrolujte obe krajné snímky aj pohyb medzi nimi. Skutočné video uložte na strih spolu s promptom a referenciami; ďalšou úpravou riešte konkrétny vizuálny problém, napríklad zakrytý detail, prudký pohyb kamery alebo príliš skoré zakončenie.
Ailoot Ultra · Generovanie videa POST /v1/videos minimaxi-hailuo-02
minimaxi-hailuo-02Úvod
Hailuo 02 vytvára video z textu alebo obrázka prvej snímky a podporuje dokumentovaný postup s prvou a poslednou snímkou. Príkazy kamery, optimalizácia promptu a voľby trvania a rozlíšenia podľa režimu pomáhajú vytvoriť zamýšľaný záber.
- Povolené vstupy
- Text · Obrázky
- Výsledky
- Video
Dostupné v Ailoot · vstupy a metódy
Ailoot Ultra · Generovanie videa POST /v1/videos
- Vstup
text,image- Výstup
video
| Pole | Typ | Požiadavka | Hodnoty a limity | Predvolené |
|---|---|---|---|---|
Polemodel | Typstring | PožiadavkaPovinné | Hodnoty a limity minimaxi-hailuo-02 Podmienky: Použite presný volič modelu Ailoot. | Predvolené— |
Poleprompt | Typstring | PožiadavkaPovinné | Hodnoty a limity Podmienky: Opíšte scénu a pohyb. | Predvolené— |
Poleduration | Typinteger | PožiadavkaVoliteľné | Hodnoty a limity 6, 10 Podmienky: Odošlite jednu z uvedených hodnôt dĺžky; neuvádza sa žiadna predvolená hodnota. | Predvolené— |
Poleend_image | Typstring | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Koncová snímka sa používa iba v podporovanom režime obrazového vstupu. | Predvolené— |
Poleimage | Typstring or array<string> | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Použite skutočnú verejne dostupnú URL obrázka alebo reťazec obrázka v base64; neuvádza sa tu žiadny maximálny počet obrázkov. | Predvolené— |
Poleresolution | Typstring | PožiadavkaVoliteľné | Hodnoty a limity 512P, 768P, 1080P Podmienky: Odošlite jednu z uvedených hodnôt rozlíšenia; neuvádza sa žiadna predvolená hodnota. | Predvolené— |
Parametre a životný cyklus metódy
| Parameter | Špecifikácia |
|---|---|
Parametercontent_type | Špecifikáciaapplication/json |
Parameterrequired | Špecifikáciamodel, prompt |
Parameteroptional | Špecifikáciaduration, end_image, image, resolution |
Parametermaterial_types | Špecifikáciatext, image |
Parameterconditions | ŠpecifikáciaPoužite presný volič modelu Ailoot., Opíšte scénu a pohyb., Odošlite jednu z uvedených hodnôt dĺžky; neuvádza sa žiadna predvolená hodnota., Koncová snímka sa používa iba v podporovanom režime obrazového vstupu., Použite skutočnú verejne dostupnú URL obrázka alebo reťazec obrázka v base64; neuvádza sa tu žiadny maximálny počet obrázkov., Odošlite jednu z uvedených hodnôt rozlíšenia; neuvádza sa žiadna predvolená hodnota. |
Aliasy metódy: /v1/videos/generations
Životný cyklus: 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}
Cenník
Ako sa vypočíta konečný poplatok
Zobrazené sadzby slúžia na odhad nákladov pred generovaním. Konečný poplatok sa vypočíta z nákladov zaznamenaných pri pôvodnom generovaní. Namerané trvanie výstupu a predpokladané množstvá nepredstavujú konečné účtované množstvo.
Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.
- Rýchly režim
- Neuvedené Keď je zvolený rýchly režim
- Režim Flex
- Neuvedené Keď je zvolený režim flex
- Maximálna úroveň uvažovania
- Neuvedené Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)
Odhadované sadzby na porovnanie
Ceny podľa konfigurácie
Každý poplatok priraďte k zobrazeným podmienkam. Pre každú skupinu alternatívnych konfigurácií použite jednu sadzbu.
| Konfigurácia | Sadzobník | Odhadované množstvo | Poplatok |
|---|---|---|---|
| KonfiguráciaZákladné sadzby za tokeny | SadzobníkZákladná sadzba | Odhadované množstvo— | Poplatok Vstup · Vstupné tokeny · Odhad iba na porovnanie — / 1K tokenov Výstup · Výstupné tokeny · Odhad iba na porovnanie — / 1K tokenov Vstup · Čítanie cache · Odhad iba na porovnanie — / 1K tokenov Vstup · Zápis do cache · Odhad iba na porovnanie — / 1K tokenov Vstup · Zápis do cache, 1 hod · Odhad iba na porovnanie — / 1K tokenov |
| KonfiguráciaOdhadované náklady na generovanie | Sadzobník— | Odhadované množstvoodhad pre jedno generovanie | Poplatok Výstup · Odhadované náklady na generovanie · Odhad iba na porovnanie $0.2 odhad pred generovaním Tento odhad nepredstavuje dodatočný poplatok ani pevnú sadzbu za dokončené generovanie. |
Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →
Príklady požiadaviek
Ailoot Ultra · Generovanie videa
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON'
{
"model": "minimaxi-hailuo-02",
"prompt": "A cat is walking on grass."
}
JSON
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
# Create once; retain id, polling_url, original task identifiers and every 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
Prijať a uložiť výsledky
Ailoot Ultra · Generovanie videa
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}
Uchovať všetky dokončené výsledky
Uložte každé dokončené video alebo vrátený súbor; načítajte obsah každej skutočne vrátenej URL podkladu.
Zachovajte celú odpoveď a hlavičky, pôvodné identifikátory, každý skutočný výstup a všetky polia spotreby a účtovania. Uložte každý jedinečný súbor vo vašom vlastníctve a zachovajte každú rolu, ktorá naň odkazuje.
Ak treba overiť pôvodnú odpoveď
Zachovajte vrátené verejné id úlohy alebo operácie a všetky hlavičky. Načítavajte iba pôvodnú úlohu; unknown ani result_pending_check neoprávňujú na ďalšie vytvorenie.
Polia odpovede
| Pole | Typ |
|---|---|
Poleid | Typstring |
Polepolling_url | Typstring |
Poleprovider_task_id | Typstring |
Poletask_id | Typstring |
Polestatus | Typstring |
Polevideo_url | Typstring |
Aliasy
Aliasy modelov
Ailoot Ultra minimaxi-hailuo-02
Aliasy ciest metód
/v1/videos/generations
Súvisiace ID na volanie
FAQ · MiniMax: Hailuo 02
- Aké vstupy a výsledky sú dostupné?
POST /v1/videos·minimaxi-hailuo-02:text,image→video- Aké polia používa požiadavka?
POST /v1/videos·minimaxi-hailuo-02:model,prompt,duration,end_image,image,resolution