modely

happyhorse-1.1-i2v

Markdown · JSON

happyhorse-1.1-i2v

Model pro oživení obrázku: výchozí obrázek určuje první snímek a popis usměrňuje další pohyb. Vytváří krátké video s možností zvukového doprovodu.

O modelu

Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.

HappyHorse-1.1-I2V je model Alibaba, který začíná videoscénu hotovým obrázkem. Obrázek se stane prvním snímkem a text může určit následný děj: pohyb postavy, změny ve scéně a směr pohybu kamery. Hodí se k oživení ilustrace, produktové fotografie nebo předem připraveného vizuálního konceptu.

Textový popis je nepovinný. Pokud chybí, model sám odvodí možný pohyb z obsahu počátečního obrázku. Při výslovném zadání určuje vstupní obrázek kompozici a vzhled objektů, zatímco slova řídí vývoj scény v čase.

Od prvního snímku k pohybu

Alibaba zdůrazňuje zachování vzhledu postavy, vizuální konzistenci, plynulost pohybu a spojení obrazu se zvukem. Mezi deklarované vlastnosti patří také stálost nápisů a textur. Tyto vlastnosti vyjadřují záměr modelu a neznamenají doslovné zachování každého pixelu ve všech vygenerovaných snímcích.

V tomto režimu se používá jeden počáteční obrázek. Určuje výchozí scénu, nikoli soubor nezávislých vzorů pro novou kompozici. Možnost zadat samostatný závěrečný snímek pro tuto konkrétní verzi nebyla deklarována.

Přijímány jsou JPEG, JPG, PNG a WEBP. Každá strana vstupního obrázku musí mít alespoň 300 pixelů; povolený poměr stran je od 1:2,5 do 2,5:1 a velikost souboru do 20 MB. Poměr stran hotového videa odpovídá prvnímu snímku.

Parametry videa

Délka se volí jako celé číslo od 3 do 15 sekund. Dostupná jsou rozlišení 480P, 720P a 1080P; výstupním formátem je MP4 a snímková frekvence činí 24 snímků za sekundu. Podporováno je vytváření zvukového doprovodu spolu s obrazem videa.

Popis může být v libovolném jazyce a obsahovat až 5000 nečínských nebo 2500 čínských znaků. Při překročení limitu se přebytečná část zahodí, proto je vhodné popsat důležité děje a vlastnosti pohybu v mezích zadání. Stejná počáteční hodnota náhodného semínka může vést k podobným videím, ale nezaručuje jejich shodu snímek po snímku.

Ailoot · Tvorba videa POST /v1/videos/generations happyhorse-1.1-i2v

happyhorse-1.1-i2v

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

Úvod

Model pro oživení obrázku: výchozí obrázek určuje první snímek a popis usměrňuje další pohyb. Vytváří krátké video s možností zvukového doprovodu.

Přijímané vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-1.1-i2v
Výchozí—
PolepromptTypstringPožadavekVolitelnéHodnoty a limity
Minimální délka: 1
Výchozí—
PoledurationTypintegerPožadavekVolitelnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Výchozí5
PoleresolutionTypstringPožadavekVolitelnéHodnoty a limity
480P, 720P, 1080P
Výchozí720P
PoleratioTypstringPožadavekNepodporovánoHodnoty a limityVýchozí—
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekPovinnéHodnoty a limity
Minimální počet položek: 1
Maximální počet položek: 1
Maximální počet dekódovaných bajtů: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Výchozí—
Kombinace vstupních materiálů

first_frame_to_video · Povinné: image_urls

