מודלים

happyhorse-1.1-t2v

Markdown · JSON

happyhorse-1.1-t2v

מודל ליצירת וידאו קצר עם צליל מתיאור טקסטואלי. מתאים לסצנות שבהן התנועה, הקומפוזיציה והסגנון החזותי מוגדרים במילים.

על המודל

התיאור הזה מציג את יכולות המודל. הקלט, הפלט והאפשרויות הזמינים ב-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-t2v

Alibaba /happyhorse-1.1-t2v
מזהה מודל ID
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-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

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

תעריפים

תעריפי שיטות Ailoot

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}/content
  • GET /v1/videos/generations/{request_id}/content
בדיקת מצב המשימה
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
שמירת כל הנכסים שהושלמו
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
קריאות תוכן נוספות
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
שמירת כל התוצאות שהושלמו

שמרו כל וידאו שהושלם או קובץ שהוחזר; אחזרו כל נכס מכל URL שהוחזר בפועל.

יש לשמור כל פריט נתונים ואינדקס פלט שהוחזרו. content_url מתייחס רק לראשון; יש לאחזר כל נתיב תוכן או נכס ממשיים. GET לתוכן ללא index אינו מחזיר את כל הפלטים.

כשצריך לבדוק את התגובה המקורית

יש לקרוא את המשימה המקורית הקיימת; אין לשלוח שוב בקשה שתוצאת שליחתה אינה ידועה.

שדות התגובה
שדהסוג
שדה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תנאיתוכן התוצאה המקורית עדיין אינו זמיןהשלב הבאיש לבדוק במחזוריות את המזהה המקורי שהוחזר ולכבד את Retry-After.
תגובהserver_errorתנאיהתשובה שהוחזרה מציינת שהפעולה או התוצאה דורשת בדיקההשלב הבאשמרו את מזהה הפעולה/המשימה המקורי שהוחזר, את כותרות הבקשה ואת התשובה; המשיכו לבצע פעולות קריאה נתמכות של אותה פעולה מקורית. אל תשלחו שוב את בקשת היצירה.

כינויים

כינויים למודל

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

כינויים לנתיבי שיטות

השתמשו בנתיבי השיטות המוצגים למעלה.

מזהי מודלים קשורים IDs

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

Ailoot · וידאו POST /v1/videos/generations happyhorse-t2v

happyhorse-t2v

Alibaba /happyhorse-t2v
מזהה מודל ID
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-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

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

תעריפים

תעריפי שיטות Ailoot

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}/content
  • GET /v1/videos/generations/{request_id}/content
בדיקת מצב המשימה
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
שמירת כל הנכסים שהושלמו
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
קריאות תוכן נוספות
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
שמירת כל התוצאות שהושלמו

שמרו כל וידאו שהושלם או קובץ שהוחזר; אחזרו כל נכס מכל URL שהוחזר בפועל.

יש לשמור כל פריט נתונים ואינדקס פלט שהוחזרו. content_url מתייחס רק לראשון; יש לאחזר כל נתיב תוכן או נכס ממשיים. GET לתוכן ללא index אינו מחזיר את כל הפלטים.

כשצריך לבדוק את התגובה המקורית

יש לקרוא את המשימה המקורית הקיימת; אין לשלוח שוב בקשה שתוצאת שליחתה אינה ידועה.

שדות התגובה
שדהסוג
שדה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תנאיתוכן התוצאה המקורית עדיין אינו זמיןהשלב הבאיש לבדוק במחזוריות את המזהה המקורי שהוחזר ולכבד את Retry-After.
תגובהserver_errorתנאיהתשובה שהוחזרה מציינת שהפעולה או התוצאה דורשת בדיקההשלב הבאשמרו את מזהה הפעולה/המשימה המקורי שהוחזר, את כותרות הבקשה ואת התשובה; המשיכו לבצע פעולות קריאה נתמכות של אותה פעולה מקורית. אל תשלחו שוב את בקשת היצירה.

כינויים

כינויים למודל

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

