modely

happyhorse-1.1-r2v

Markdown · JSON

happyhorse-1.1-r2v

Model na generovanie videa z referenčných obrázkov a textového scenára. Pomáha zachovať vzhľad postáv, predmety a vizuálny štýl v novej scéne.

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.

HappyHorse-1.1-R2V vytvára novú videoscénu z referenčných obrázkov a textového zadania. Alibaba zameriava model na zachovanie rozpoznateľných postáv, objektov a vizuálneho štýlu pri generovaní pohybu. Referencie určujú obsah a vzhľad scény, kým text opisuje, ako majú tieto prvky navzájom pôsobiť.

Úlohy vizuálnych vzorov

Možno použiť jeden až deväť obrázkov. Môžu určovať postavu, predmet, prostredie alebo výtvarné spracovanie. V opise možno uviesť číslo referencie a konkrétny objekt na nej, aby sa vizuálny materiál spojil s požadovanou časťou diania. To je zvlášť užitočné, keď treba prvky viacerých obrázkov spojiť do jednej kompozície.

Na rozdiel od režimu s úvodným záberom tu referencie slúžia ako oporné body pre obsah novej scény. Textové zadanie je povinné: prepája vzhľad objektov s dianím, pohybom kamery a celkovou réžiou. Výrobca zdôrazňuje vizuálnu súdržnosť a filmový pohyb; výsledok zostáva generovaným obsahom, nie montážou vstupných obrázkov.

Prijímajú sa JPEG, JPG, PNG a WEBP s veľkosťou do 20 MB každý. Kratšia strana obrázka musí mať aspoň 400 pixelov; odporúčajú sa materiály na úrovni 720P alebo vyššej. Vstup tohto režimu tvoria práve obrázky a text.

Dĺžka, formát záberu a zvuk

Výsledok sa ukladá do MP4 so snímkovou frekvenciou 24 snímok za sekundu. Dĺžka sa zadáva ako celé číslo od 3 do 15 sekúnd. Rozlíšenie možno vybrať z 480P, 720P a 1080P; podporované je generovanie zvukového sprievodu.

Dostupné sú horizontálne, vertikálne a štvorcové zábery: 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 a 21:9. Výber formátu pomáha vopred určiť kompozičný priestor novej scény.

Text môže byť v ľubovoľnom jazyku. Limit je 5000 nečínskych alebo 2500 čínskych znakov; nadbytočná časť sa odstráni. Najdôležitejšie úlohy referencií, dianie a pohyb sa musia zmestiť do tohto rozsahu. Počiatočná hodnota generátora náhodnosti môže usmerňovať podobnosť variantov, nezaručuje však presné zopakovanie jedného videa.

Ailoot · Generovanie videa POST /v1/videos/generations happyhorse-1.1-r2v

happyhorse-1.1-r2v

Alibaba /happyhorse-1.1-r2v
ID modelu
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Úvod

Model na generovanie videa z referenčných obrázkov a textového scenára. Pomáha zachovať vzhľad postáv, predmety a vizuálny štýl v novej scéne.

Povolené vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metódy

Ailoot · Generovanie videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupný formát
mp4
PoleTypPožiadavkaHodnoty a limityPredvolené
PolemodelTypstringPožiadavkaPovinnéHodnoty a limity
happyhorse-1.1-r2v
Predvolené—
PolepromptTypstringPožiadavkaPovinnéHodnoty a limity
Minimálna dĺžka: 1
Predvolené—
PoledurationTypintegerPožiadavkaVoliteľnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Predvolené5
PoleresolutionTypstringPožiadavkaVoliteľnéHodnoty a limity
480P, 720P, 1080P
Predvolené720P
PoleratioTypstringPožiadavkaVoliteľnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Predvolené16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožiadavkaPovinnéHodnoty a limity
Minimálny počet položiek: 1
Maximálny počet položiek: 9
Maximálny počet dekódovaných bajtov: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Predvolené—
Kombinácie vstupných podkladov

reference_images_to_video · Povinné: prompt, image_urls

Parametre a životný cyklus metódy
ParameterŠpecifikácia
Parametercontent_typeŠpecifikáciaapplication/json
ParameterrequiredŠpecifikáciamodel, prompt, image_urls
Parametermaterial_typesŠpecifikáciatext, image
ParameteroptionalŠpecifikáciaduration, resolution, ratio
Parameterduration_integer_rangeŠpecifikácia3, 15
Parameterdefault_durationŠpecifikácia5
ParameterresolutionŠpecifikácia480P, 720P, 1080P
Parameterdefault_resolutionŠpecifikácia720P
ParameterratioŠpecifikácia16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Parameterratio_must_omitŠpecifikáciafalse
Parameterimage_urlsŠpecifikácia{"min_count":1,"max_count":9,"schemes":["https","rastrové dáta v base64"],"max_data_image_bytes":20971520}