Parametry a životní cyklus metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, image_urls
Parametrmaterial_typesKontrakttext, image
ParametroptionalKontraktduration, resolution, ratio, prompt
Parametrduration_integer_rangeKontrakt3, 15
Parametrdefault_durationKontrakt5
ParametrresolutionKontrakt480P, 720P, 1080P
Parametrdefault_resolutionKontrakt720P
ParametrratioKontrakt
Parametrratio_must_omitKontrakttrue
Parametrimage_urlsKontrakt{"min_count":1,"max_count":1,"schemes":["https","rastrová data 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

Struktury metod a ID jsou přesné; schopnosti dodavatele jsou oddělené od připuštění požadavku.

Tarify

Sazby metod Ailoot

Ailoot Tvorba videaPOST /v1/videos/generations
Výstup
0,18 US$ za sekundu v 1080p
Výstup
0,07 US$ za sekundu v 480p
Výstup
0,14 US$ za sekundu v 720p

Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →

Příklady požadavků

Ailoot · Tvorba videa

Referenční obrázek
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URL:?Set the HTTPS URL of your actual first-frame image}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-1.1-i2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
u=os.environ["AILOOT_IMAGE_URL"]
z=urlsplit(u)
if z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Set the actual HTTPS image URL")
p["image_urls"]=[u]
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

Přijímání a ukládání výsledků

Ailoot · Tvorba 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
Ověřit stav úlohy
Získat stav pomocí GET
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žte všechny dokončené soubory
Získat všechny dokončené soubory pomocí GET
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
Další načtení obsahu
Získat obsah pomocí GET
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
Uchovejte všechny dokončené výsledky

Uložte každé dokončené video či vrácený soubor; stáhněte obsah každé skutečně vrácené URL souboru.

Zachovejte každou vrácenou datovou položku a index výstupu. content_url označuje pouze první; načtěte každou skutečnou cestu obsahu či soubor. GET obsahu bez indexu nepředstavuje všechny výstupy.

Pokud je nutné ověřit původní odpověď

Načítejte existující původní úlohu; odeslání s neznámým výsledkem nikdy neopakujte.

Pole odpovědi
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a další kroky
OdpověďPodmínkaDalší krok
Odpověď400 · invalid_request_errorPodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametruDalší krokPřed novým požadavkem na vytvoření opravte uvedená pole.
Odpověď409 · video_not_readyPodmínkaObsah původního výsledku zatím není dostupnýDalší krokDotazujte se na původní vrácené ID a dodržujte Retry-After.
Odpověďserver_errorPodmínkaVrácená odpověď uvádí, že operaci nebo výsledek je třeba zkontrolovatDalší krokUchovejte původní vrácené ID operace nebo úlohy, hlavičky požadavku a odpověď; pokračujte v podporovaném načítání údajů o této původní operaci. Požadavek na vytvoření znovu neodesílejte.

Aliasy

Aliasy modelu

Ailoot happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

Aliasy cest metod

Použijte cesty metod uvedené výše.

Související ID modelů

happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

Ailoot · Tvorba videa POST /v1/videos/generations happyhorse-i2v

happyhorse-i2v

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

Úvod

Model pro oživení obrázku: výchozí obrázek určuje první snímek a popis usměrňuje další pohyb. Vytváří krátké video s možností zvukového doprovodu.

Přijímané vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-i2v
Výchozí—
PolepromptTypstringPožadavekVolitelnéHodnoty a limity
Minimální délka: 1
Výchozí—
PoledurationTypintegerPožadavekVolitelnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Výchozí5
PoleresolutionTypstringPožadavekVolitelnéHodnoty a limity
480P, 720P, 1080P
Výchozí720P
PoleratioTypstringPožadavekNepodporovánoHodnoty a limityVýchozí—
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekPovinnéHodnoty a limity
Minimální počet položek: 1
Maximální počet položek: 1
Maximální počet dekódovaných bajtů: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Výchozí—
Kombinace vstupních materiálů

first_frame_to_video · Povinné: image_urls

Parametry a životní cyklus metody
ParametrKontrakt
Parametrmaterial_typesKontrakttext, image
ParametrrequiredKontraktnull
Parametroptional_controlsKontraktnull

Ž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

Struktury metod a ID jsou přesné; schopnosti dodavatele jsou oddělené od připuštění požadavku.

Tarify

Sazby metod Ailoot

Ailoot Tvorba videaPOST /v1/videos/generations
Výstup
0,18 US$ za sekundu v 1080p
Výstup
0,07 US$ za sekundu v 480p
Výstup
0,14 US$ za sekundu v 720p

Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →

Příklady požadavků

Ailoot · Tvorba videa

Referenční obrázek
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URL:?Set the HTTPS URL of your actual first-frame image}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-i2v", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
u=os.environ["AILOOT_IMAGE_URL"]
z=urlsplit(u)
if z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Set the actual HTTPS image URL")
p["image_urls"]=[u]
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