כינויים לנתיבי שיטות

השתמשו בנתיבי השיטות המוצגים למעלה.

מזהי מודלים קשורים IDs

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

Ailoot · וידאו POST /v1/videos/generations happyhorse-t2v-latest

happyhorse-t2v-latest

Alibaba /happyhorse-t2v-latest
מזהה מודל ID
  • happyhorse-1.1-t2v
  • happyhorse-t2v
  • happyhorse-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

מבני המתודות והמזהים מדויקים; יכולת הספק נפרדת מקבלת הבקשה לביצוע.

תעריפים

תעריפי שיטות Ailoot

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}/content
  • GET /v1/videos/generations/{request_id}/content
בדיקת מצב המשימה
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
שמירת כל הנכסים שהושלמו
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
קריאות תוכן נוספות
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
שמירת כל התוצאות שהושלמו

שמרו כל וידאו שהושלם או קובץ שהוחזר; אחזרו כל נכס מכל URL שהוחזר בפועל.

יש לשמור כל פריט נתונים ואינדקס פלט שהוחזרו. content_url מתייחס רק לראשון; יש לאחזר כל נתיב תוכן או נכס ממשיים. GET לתוכן ללא index אינו מחזיר את כל הפלטים.

כשצריך לבדוק את התגובה המקורית

יש לקרוא את המשימה המקורית הקיימת; אין לשלוח שוב בקשה שתוצאת שליחתה אינה ידועה.

שדות התגובה
שדהסוג
שדה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תנאיתוכן התוצאה המקורית עדיין אינו זמיןהשלב הבאיש לבדוק במחזוריות את המזהה המקורי שהוחזר ולכבד את Retry-After.
תגובהserver_errorתנאיהתשובה שהוחזרה מציינת שהפעולה או התוצאה דורשת בדיקההשלב הבאשמרו את מזהה הפעולה/המשימה המקורי שהוחזר, את כותרות הבקשה ואת התשובה; המשיכו לבצע פעולות קריאה נתמכות של אותה פעולה מקורית. אל תשלחו שוב את בקשת היצירה.

כינויים

כינויים למודל

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

כינויים לנתיבי שיטות

השתמשו בנתיבי השיטות המוצגים למעלה.

מזהי מודלים קשורים IDs

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

FAQ · happyhorse-1.1-t2v
אילו קלטים ותוצאות זמינים?

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

באילו שדות הבקשה משתמשת?

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

אילו מגבלות חלות?

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

פרטים נוספים

חברו Ailoot ל- Claude Code, OpenCode, Hermes או ליישום שלכם.

החברה ופורטפוליו הפרויקטים שלה

החברה ופורטפוליו הפרויקטים שלה: מיליוני לקוחות; מכירות בהיקף של מיליארדים מדי חודש.

קנו אסימונים בהנחה.

הנחת מנוי לעבודה קבועה. קודי הנחה עד 50% על רכישת אסימונים.

מנוי
בחרו מסלול עם הנחה לבקשות הקבועות שלכם.
קוד הנחה עד 50%
הזינו קוד ברכישה. המחיר יחושב מחדש לפי המבצע הפעיל.
הוצאות בהיסטוריה
המודל, האסימונים והסכום נשמרים לכל בקשה.

בחירת מנוי · מחירי מודלים

חברו API למוצר שאתם מוכרים.

SaaS, יישומים ובוטים לפי ההצעה והסכם הרישוי של Ailoot. למכירה מחדש בקשו רישיון משווק.

יישום מסחרי
שלבו יצירת טקסט, תמונות, וידאו ושמע בתכונות בתשלום של השירות שלכם.
רישיון למכירה מחדש
שלחו תיאור פרויקט ואופן מתן גישה. בקשו תנאי שימוש ומכירה מחדש בכתב.
מסמכים באתר
ההצעה, הסכם הרישוי ומדיניות עיבוד הנתונים זמינים לפני החיבור.

בקשת רישיון למכירה מחדש · ההצעה והסכם הרישוי