Ž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/videos/generations/{request_id}/content

Štruktúry metód a ID sú presné; možnosti dodávateľa sa posudzujú oddelene od prijatia požiadavky.

Cenník

Sadzby metód Ailoot

Ailoot Generovanie videaPOST /v1/videos/generations
Výstup
0,18 USD za sekundu pri 1080p
Výstup
0,07 USD za sekundu pri 480p
Výstup
0,14 USD za sekundu pri 720p

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 · Generovanie videa

Referenčný obrázok
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-1.1-r2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
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/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prijať a uložiť výsledky

Ailoot · Generovanie videa

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Skontrolovať stav úlohy
GET stav
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Uložiť všetky dokončené podklady
GET všetky dokončené podklady
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Čítanie ďalšieho obsahu
GET obsah
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
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 každú vrátenú dátovú položku a index výstupu. content_url odkazuje iba na prvý výstup; načítajte každú skutočnú cestu obsahu alebo súbor. GET obsahu bez parametra index nevracia všetky výstupy.

Ak treba overiť pôvodnú odpoveď

Načítajte existujúcu pôvodnú úlohu; odoslanie s neznámym výsledkom nikdy neopakujte.

Polia odpovede
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a ďalšie kroky
OdpoveďPodmienkaĎalší krok
Odpoveď400 · invalid_request_errorPodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametraĎalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia.
Odpoveď409 · video_not_readyPodmienkaPôvodný obsah výsledku zatiaľ nie je dostupnýĎalší krokPriebežne zisťujte stav pomocou pôvodne vráteného ID a rešpektujte Retry-After.
Odpoveďserver_errorPodmienkaVrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovaťĎalší krokUchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.

Aliasy

Aliasy modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Aliasy ciest metód

Použite cesty metód uvedené vyššie.

Súvisiace ID na volanie

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Ailoot · Generovanie videa POST /v1/videos/generations happyhorse-r2v

happyhorse-r2v

Alibaba /happyhorse-r2v
ID modelu
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Úvod

Model na generovanie videa z referenčných obrázkov a textového scenára. Pomáha zachovať vzhľad postáv, predmety a vizuálny štýl v novej scéne.

Povolené vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metódy

Ailoot · Generovanie videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupný formát
mp4
PoleTypPožiadavkaHodnoty a limityPredvolené
PolemodelTypstringPožiadavkaPovinnéHodnoty a limity
happyhorse-r2v
Predvolené—
PolepromptTypstringPožiadavkaPovinnéHodnoty a limity
Minimálna dĺžka: 1
Predvolené—
PoledurationTypintegerPožiadavkaVoliteľnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Predvolené5
PoleresolutionTypstringPožiadavkaVoliteľnéHodnoty a limity
480P, 720P, 1080P
Predvolené720P
PoleratioTypstringPožiadavkaVoliteľnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Predvolené16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožiadavkaPovinnéHodnoty a limity
Minimálny počet položiek: 1
Maximálny počet položiek: 9
Maximálny počet dekódovaných bajtov: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Predvolené—
Kombinácie vstupných podkladov

reference_images_to_video · Povinné: prompt, image_urls

Parametre a životný cyklus metódy
ParameterŠpecifikácia
Parametermaterial_typesŠpecifikáciatext, image
ParameterrequiredŠpecifikácianull
Parameteroptional_controlsŠpecifikácianull

Ž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/videos/generations/{request_id}/content

Štruktúry metód a ID sú presné; možnosti dodávateľa sa posudzujú oddelene od prijatia požiadavky.

Cenník

Sadzby metód Ailoot

Ailoot Generovanie videaPOST /v1/videos/generations
Výstup
0,18 USD za sekundu pri 1080p
Výstup
0,07 USD za sekundu pri 480p
Výstup
0,14 USD za sekundu pri 720p

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 · Generovanie videa

Referenčný obrázok
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-r2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
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/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prijať a uložiť výsledky

Ailoot · Generovanie videa

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Skontrolovať stav úlohy
GET stav
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Uložiť všetky dokončené podklady
GET všetky dokončené podklady
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Čítanie ďalšieho obsahu
GET obsah
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
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 každú vrátenú dátovú položku a index výstupu. content_url odkazuje iba na prvý výstup; načítajte každú skutočnú cestu obsahu alebo súbor. GET obsahu bez parametra index nevracia všetky výstupy.