Přijímání a ukládání výsledků

Ailoot · Tvorba 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
Ověřit stav úlohy
Získat stav pomocí GET
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žte všechny dokončené soubory
Získat všechny dokončené soubory pomocí GET
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
Další načtení obsahu
Získat obsah pomocí GET
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
Uchovejte všechny dokončené výsledky

Uložte každé dokončené video či vrácený soubor; stáhněte obsah každé skutečně vrácené URL souboru.

Zachovejte každou vrácenou datovou položku a index výstupu. content_url označuje pouze první; načtěte každou skutečnou cestu obsahu či soubor. GET obsahu bez indexu nepředstavuje všechny výstupy.

Pokud je nutné ověřit původní odpověď

Načítejte existující původní úlohu; odeslání s neznámým výsledkem nikdy neopakujte.

Pole odpovědi
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a další kroky
OdpověďPodmínkaDalší krok
Odpověď400 · invalid_request_errorPodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametruDalší krokPřed novým požadavkem na vytvoření opravte uvedená pole.
Odpověď409 · video_not_readyPodmínkaObsah původního výsledku zatím není dostupnýDalší krokDotazujte se na původní vrácené ID a dodržujte Retry-After.
Odpověďserver_errorPodmínkaVrácená odpověď uvádí, že operaci nebo výsledek je třeba zkontrolovatDalší krokUchovejte původní vrácené ID operace nebo úlohy, hlavičky požadavku a odpověď; pokračujte v podporovaném načítání údajů o této původní operaci. Požadavek na vytvoření znovu neodesílejte.

Aliasy

Aliasy modelu

Ailoot happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

Aliasy cest metod

Použijte cesty metod uvedené výše.

Související ID modelů

happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

Ailoot · Tvorba videa POST /v1/videos/generations happyhorse-i2v-latest

happyhorse-i2v-latest

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

Úvod

Model pro oživení obrázku: výchozí obrázek určuje první snímek a popis usměrňuje další pohyb. Vytváří krátké video s možností zvukového doprovodu.

Přijímané vstupy
Text · Obrázky
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text, image
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-i2v-latest
Výchozí—
PolepromptTypstringPožadavekVolitelnéHodnoty a limity
Minimální délka: 1
Výchozí—
PoledurationTypintegerPožadavekVolitelnéHodnoty a limity
Minimum: 3
Maximum: 15
Jednotka: sekundy
Výchozí5
PoleresolutionTypstringPožadavekVolitelnéHodnoty a limity
480P, 720P, 1080P
Výchozí720P
PoleratioTypstringPožadavekNepodporovánoHodnoty a limityVýchozí—
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekPovinnéHodnoty a limity
Minimální počet položek: 1
Maximální počet položek: 1
Maximální počet dekódovaných bajtů: 20 971 520
Typy MIME: image/jpeg, image/png, image/webp
Výchozí—
Kombinace vstupních materiálů

first_frame_to_video · Povinné: image_urls

Parametry a životní cyklus metody
ParametrKontrakt
Parametrmaterial_typesKontrakttext, image
ParametrrequiredKontraktnull
Parametroptional_controlsKontraktnull

Ž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

Struktury metod a ID jsou přesné; schopnosti dodavatele jsou oddělené od připuštění požadavku.

Tarify

Sazby metod Ailoot

Ailoot Tvorba videaPOST /v1/videos/generations
Výstup
0,18 US$ za sekundu v 1080p
Výstup
0,07 US$ za sekundu v 480p
Výstup
0,14 US$ za sekundu v 720p

Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →

Příklady požadavků

Ailoot · Tvorba videa

