modely

happyhorse-1.1-t2v

Markdown · JSON

happyhorse-1.1-t2v

Model pro vytváření krátkého videa se zvukem z textového popisu. Hodí se pro scény, v nichž se pohyb, kompozice a vizuální styl zadávají slovy.

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-T2V je model Alibaba pro vytváření krátkých videoscén z textu. Popis určuje postavy, děj, prostředí a vizuální pojetí; tento režim nevyžaduje výchozí obrázek. Model vytváří obrazovou složku videa a může generovat doprovodný zvuk.

Výrobce zdůrazňuje porozumění smyslu scény, filmovou inscenaci a výraznost pohybu. Text může určovat atmosféru, jednání postavy, chování objektů a fyzikální dynamiku. Umožňuje tak vystavět scénu kolem toho, co se má odehrát, a následně ji usměrnit světlem, úhlem pohledu a pohybem kamery.

Inscenace pomocí slov

Zadání je povinné a může být v libovolném jazyce. Může obsahovat až 5000 nečínských nebo 2500 čínských znaků; přebytečná část se zahodí. Děj, prostředí a důležité vizuální detaily je třeba popsat v tomto rozsahu. Takové zadání ponechává modelu prostor pro vytvoření nové scény, místo aby mu určovalo hotový první snímek.

V tomto režimu je text hlavním řídicím materiálem. Konkrétní podobu postavy nebo předmětu lze popsat slovy; možnost předat vzhled prostřednictvím samostatných obrázků patří do jiného režimu této rodiny. Výsledek závisí na celém zadání, proto stejná počáteční hodnota náhodného semínka pomáhá získat podobné varianty, ale nezaručuje přesné zopakování.

Video a zvukový doprovod

U HappyHorse-1.1 se délka videa volí celým číslem od 3 do 15 sekund. Podporována jsou rozlišení 480P, 720P a 1080P. Hotový soubor má formát MP4 a snímkovou frekvenci 24 snímků za sekundu. Model může generovat zvuk společně s obrazem a propojovat zvukový doprovod s děním ve scéně.

Formát obrazu lze určit předem. Dostupné jsou 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 a 21:9 — od širokého filmového formátu po protáhlé svislé video. Rozlišení, formát a délka určují rozměry výsledku; obsah a pohyb zadává text.

Tato varianta slouží k vytvoření nové scény ze slovně vyjádřeného záměru. Hodí se pro krátkou epizodu, vizuální nápad nebo atmosférické video, u něhož je třeba inscenaci vyjádřit textem.

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

happyhorse-1.1-t2v

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

Úvod

Model pro vytváření krátkého videa se zvukem z textového popisu. Hodí se pro scény, v nichž se pohyb, kompozice a vizuální styl zadávají slovy.

Přijímané vstupy
Text
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-1.1-t2v
Výchozí—
PolepromptTypstringPožadavekPovinné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žadavekVolitelnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Výchozí16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekVolitelnéHodnoty a limity
Minimální počet položek: 0
Maximální počet položek: 0
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ů

Text na video · Povinné: prompt

Parametry a životní cyklus metody
ParametrKontrakt
Parametrcontent_typeKontraktapplication/json
ParametrrequiredKontraktmodel, prompt
Parametrmaterial_typesKontrakttext
ParametroptionalKontraktduration, resolution, ratio
Parametrduration_integer_rangeKontrakt3, 15
Parametrdefault_durationKontrakt5
ParametrresolutionKontrakt480P, 720P, 1080P
Parametrdefault_resolutionKontrakt720P
ParametrratioKontrakt16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Parametrratio_must_omitKontraktfalse
Parametrimage_urlsKontrakt{"max_count":0}

Ž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

Příklad scény
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-1.1-t2v", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
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-t2v, happyhorse-t2v, happyhorse-t2v-latest

Aliasy cest metod

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

Související ID modelů

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

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

happyhorse-t2v

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

Úvod

Model pro vytváření krátkého videa se zvukem z textového popisu. Hodí se pro scény, v nichž se pohyb, kompozice a vizuální styl zadávají slovy.

Přijímané vstupy
Text
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-t2v
Výchozí—
PolepromptTypstringPožadavekPovinné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žadavekVolitelnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Výchozí16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekVolitelnéHodnoty a limity
Minimální počet položek: 0
Maximální počet položek: 0
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ů

Text na video · Povinné: prompt

Parametry a životní cyklus metody
ParametrKontrakt
Parametrmaterial_typesKontrakttext
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

Příklad scény
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-t2v", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
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-t2v, happyhorse-t2v, happyhorse-t2v-latest

Aliasy cest metod

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

Související ID modelů

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

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

happyhorse-t2v-latest

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

Úvod

Model pro vytváření krátkého videa se zvukem z textového popisu. Hodí se pro scény, v nichž se pohyb, kompozice a vizuální styl zadávají slovy.

Přijímané vstupy
Text
Výsledky
Video

Dostupné v Ailoot · vstupy a metody

Ailoot · Tvorba videa POST /v1/videos/generations
Vstup
text
Výstup
video
Výstupní formát
mp4
PoleTypPožadavekHodnoty a limityVýchozí
PolemodelTypstringPožadavekPovinnéHodnoty a limity
happyhorse-t2v-latest
Výchozí—
PolepromptTypstringPožadavekPovinné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žadavekVolitelnéHodnoty a limity
16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9
Výchozí16:9
Poleimage_urlsTyphttps_url|data_image_url[]PožadavekVolitelnéHodnoty a limity
Minimální počet položek: 0
Maximální počet položek: 0
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ů

Text na video · Povinné: prompt

Parametry a životní cyklus metody
ParametrKontrakt
Parametrmaterial_typesKontrakttext
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

Příklad scény
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 scene brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "happyhorse-t2v-latest", "prompt": "", "duration": 5, "resolution": "720P", "ratio": "16:9"}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
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-t2v, happyhorse-t2v, happyhorse-t2v-latest

Aliasy cest metod

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

Související ID modelů

happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest

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

POST /v1/videos/generations · happyhorse-1.1-t2v: text → video

POST /v1/videos/generations · happyhorse-t2v: text → video

POST /v1/videos/generations · happyhorse-t2v-latest: text → video

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

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

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

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

Jaké limity platí?

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

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

POST /v1/videos/generations · happyhorse-t2v-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