Ak treba overiť pôvodnú odpoveď

Načítajte existujúcu pôvodnú úlohu; odoslanie s neznámym výsledkom nikdy neopakujte.

Polia odpovede
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a ďalšie kroky
OdpoveďPodmienkaĎalší krok
Odpoveď400 · invalid_request_errorPodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametraĎalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia.
Odpoveď409 · video_not_readyPodmienkaPôvodný obsah výsledku zatiaľ nie je dostupnýĎalší krokPriebežne zisťujte stav pomocou pôvodne vráteného ID a rešpektujte Retry-After.
Odpoveďserver_errorPodmienkaVrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovaťĎalší krokUchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.

Aliasy

Aliasy modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Aliasy ciest metód

Použite cesty metód uvedené vyššie.

Súvisiace ID na volanie

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Ailoot · Generovanie videa POST /v1/videos/generations happyhorse-r2v-latest

happyhorse-r2v-latest

Alibaba /happyhorse-r2v-latest
ID modelu
  • happyhorse-1.1-r2v
  • happyhorse-r2v
  • happyhorse-r2v-latest

Úvod

Model na generovanie videa z referenčných obrázkov a textového scenára. Pomáha zachovať vzhľad postáv, predmety a vizuálny štýl v novej scéne.

Povolené vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metódy

Ailoot · Generovanie videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupný formát
mp4
PoleTypPožiadavkaHodnoty a limityPredvolené
PolemodelTypstringPožiadavkaPovinnéHodnoty a limity
happyhorse-r2v-latest
Predvolené—
PolepromptTypstringPožiadavkaPovinnéHodnoty a limity
Minimálna dĺžka: 1
Predvolené—
PoledurationTypintegerPožiadavkaVoliteľnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Predvolené5
PoleresolutionTypstringPožiadavkaVoliteľnéHodnoty a limity
480P, 720P, 1080P
Predvolené720P
PoleratioTypstringPožiadavkaVoliteľnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Predvolené16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožiadavkaPovinnéHodnoty a limity
Minimálny počet položiek: 1
Maximálny počet položiek: 9
Maximálny počet dekódovaných bajtov: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Predvolené—
Kombinácie vstupných podkladov

reference_images_to_video · Povinné: prompt, image_urls

Parametre a životný cyklus metódy
ParameterŠpecifikácia
Parametermaterial_typesŠpecifikáciatext, image
ParameterrequiredŠpecifikácianull
Parameteroptional_controlsŠpecifikácianull

Ž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/videos/generations/{request_id}/content

Štruktúry metód a ID sú presné; možnosti dodávateľa sa posudzujú oddelene od prijatia požiadavky.

Cenník

Sadzby metód Ailoot

Ailoot Generovanie videaPOST /v1/videos/generations
Výstup
0,18 USD za sekundu pri 1080p
Výstup
0,07 USD za sekundu pri 480p
Výstup
0,14 USD za sekundu pri 720p

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 · Generovanie videa

Referenčný obrázok
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URLS_FILE:?Set a JSON file containing your actual reference-image URLs}"
export AILOOT_IMAGE_URLS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-r2v-latest", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
f=Path(os.environ["AILOOT_IMAGE_URLS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual reference URL JSON file")
urls=json.loads(f.read_text())
if not isinstance(urls,list) or not 1<=len(urls)<=9:raise SystemExit("Provide one to nine reference-image URLs")
for u in urls:
    z=urlsplit(u) if isinstance(u,str) else None
    if not z or z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Each reference must be an actual HTTPS image URL")
p["image_urls"]=urls
p["ratio"]="16:9"
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/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
print(json.dumps(r))
PY_RESULT

Prijať a uložiť výsledky

Ailoot · Generovanie videa

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Skontrolovať stav úlohy
GET stav
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o status.json
python3 - <<'PY_STATUS'
import json
from pathlib import Path
r=json.loads(Path("status.json").read_text())
print(json.dumps(r))
if r.get("status")=="completed":
    for x in r.get("data",[]):print(x)
PY_STATUS
Uložiť všetky dokončené podklady
GET všetky dokončené podklady
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_STATUS_FILE:?Set the actual completed status JSON file}"
export AILOOT_STATUS_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
from urllib.parse import urlsplit,urljoin
f=Path(os.environ["AILOOT_STATUS_FILE"])
if not f.is_file():raise SystemExit("Choose the actual completed status file")
r=json.loads(f.read_text())
if r.get("status")!="completed" or not isinstance(r.get("data"),list) or not r["data"]:raise SystemExit("Wait for a completed status with asset paths")
urls=[]
for x in r["data"]:
    if not isinstance(x,str) or "\n" in x or "\r" in x:raise SystemExit("Invalid asset path")
    u=urljoin("https://api.ailoot.ai",x)
    z=urlsplit(u)
    if z.scheme!="https" or z.netloc!="api.ailoot.ai" or z.username or z.password:raise SystemExit("Use the actual Ailoot asset paths from status")
    urls.append(u)
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_REQUEST
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" \
    -H "Authorization: Bearer $AILOOT_API_KEY" -o "video-${index}.mp4"
  index=$((index + 1))
