wan2.7-r2v
Wan 2.7 R2V מציע שדות image, reference_images ו־reference_voice לתדריך וידאו המבוסס על מקורות ייחוס. בחרו משך, רזולוציה ויחס ממדים, ואז אחזרו את תוצאת Ailoot המקורית.
על המודל
התיאור הזה מציג את יכולות המודל. הקלט, הפלט והאפשרויות הזמינים ב-Ailoot מפורטים בהמשך לפי השיטה שנבחרה.
בחרו wan2.7-r2v ב־/v1/videos. הבקשה שלו מציעה prompt, negative_prompt, image, reference_images, reference_voice, prompt_extend ו־watermark. Resolution מציע 720P או 1080P, ratio כולל פריים לרוחב, לגובה, ריבוע, 4:3 ו־3:4, ו־duration מקבל שניות שלמות בין שתיים לחמש־עשרה.
הסבירו מה כל מקור ייחוס מצורף אמור לקבוע ומה השוט צריך לעשות. הגדירו בנפרד את מראה הנושא, הסביבה, התנועה והקומפוזיציה הסופית. שמרו את ערכי reference_images ו־reference_voice בפורמט השדה המתועד שלהם עם נכסי המקור. ברצף, הבהירו את הסדר ואת הרציפות המיועדים כדי שלסרטון שהושלם יהיה יעד בדיקה מוחשי.
שלחו את השוט פעם אחת דרך /v1/videos ושמרו את מזהה הבקשה שהוחזר. בדקו את אותה פעולה דרך /v1/videos/{request_id}, ואז שמרו את כל פלטי הווידאו שהושלמו ואת התשובה המלאה. בדקו את מלוא הפעולה ואת הקומפוזיציה הסופית מול החומר והתדריך שסופקו.
Ailoot Ultra · Video POST /v1/videos wan2.7-r2v
wan2.7-r2vהתחלה
Wan 2.7 R2V מציע שדות image, reference_images ו־reference_voice לתדריך וידאו המבוסס על מקורות ייחוס. בחרו משך, רזולוציה ויחס ממדים, ואז אחזרו את תוצאת Ailoot המקורית.
- סוגי קלט נתמכים
- טקסט · תמונות
- תוצאות
- וידאו
זמין ב-Ailoot · קלט ושיטות
Ailoot Ultra · Video POST /v1/videos
- סוגי קלט
text,image- סוגי פלט
video
| שדה | סוג | דרישה | ערכים ומגבלות | ברירת מחדל |
|---|---|---|---|---|
שדהmodel | סוגstring | דרישהחובה | ערכים ומגבלות wan2.7-r2v תנאים: השתמשו בבורר הניתוב הזה של Ailoot בדיוק כפי שהוא. | ברירת מחדל— |
שדהprompt | סוגstring | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל |
שדהnegative_prompt | סוגstring | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל |
שדהresolution | סוגstring | דרישהרשות | ערכים ומגבלות 720P, 1080P תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהratio | סוגstring | דרישהרשות | ערכים ומגבלות 16:9, 9:16, 1:1, 4:3, 3:4 תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהduration | סוגinteger | דרישהרשות | ערכים ומגבלות מינימום: 2 מקסימום: 15 תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהprompt_extend | סוגboolean | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהwatermark | סוגboolean | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהimage | סוגstring | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהreference_images | סוגstring | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
שדהreference_voice | סוגstring | דרישהרשות | ערכים ומגבלות תנאים: השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. | ברירת מחדל— |
פרמטרים ומחזור חיים של השיטה
| פרמטר | מפרט |
|---|---|
פרמטרcontent_type | מפרטapplication/json |
פרמטרrequired | מפרטmodel |
פרמטרoptional | מפרטprompt, negative_prompt, resolution, ratio, duration, prompt_extend, watermark, image, reference_images, reference_voice |
פרמטרmaterial_types | מפרטtext, image |
פרמטרconditions | מפרטהשתמשו בבורר הניתוב הזה של Ailoot בדיוק כפי שהוא., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין., השתמשו בשדה המתועד עבור המודל שנבחר ובאפשרויות הרשומות; השמיטו ערך אופציונלי שלא צוין. |
כינויים לשיטה: /v1/videos/generations
מחזור חיים: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
תעריפים
אופן חישוב החיוב הסופי
התעריפים המוצגים מספקים אומדן לעלות לפני היצירה. החיוב הסופי מחושב לפי העלות שנרשמה עבור היצירה המקורית. משך הפלט שנמדד והכמויות החזויות אינם הכמות הסופית לחיוב.
מידע תעריפים אינו מוסיף אפשרויות לבקשה. הפרמטרים הנתמכים מפורטים בשיטה שנבחרה.
- מצב מהיר
- לא צוין כאשר נבחר מצב מהיר
- מצב Flex
- לא צוין כאשר נבחר מצב flex
- מאמץ חשיבה מרבי
- לא צוין כאשר מאמץ החשיבה המרבי משתמש בהתאמת ברירת המחדל (default)
תעריפים משוערים להשוואה
מחירים לפי תצורה
התאימו כל חיוב לתנאים המוצגים. השתמשו בתעריף אחד לכל קבוצה של תצורות חלופיות.
| תצורה | טבלת תעריפים | כמות חזויה | רזולוציית פלט | יחידת חיוב | תנאי חיוב | חיוב |
|---|---|---|---|---|---|---|
| תצורהתעריפי בסיס לטוקנים | טבלת תעריפיםתעריף בסיס | כמות חזויה— | רזולוציית פלט— | יחידת חיוב— | תנאי חיוב— | חיוב קלט · טוקני קלט · אומדן להשוואה בלבד — / 1K טוקנים פלט · טוקני פלט · אומדן להשוואה בלבד — / 1K טוקנים קלט · קריאה מהמטמון · אומדן להשוואה בלבד — / 1K טוקנים קלט · כתיבה למטמון · אומדן להשוואה בלבד — / 1K טוקנים קלט · כתיבה למטמון, 1 שעה · אומדן להשוואה בלבד — / 1K טוקנים |
| תצורההסרטון שנוצר | טבלת תעריפים— | כמות חזויה— | רזולוציית פלט1080P | יחידת חיובלכל שניית וידאו | תנאי חיובאומדן לצורכי עיון של הסרטון שנוצר ברזולוציית 1080P. החיוב הסופי נקבע לפי החשבונית המקורית שנרשמה. | חיוב פלט · הסרטון שנוצר · אומדן להשוואה בלבד $0.3 לכל שניית וידאו אומדן לצורכי עיון בלבד; החיוב הסופי נקבע לפי החשבונית המקורית שנרשמה. |
| תצורההסרטון שנוצר | טבלת תעריפים— | כמות חזויה— | רזולוציית פלט720P | יחידת חיובלכל שניית וידאו | תנאי חיובאומדן לצורכי עיון של הסרטון שנוצר ברזולוציית 720P. החיוב הסופי נקבע לפי החשבונית המקורית שנרשמה. | חיוב פלט · הסרטון שנוצר · אומדן להשוואה בלבד $0.2 לכל שניית וידאו אומדן לצורכי עיון בלבד; החיוב הסופי נקבע לפי החשבונית המקורית שנרשמה. |
| תצורהעלות יצירה משוערת | טבלת תעריפים— | כמות חזויהאומדן ליצירה אחת | רזולוציית פלט— | יחידת חיוב— | תנאי חיוב— | חיוב פלט · עלות יצירה משוערת · אומדן להשוואה בלבד $0.2 אומדן לפני היצירה אומדן זה אינו חיוב נוסף או תעריף קבוע עבור היצירה שהושלמה. |
לפני הבקשה Ailoot משריינת סכום משוער. לאחר קבלת התוצאה היא מסדירה את החיוב הסופי לפי השימוש המדוד. הסדרת חיוב בהזרמה משתמשת ברשומת השימוש הסופית. איך פועלים שריון הסכום והסדרת החיוב →
דוגמאות לבקשות
Ailoot Ultra · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
: "${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "wan2.7-r2v", "reference_images": "YOUR_ACCESSIBLE_IMAGE_URL"}')
p['reference_images']=os.environ['AILOOT_IMAGE_URL']
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 \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("status.json").read_text())
roles={}
def visit(v,path=""):
if isinstance(v,dict):
for k,x in v.items(): visit(x,path+"/"+k)
elif isinstance(v,list):
for i,x in enumerate(v): visit(x,path+"/"+str(i))
elif isinstance(v,str):
u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
target=Path(f"asset-{i}.bin")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
raw=target.read_bytes()
if not raw: raise SystemExit("Empty asset; retain original status and metadata")
ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
name=f"asset-{i}.{ext}"
if target.name!=name: target.rename(name)
manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
קבלה ושמירה של תוצאות
Ailoot Ultra · Video
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
שמירת כל התוצאות שהושלמו
שמרו כל וידאו שהושלם או קובץ שהוחזר; אחזרו כל נכס מכל URL שהוחזר בפועל.
יש לשמור את התגובה המלאה ואת הכותרות, המזהים המקוריים, כל פלט ממשי ואת כל שדות השימוש והחיוב. יש לשמור כל נכס ייחודי שבבעלותכם ואת כל התפקידים המפנים אליו.
כשצריך לבדוק את התגובה המקורית
יש לשמור את מזהה המשימה הציבורי או מזהה הפעולה שהוחזרו ואת כל הכותרות. יש לקרוא רק את המשימה המקורית; unknown או result_pending_check אינם מתירים יצירה נוספת.
שדות התגובה
| שדה | סוג |
|---|---|
שדהid | סוגstring |
שדהpolling_url | סוגstring |
שדהprovider_task_id | סוגstring |
שדהtask_id | סוגstring |
שדהstatus | סוגstring |
שדהvideo_url | סוגstring |
שגיאות והשלבים הבאים
| תגובה | תנאי | השלב הבא |
|---|---|---|
תגובה400 · invalid_request_error | תנאישדה חובה, בורר המודל, סוג או ייצוג הקלט אינם תקינים. | השלב הבאבדקו את פרטי האימות שהוחזרו לפני הכנת בקשה נפרדת. |
תגובה | תנאיהבקשה המקורית או התוצאה אינן ידועות או דורשות בדיקה. | השלב הבאשמרו את המזהים והכותרות המקוריים; קראו רק רשומות נתמכות של מצב או ספרייה. אל תשלחו שוב בקשת יצירה. |
כינויים
כינויים למודל
Ailoot Ultra wan2.7-r2v
כינויים לנתיבי שיטות
/v1/videos/generations
מזהי מודלים קשורים IDs
FAQ · wan2.7-r2v
- אילו קלטים ותוצאות זמינים?
POST /v1/videos·wan2.7-r2v:text,image→video- באילו שדות הבקשה משתמשת?
POST /v1/videos·wan2.7-r2v:model,prompt,negative_prompt,resolution,ratio,duration,prompt_extend,watermark,image,reference_images,reference_voice- אילו מגבלות חלות?
POST /v1/videos·wan2.7-r2v:duration.minimum:2;duration.maximum:15