Referenční obrázek
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_IMAGE_URL:?Set the HTTPS URL of your actual first-frame image}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-i2v-latest", "prompt": "The subject walks slowly toward the camera.", "duration": 5, "resolution": "720P"}')
from urllib.parse import urlsplit
u=os.environ["AILOOT_IMAGE_URL"]
z=urlsplit(u)
if z.scheme!="https" or not z.netloc or z.username or z.password:raise SystemExit("Set the actual HTTPS image URL")
p["image_urls"]=[u]
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

Přijímání a ukládání výsledků

Ailoot · Tvorba 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
Ověřit stav úlohy
Získat stav pomocí GET
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žte všechny dokončené soubory
Získat všechny dokončené soubory pomocí GET
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
Další načtení obsahu
Získat obsah pomocí GET
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
Uchovejte všechny dokončené výsledky

Uložte každé dokončené video či vrácený soubor; stáhněte obsah každé skutečně vrácené URL souboru.

Zachovejte každou vrácenou datovou položku a index výstupu. content_url označuje pouze první; načtěte každou skutečnou cestu obsahu či soubor. GET obsahu bez indexu nepředstavuje všechny výstupy.

Pokud je nutné ověřit původní odpověď

Načítejte existující původní úlohu; odeslání s neznámým výsledkem nikdy neopakujte.

Pole odpovědi
PoleTyp
PoleidTypstring
PoleobjectTypstring
PolemodelTypstring
PolestatusTypstring
Polecontent_urlTypsigned URL
Poledata[]Typsigned URL
PoleusageTypobject
Poleresult_pending_checkTypboolean
Chyby a další kroky
OdpověďPodmínkaDalší krok
Odpověď400 · invalid_request_errorPodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametruDalší krokPřed novým požadavkem na vytvoření opravte uvedená pole.
Odpověď409 · video_not_readyPodmínkaObsah původního výsledku zatím není dostupnýDalší krokDotazujte se na původní vrácené ID a dodržujte Retry-After.
Odpověďserver_errorPodmínkaVrácená odpověď uvádí, že operaci nebo výsledek je třeba zkontrolovatDalší krokUchovejte původní vrácené ID operace nebo úlohy, hlavičky požadavku a odpověď; pokračujte v podporovaném načítání údajů o této původní operaci. Požadavek na vytvoření znovu neodesílejte.

Aliasy

Aliasy modelu

Ailoot happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

Aliasy cest metod

Použijte cesty metod uvedené výše.

Související ID modelů

happyhorse-1.1-i2v, happyhorse-i2v, happyhorse-i2v-latest

FAQ · happyhorse-1.1-i2v
Jaké vstupy a výsledky jsou dostupné?

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

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

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

Jaká pole požadavek používá?

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

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

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

Jaké limity platí?

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

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

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

Další podrobnosti

Připojte Ailoot k Claude Code, OpenCode, Hermes nebo vlastní aplikaci.

Společnost a její portfolio projektů

Společnost a její portfolio projektů: miliony zákazníků; měsíční tržby v miliardách.

Nakupujte tokeny se slevou.

Sleva předplatného pro pravidelnou práci. Promo kódy až 50% na nákup tokenů.

Předplatné
Pro pravidelné požadavky vyberte tarif se slevou.
Promo kód až 50%
Při nákupu zadejte kód. Cena se přepočítá podle probíhající akce.
Výdaje v historii
U každého požadavku se uloží model, tokeny a částka.

Vybrat předplatné · Zobrazit ceny modelů

Připojte API k produktu, který prodáváte.

SaaS, aplikace a boti podle nabídky a licenční smlouvy Ailoot. Pro přeprodej požádejte o licenci přeprodejce.

Komerční aplikace
Začleňte generování textu, obrázků, videa a zvuku do placených funkcí své služby.
Licence pro přeprodejce
Pošlete popis projektu a způsob poskytování přístupu. Vyžádejte písemné podmínky použití a přeprodeje.
Dokumenty na webu
Nabídka, licenční smlouva a zásady zpracování dat jsou dostupné před připojením.

Požádat o licenci přeprodejce · Nabídka a licenční smlouva