done < asset-urls.txt
Čítanie ďalšieho obsahu
GET obsah
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_OPERATION_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_OPERATION_ID
operation_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_OPERATION_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/videos/generations/$operation_id/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video.mp4
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 každú vrátenú dátovú položku a index výstupu. content_url odkazuje iba na prvý výstup; načítajte každú skutočnú cestu obsahu alebo súbor. GET obsahu bez parametra index nevracia všetky výstupy.

Ak treba overiť pôvodnú odpoveď

Načítajte existujúcu pôvodnú úlohu; odoslanie s neznámym výsledkom nikdy neopakujte.

Polia odpovede
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a ďalšie kroky
OdpoveďPodmienkaĎalší krok
Odpoveď400 · invalid_request_errorPodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametraĎalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia.
Odpoveď409 · video_not_readyPodmienkaPôvodný obsah výsledku zatiaľ nie je dostupnýĎalší krokPriebežne zisťujte stav pomocou pôvodne vráteného ID a rešpektujte Retry-After.
Odpoveďserver_errorPodmienkaVrátená odpoveď uvádza, že operáciu alebo výsledok je potrebné skontrolovaťĎalší krokUchovajte pôvodné vrátené ID operácie/úlohy, hlavičky požiadavky a odpoveď; naďalej čítajte údaje o tejto pôvodnej operácii podporovaným spôsobom. Požiadavku na vytvorenie znova neodosielajte.

Aliasy

Aliasy modelov

Ailoot happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

Aliasy ciest metód

Použite cesty metód uvedené vyššie.

Súvisiace ID na volanie

happyhorse-1.1-r2v, happyhorse-r2v, happyhorse-r2v-latest

FAQ · happyhorse-1.1-r2v
Aké vstupy a výsledky sú dostupné?

POST /v1/videos/generations · happyhorse-1.1-r2v: text, image → video

POST /v1/videos/generations · happyhorse-r2v: text, image → video

POST /v1/videos/generations · happyhorse-r2v-latest: text, image → video

Aké polia používa požiadavka?

POST /v1/videos/generations · happyhorse-1.1-r2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-r2v: model, prompt, duration, resolution, ratio, image_urls

POST /v1/videos/generations · happyhorse-r2v-latest: model, prompt, duration, resolution, ratio, image_urls

Aké limity platia?

POST /v1/videos/generations · happyhorse-1.1-r2v: duration.minimum: 3; duration.maximum: 15

POST /v1/videos/generations · happyhorse-r2v: duration.minimum: 3; duration.maximum: 15

POST /v1/videos/generations · happyhorse-r2v-latest: duration.minimum: 3; duration.maximum: 15

Viac podrobností

Pripojte Ailoot k Claude Code, OpenCode, Hermes alebo vlastnej aplikácii.

Spoločnosť a jej portfólio projektov

Spoločnosť a jej portfólio projektov: milióny zákazníkov; mesačné tržby v miliardách.

Nakupujte tokeny so zľavou.

Zľava predplatného na pravidelnú prácu. Promo kódy až 50% na nákup tokenov.

Predplatné
Na pravidelné požiadavky vyberte tarifu so zľavou.
Promo kód až 50%
Pri nákupe zadajte kód. Cena sa prepočíta podľa prebiehajúcej akcie.
Výdavky v histórii
Pri každej požiadavke sa uloží model, tokeny a suma.

Vybrať predplatné · Zobraziť ceny modelov

Pripojte API k produktu, ktorý predávate.

SaaS, aplikácie a boti podľa ponuky a licenčnej zmluvy Ailoot. Na ďalší predaj požiadajte o licenciu predajcu.

Komerčná aplikácia
Začleňte generovanie textu, obrázkov, videa a zvuku do platených funkcií svojej služby.
Licencia pre predajcu
Pošlite popis projektu a spôsob poskytovania prístupu. Vyžiadajte písomné podmienky použitia a ďalšieho predaja.
Dokumenty na webe
Ponuka, licenčná zmluva a zásady spracovania dát sú dostupné pred pripojením.

Požiadať o licenciu predajcu · Ponuka a licenčná zmluva