happyhorse-1.1-t2v
Мәтіндік сипаттама бойынша дыбысы бар қысқа бейне жасайтын модель. Қозғалысы, композициясы және визуалды стилі сөзбен берілетін сахналарға жарайды.
- Ailoot · Бейне
POST /v1/videos/generationshappyhorse-1.1-t2v - Ailoot · Бейне
POST /v1/videos/generationshappyhorse-t2v - Ailoot · Бейне
POST /v1/videos/generationshappyhorse-t2v-latest
Модель туралы
Бұл сипаттама модель мүмкіндіктерін қамтиды. Ailoot жүйесінде таңдалған әдіс үшін қолжетімді кіріс, шығыс және параметрлер төменде берілген.
HappyHorse-1.1-T2V — мәтін бойынша қысқа бейнесахналар жасайтын Alibaba моделі. Сипаттамада кейіпкерлер, әрекеттер, жағдай және визуалды берілу тәсілі көрсетіледі; бұл режимге бастапқы сурет қажет емес. Модель бейнеқатар құрастырады және оны сүйемелдейтін дыбыс жасай алады.
Өндіруші сахнаның мағынасын түсінуді, кинематографиялық қойылымды және қозғалыстың мәнерлілігін атап көрсетеді. Мәтін атмосфераны, кейіпкер әрекеттерін, нысандардың мінез-құлқын және физикалық динамиканы анықтай алады. Осылайша сахнаны болуы тиіс оқиғаға негіздеп, кейін жарық, ракурс және камера қозғалысы арқылы бағыттауға болады.
Сөзбен берілген қойылым
Тапсырма міндетті және кез келген тілде беріле алады. Ол қытайша емес 5000 немесе қытайша 2500 таңбаға дейін қамтиды; артық бөлігі алынып тасталады. Әрекетті, ортаны және маңызды визуалды бөлшектерді осы көлемде сипаттау керек. Мұндай қойылым модельге дайын бірінші кадр берудің орнына жаңа сахна жасауға мүмкіндік қалдырады.
Бұл режимде мәтін негізгі басқарушы материал болып саналады. Кейіпкердің немесе заттың нақты бейнесін сөзбен сипаттауға болады; оның сыртқы көрінісін жеке суреттермен беру мүмкіндігі осы топтың басқа режиміне қатысты. Нәтиже бүкіл тапсырмаға байланысты, сондықтан кездейсоқтықтың бірдей бастапқы мәні ұқсас нұсқалар алуға көмектескенімен, дәл қайталануға кепілдік бермейді.
Бейне және дыбыстық сүйемелдеу
HappyHorse-1.1 үшін ролик ұзақтығы 3-тен 15 секундқа дейінгі бүтін санмен таңдалады. 480P, 720P және 1080P ажыратымдылық деңгейлері қолдау табады. Дайын файлдың форматы — MP4, жиілігі — секундына 24 кадр. Модель дыбысты бейнемен бірге жасап, дыбыстық сүйемелдеуді сахнадағы оқиғамен байланыстыра алады.
Кадр пішінін алдын ала беруге болады. 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 және 21:9 қолжетімді — кең кинематографиялық кадрдан созылыңқы тік роликке дейін. Ажыратымдылық, формат пен ұзақтық нәтиженің өлшемдерін анықтайды; мазмұн мен қозғалыс мәтінмен беріледі.
Бұл нұсқа сөзбен тұжырымдалған ойдан жаңа сахна жасауға арналған. Ол қойылымы мәтінмен берілуі тиіс қысқа эпизодқа, визуалды идеяға немесе атмосфералық роликке жарайды.
Ailoot · Бейне POST /v1/videos/generations happyhorse-1.1-t2v
happyhorse-1.1-t2vhappyhorse-1.1-t2vhappyhorse-t2vhappyhorse-t2v-latest
Бастау
Мәтіндік сипаттама бойынша дыбысы бар қысқа бейне жасайтын модель. Қозғалысы, композициясы және визуалды стилі сөзбен берілетін сахналарға жарайды.
- Қабылданатын кіріс деректері
- Мәтін
- Нәтижелер
- Бейне
Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер
Ailoot · Бейне POST /v1/videos/generations
- Кіріс
text- Шығыс
video- Шығыс пішімі
- mp4
| Өріс | Түрі | Талап | Мәндер мен шектеулер | Әдепкі |
|---|---|---|---|---|
Өрісmodel | Түріstring | ТалапМіндетті | Мәндер мен шектеулер happyhorse-1.1-t2v | Әдепкі— |
Өрісprompt | Түріstring | ТалапМіндетті | Мәндер мен шектеулер Ең аз ұзындық: 1 | Әдепкі— |
Өрісduration | Түріinteger | ТалапМіндетті емес | Мәндер мен шектеулер Ең азы: 3 Ең көбі: 15 Бірлік: секунд | Әдепкі5 |
Өрісresolution | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 480P, 720P, 1080P | Әдепкі720P |
Өрісratio | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9 | Әдепкі16:9 |
Өрісimage_urls | Түріhttps_url|data_image_url[] | ТалапМіндетті емес | Мәндер мен шектеулер Элементтердің ең аз саны: 0 Элементтердің ең көп саны: 0 Декодталған байттардың ең көп саны: 20 971 520 MIME түрлері: image/jpeg, image/png, image/webp | Әдепкі— |
Кіріс материалдарының үйлесімдері
Мәтіннен бейне жасау · Міндетті: prompt
Әдіс параметрлері мен өмірлік циклі
| Параметр | Параметр талаптары |
|---|---|
Параметрcontent_type | Параметр талаптарыapplication/json |
Параметрrequired | Параметр талаптарыmodel, prompt |
Параметрmaterial_types | Параметр талаптарыtext |
Параметрoptional | Параметр талаптарыduration, resolution, ratio |
Параметрduration_integer_range | Параметр талаптары3, 15 |
Параметрdefault_duration | Параметр талаптары5 |
Параметрresolution | Параметр талаптары480P, 720P, 1080P |
Параметрdefault_resolution | Параметр талаптары720P |
Параметрratio | Параметр талаптары16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9 |
Параметрratio_must_omit | Параметр талаптарыfalse |
Параметрimage_urls | Параметр талаптары{"max_count":0} |
Өмірлік цикл: 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
Әдіс құрылымдары мен ID мәндері дәл берілген; жеткізушінің мүмкіндігі сұрауды қабылдаудан бөлек қаралады.
Тарифтер
Ailoot әдістерінің мөлшерлемелері
POST /v1/videos/generations- Шығыс
- 0,18 $ 1080p ажыратымдылықта секундына
- Шығыс
- 0,07 $ 480p ажыратымдылықта секундына
- Шығыс
- 0,14 $ 720p ажыратымдылықта секундына
Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. Резервтеу мен төлемді есептеу тәртібі →
Сұрау мысалдары
Ailoot · Бейне
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
Нәтижелерді алу және сақтау
Ailoot · Бейне
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Тапсырма күйін тексеру
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
Барлық дайын материалды сақтау
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
Басқа мазмұнды оқу
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
Барлық дайын нәтижені сақтау
Әр дайын бейнені немесе қайтарылған файлды сақтаңыз; нақты қайтарылған әр материал URL арқылы мазмұнды алыңыз.
Қайтарылған әрбір дерек элементін және шығыс индексін сақтаңыз. content_url тек бірінші нәтижеге арналған; әрбір нақты мазмұн жолы немесе ресурс бойынша файлды алыңыз. Индекссіз мазмұн GET сұрауы барлық шығыс нәтижесін бермейді.
Бастапқы жауапты тексеру қажет болса
Бар бастапқы тапсырманы оқыңыз; жіберу нәтижесі белгісіз сұрауды ешқашан қайталап жібермеңіз.
Жауап өрістері
| Өріс | Түрі |
|---|---|
Өрісid | Түріstring |
Өрісobject | Түріstring |
Өрісmodel | Түріstring |
Өрісstatus | Түріstring |
Өрісcontent_url | Түріsigned URL |
Өрісdata[] | Түріsigned URL |
Өрісusage | Түріobject |
Өрісresult_pending_check | Түріboolean |
Қателер және келесі қадамдар
| Жауап | Шарт | Келесі қадам |
|---|---|---|
Жауап400 · invalid_request_error | ШартМіндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате | Келесі қадамЖаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз. |
Жауап409 · video_not_ready | ШартБастапқы нәтиженің мазмұны әзірге қолжетімді емес | Келесі қадамБастапқы қайтарылған ID бойынша күйді мезгіл-мезгіл сұрап, Retry-After талабын сақтаңыз. |
Жауапserver_error | ШартҚайтарылған жауапта операцияны немесе нәтижені тексеру қажет екені көрсетілген | Келесі қадамБастапқыда қайтарылған операцияның/тапсырманың ID мәнін, сұрау тақырыптарын және жауабын сақтаңыз; сол бастапқы операцияны қолдау көрсетілетін тәсілдермен оқуды жалғастырыңыз. Жасау сұрауын қайта жібермеңіз. |
Балама атаулар
Модельдердің балама атаулары
Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest
Әдіс жолдарының балама атаулары
Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.
Шақыруға арналған байланысты ID
Ailoot · Бейне POST /v1/videos/generations happyhorse-t2v
happyhorse-t2vhappyhorse-1.1-t2vhappyhorse-t2vhappyhorse-t2v-latest
Бастау
Мәтіндік сипаттама бойынша дыбысы бар қысқа бейне жасайтын модель. Қозғалысы, композициясы және визуалды стилі сөзбен берілетін сахналарға жарайды.
- Қабылданатын кіріс деректері
- Мәтін
- Нәтижелер
- Бейне
Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер
Ailoot · Бейне POST /v1/videos/generations
- Кіріс
text- Шығыс
video- Шығыс пішімі
- mp4
| Өріс | Түрі | Талап | Мәндер мен шектеулер | Әдепкі |
|---|---|---|---|---|
Өрісmodel | Түріstring | ТалапМіндетті | Мәндер мен шектеулер happyhorse-t2v | Әдепкі— |
Өрісprompt | Түріstring | ТалапМіндетті | Мәндер мен шектеулер Ең аз ұзындық: 1 | Әдепкі— |
Өрісduration | Түріinteger | ТалапМіндетті емес | Мәндер мен шектеулер Ең азы: 3 Ең көбі: 15 Бірлік: секунд | Әдепкі5 |
Өрісresolution | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 480P, 720P, 1080P | Әдепкі720P |
Өрісratio | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9 | Әдепкі16:9 |
Өрісimage_urls | Түріhttps_url|data_image_url[] | ТалапМіндетті емес | Мәндер мен шектеулер Элементтердің ең аз саны: 0 Элементтердің ең көп саны: 0 Декодталған байттардың ең көп саны: 20 971 520 MIME түрлері: image/jpeg, image/png, image/webp | Әдепкі— |
Кіріс материалдарының үйлесімдері
Мәтіннен бейне жасау · Міндетті: prompt
Әдіс параметрлері мен өмірлік циклі
| Параметр | Параметр талаптары |
|---|---|
Параметрmaterial_types | Параметр талаптарыtext |
Параметрrequired | Параметр талаптарыnull |
Параметрoptional_controls | Параметр талаптарыnull |
Өмірлік цикл: 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
Әдіс құрылымдары мен ID мәндері дәл берілген; жеткізушінің мүмкіндігі сұрауды қабылдаудан бөлек қаралады.
Тарифтер
Ailoot әдістерінің мөлшерлемелері
POST /v1/videos/generations- Шығыс
- 0,18 $ 1080p ажыратымдылықта секундына
- Шығыс
- 0,07 $ 480p ажыратымдылықта секундына
- Шығыс
- 0,14 $ 720p ажыратымдылықта секундына
Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. Резервтеу мен төлемді есептеу тәртібі →
Сұрау мысалдары
Ailoot · Бейне
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
Нәтижелерді алу және сақтау
Ailoot · Бейне
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Тапсырма күйін тексеру
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
Барлық дайын материалды сақтау
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
Басқа мазмұнды оқу
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
Барлық дайын нәтижені сақтау
Әр дайын бейнені немесе қайтарылған файлды сақтаңыз; нақты қайтарылған әр материал URL арқылы мазмұнды алыңыз.
Қайтарылған әрбір дерек элементін және шығыс индексін сақтаңыз. content_url тек бірінші нәтижеге арналған; әрбір нақты мазмұн жолы немесе ресурс бойынша файлды алыңыз. Индекссіз мазмұн GET сұрауы барлық шығыс нәтижесін бермейді.
Бастапқы жауапты тексеру қажет болса
Бар бастапқы тапсырманы оқыңыз; жіберу нәтижесі белгісіз сұрауды ешқашан қайталап жібермеңіз.
Жауап өрістері
| Өріс | Түрі |
|---|---|
Өрісid | Түріstring |
Өрісobject | Түріstring |
Өрісmodel | Түріstring |
Өрісstatus | Түріstring |
Өрісcontent_url | Түріsigned URL |
Өрісdata[] | Түріsigned URL |
Өрісusage | Түріobject |
Өрісresult_pending_check | Түріboolean |
Қателер және келесі қадамдар
| Жауап | Шарт | Келесі қадам |
|---|---|---|
Жауап400 · invalid_request_error | ШартМіндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате | Келесі қадамЖаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз. |
Жауап409 · video_not_ready | ШартБастапқы нәтиженің мазмұны әзірге қолжетімді емес | Келесі қадамБастапқы қайтарылған ID бойынша күйді мезгіл-мезгіл сұрап, Retry-After талабын сақтаңыз. |
Жауапserver_error | ШартҚайтарылған жауапта операцияны немесе нәтижені тексеру қажет екені көрсетілген | Келесі қадамБастапқыда қайтарылған операцияның/тапсырманың ID мәнін, сұрау тақырыптарын және жауабын сақтаңыз; сол бастапқы операцияны қолдау көрсетілетін тәсілдермен оқуды жалғастырыңыз. Жасау сұрауын қайта жібермеңіз. |
Балама атаулар
Модельдердің балама атаулары
Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest
Әдіс жолдарының балама атаулары
Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.
Шақыруға арналған байланысты ID
Ailoot · Бейне POST /v1/videos/generations happyhorse-t2v-latest
happyhorse-t2v-latesthappyhorse-1.1-t2vhappyhorse-t2vhappyhorse-t2v-latest
Бастау
Мәтіндік сипаттама бойынша дыбысы бар қысқа бейне жасайтын модель. Қозғалысы, композициясы және визуалды стилі сөзбен берілетін сахналарға жарайды.
- Қабылданатын кіріс деректері
- Мәтін
- Нәтижелер
- Бейне
Ailoot жүйесінде қолжетімді · кіріс деректері мен әдістер
Ailoot · Бейне POST /v1/videos/generations
- Кіріс
text- Шығыс
video- Шығыс пішімі
- mp4
| Өріс | Түрі | Талап | Мәндер мен шектеулер | Әдепкі |
|---|---|---|---|---|
Өрісmodel | Түріstring | ТалапМіндетті | Мәндер мен шектеулер happyhorse-t2v-latest | Әдепкі— |
Өрісprompt | Түріstring | ТалапМіндетті | Мәндер мен шектеулер Ең аз ұзындық: 1 | Әдепкі— |
Өрісduration | Түріinteger | ТалапМіндетті емес | Мәндер мен шектеулер Ең азы: 3 Ең көбі: 15 Бірлік: секунд | Әдепкі5 |
Өрісresolution | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 480P, 720P, 1080P | Әдепкі720P |
Өрісratio | Түріstring | ТалапМіндетті емес | Мәндер мен шектеулер 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9 | Әдепкі16:9 |
Өрісimage_urls | Түріhttps_url|data_image_url[] | ТалапМіндетті емес | Мәндер мен шектеулер Элементтердің ең аз саны: 0 Элементтердің ең көп саны: 0 Декодталған байттардың ең көп саны: 20 971 520 MIME түрлері: image/jpeg, image/png, image/webp | Әдепкі— |
Кіріс материалдарының үйлесімдері
Мәтіннен бейне жасау · Міндетті: prompt
Әдіс параметрлері мен өмірлік циклі
| Параметр | Параметр талаптары |
|---|---|
Параметрmaterial_types | Параметр талаптарыtext |
Параметрrequired | Параметр талаптарыnull |
Параметрoptional_controls | Параметр талаптарыnull |
Өмірлік цикл: 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
Әдіс құрылымдары мен ID мәндері дәл берілген; жеткізушінің мүмкіндігі сұрауды қабылдаудан бөлек қаралады.
Тарифтер
Ailoot әдістерінің мөлшерлемелері
POST /v1/videos/generations- Шығыс
- 0,18 $ 1080p ажыратымдылықта секундына
- Шығыс
- 0,07 $ 480p ажыратымдылықта секундына
- Шығыс
- 0,14 $ 720p ажыратымдылықта секундына
Ailoot сұрау алдында болжамды соманы резервтейді. Нәтижеден кейін өлшенген пайдалану көлемі бойынша қорытынды төлемді шегереді. Ағындық жауап үшін төлем соңғы пайдалану жазбасы негізінде шегеріледі. Резервтеу мен төлемді есептеу тәртібі →
Сұрау мысалдары
Ailoot · Бейне
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
Нәтижелерді алу және сақтау
Ailoot · Бейне
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Тапсырма күйін тексеру
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
Барлық дайын материалды сақтау
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
Басқа мазмұнды оқу
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
Барлық дайын нәтижені сақтау
Әр дайын бейнені немесе қайтарылған файлды сақтаңыз; нақты қайтарылған әр материал URL арқылы мазмұнды алыңыз.
Қайтарылған әрбір дерек элементін және шығыс индексін сақтаңыз. content_url тек бірінші нәтижеге арналған; әрбір нақты мазмұн жолы немесе ресурс бойынша файлды алыңыз. Индекссіз мазмұн GET сұрауы барлық шығыс нәтижесін бермейді.
Бастапқы жауапты тексеру қажет болса
Бар бастапқы тапсырманы оқыңыз; жіберу нәтижесі белгісіз сұрауды ешқашан қайталап жібермеңіз.
Жауап өрістері
| Өріс | Түрі |
|---|---|
Өрісid | Түріstring |
Өрісobject | Түріstring |
Өрісmodel | Түріstring |
Өрісstatus | Түріstring |
Өрісcontent_url | Түріsigned URL |
Өрісdata[] | Түріsigned URL |
Өрісusage | Түріobject |
Өрісresult_pending_check | Түріboolean |
Қателер және келесі қадамдар
| Жауап | Шарт | Келесі қадам |
|---|---|---|
Жауап400 · invalid_request_error | ШартМіндетті өрістер, материалды ұсыну тәсілі немесе параметр мәні қате | Келесі қадамЖаңадан жасау сұрауын жібермес бұрын көрсетілген өрістерді түзетіңіз. |
Жауап409 · video_not_ready | ШартБастапқы нәтиженің мазмұны әзірге қолжетімді емес | Келесі қадамБастапқы қайтарылған ID бойынша күйді мезгіл-мезгіл сұрап, Retry-After талабын сақтаңыз. |
Жауапserver_error | ШартҚайтарылған жауапта операцияны немесе нәтижені тексеру қажет екені көрсетілген | Келесі қадамБастапқыда қайтарылған операцияның/тапсырманың ID мәнін, сұрау тақырыптарын және жауабын сақтаңыз; сол бастапқы операцияны қолдау көрсетілетін тәсілдермен оқуды жалғастырыңыз. Жасау сұрауын қайта жібермеңіз. |
Балама атаулар
Модельдердің балама атаулары
Ailoot happyhorse-1.1-t2v, happyhorse-t2v, happyhorse-t2v-latest
Әдіс жолдарының балама атаулары
Жоғарыда көрсетілген әдіс жолдарын пайдаланыңыз.
Шақыруға арналған байланысты ID
FAQ · happyhorse-1.1-t2v
- Қандай кіріс деректері мен нәтижелер қолжетімді?
POST /v1/videos/generations·happyhorse-1.1-t2v:text→videoPOST /v1/videos/generations·happyhorse-t2v:text→videoPOST /v1/videos/generations·happyhorse-t2v-latest:text→video- Сұрау қандай өрістерді пайдаланады?
POST /v1/videos/generations·happyhorse-1.1-t2v:model,prompt,duration,resolution,ratio,image_urlsPOST /v1/videos/generations·happyhorse-t2v:model,prompt,duration,resolution,ratio,image_urlsPOST /v1/videos/generations·happyhorse-t2v-latest:model,prompt,duration,resolution,ratio,image_urls- Қандай шектеулер қолданылады?
POST /v1/videos/generations·happyhorse-1.1-t2v:duration.minimum:3;duration.maximum:15POST /v1/videos/generations·happyhorse-t2v:duration.minimum:3;duration.maximum:15POST /v1/videos/generations·happyhorse-t2v-latest:duration.minimum:3;duration.maximum:15