النماذج

wan2.7-i2v

Markdown · JSON

wan2.7-i2v

ينشئ Wan 2.7 I2V فيديو من صورة إلزامية مع توجيه مكتوب اختياري وتوجيه بصورة نهاية. اختر المدة والدقة والنسبة عبر Ailoot.

عن النموذج

يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.

استخدم wan2.7-i2v مع model وimage في /v1/videos. يتيح الطلب prompt وnegative_prompt وend_image وdriving_audio وprompt_extend وwatermark. اختر مدة من ثانيتين إلى خمس عشرة ثانية، ودقة 720P أو 1080P، وratio بقيمة 16:9 أو 9:16 أو 1:1 أو 4:3 أو 3:4.

صِف الحركة التي ينبغي أن تنشأ من الصورة المصدرية والتفاصيل التي ينبغي أن يحتفظ بها المشهد. افصل حركة الموضوع عن مسار الكاميرا. يمكن لصورة نهاية تحديد تكوين النهاية المقصود، بينما ينبغي أن يبقى المدخل الصوتي مرتبطًا بالطلب للمراجعة لاحقًا. احتفظ بالصورة وإطار النهاية الاختياري والإعدادات المختارة إلى جانب اللقطة المكتملة.

أرسل اللقطة مرة واحدة عبر /v1/videos واحتفظ بمعرّف الطلب المعاد. استعلم دوريًا عن العملية نفسها عبر /v1/videos/{request_id}، ثم احفظ كل مخرجات الفيديو المكتملة والاستجابة الكاملة. راجع الحركة كاملةً والتكوين النهائي مقارنةً بالمادة المقدّمة ووصف المهمة.

Ailoot Ultra · Video POST /v1/videos wan2.7-i2v

wan2.7-i2v

أخرى /wan2.7-i2v

البداية

ينشئ Wan 2.7 I2V فيديو من صورة إلزامية مع توجيه مكتوب اختياري وتوجيه بصورة نهاية. اختر المدة والدقة والنسبة عبر Ailoot.

المدخلات المقبولة
النص · الصور
النتائج
فيديو

متاح في Ailoot · المدخلات والطرائق

Ailoot Ultra · Video POST /v1/videos
الإدخال
text, image
الإخراج
video
الحقلالنوعالمتطلبالقيم والحدودالقيمة الافتراضية
الحقلmodelالنوعstringالمتطلبمطلوبالقيم والحدود
wan2.7-i2v
الشروط: استخدم مُحدِّد التوجيه هذا في Ailoot كما هو تمامًا.
القيمة الافتراضية—
الحقلpromptالنوعstringالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية
الحقلnegative_promptالنوعstringالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية
الحقلimageالنوعstringالمتطلبمطلوبالقيم والحدود
الشروط: قدِّم عنوان URL فعليًا لصورتك يمكن الوصول إليه. لا تُقبَل قائمة إلا إذا كان مخطط المعلمة ينص على مصفوفة.
القيمة الافتراضية—
الحقلend_imageالنوعstringالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلdriving_audioالنوعstringالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلresolutionالنوعstringالمتطلباختياريالقيم والحدود
720P, 1080P
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلratioالنوعstringالمتطلباختياريالقيم والحدود
16:9, 9:16, 1:1, 4:3, 3:4
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلdurationالنوعintegerالمتطلباختياريالقيم والحدود
⁦2⁩, ⁦3⁩, ⁦4⁩, ⁦5⁩, ⁦6⁩, ⁦7⁩, ⁦8⁩, ⁦9⁩, ⁦10⁩, ⁦11⁩, ⁦12⁩, ⁦13⁩, ⁦14⁩, ⁦15⁩
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلprompt_extendالنوعbooleanالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
الحقلwatermarkالنوعbooleanالمتطلباختياريالقيم والحدود
الشروط: استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.
القيمة الافتراضية—
معلمات الطريقة ودورة حياتها
المعلمةالمواصفات
المعلمةcontent_typeالمواصفاتapplication/json
المعلمةrequiredالمواصفاتmodel, image
المعلمةoptionalالمواصفاتprompt, negative_prompt, end_image, driving_audio, resolution, ratio, duration, prompt_extend, watermark
المعلمةmaterial_typesالمواصفاتtext, image
المعلمةconditionsالمواصفاتاستخدم مُحدِّد التوجيه هذا في Ailoot كما هو تمامًا., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., قدِّم عنوان URL فعليًا لصورتك يمكن الوصول إليه. لا تُقبَل قائمة إلا إذا كان مخطط المعلمة ينص على مصفوفة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة., استخدم الحقل الموثق للنموذج المحدد والخيارات المدرجة؛ وأغفل القيمة الاختيارية غير المحددة.

الأسماء البديلة للطريقة: /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
أقصى جهد للاستدلال
غير محدد عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال

تعرفات تقديرية للمقارنة

الأسعار حسب الإعدادات

طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.

الإعداداتجدول التعرفةالكمية المتوقعةدقة الإخراجوحدة الفوترةشروط الفوترةالرسوم
الإعداداتالتعرفات الأساسية للرموزجدول التعرفةالتعرفة الأساسيةالكمية المتوقعة—دقة الإخراج—وحدة الفوترة—شروط الفوترة—الرسوم
الإدخال · رموز الإدخال · تقدير للمقارنة فقط — / 1K من الرموز
الإخراج · رموز الإخراج · تقدير للمقارنة فقط — / 1K من الرموز
الإدخال · قراءة ذاكرة التخزين المؤقت · تقدير للمقارنة فقط — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت · تقدير للمقارنة فقط — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة · تقدير للمقارنة فقط — / 1K من الرموز
الإعداداتالفيديو الناتججدول التعرفة—الكمية المتوقعة—دقة الإخراج1080Pوحدة الفوترةلكل ثانية فيديوشروط الفوترةتقدير استرشادي للفيديو الناتج بدقة 1080P. تُحدَّد الرسوم النهائية وفق الفاتورة الأصلية المسجلة.الرسوم
الإخراج · الفيديو الناتج · تقدير للمقارنة فقط $0.3 لكل ثانية فيديو

تقدير استرشادي فقط؛ تُحدَّد الرسوم النهائية وفق الفاتورة الأصلية المسجلة.

الإعداداتالفيديو الناتججدول التعرفة—الكمية المتوقعة—دقة الإخراج720Pوحدة الفوترةلكل ثانية فيديوشروط الفوترةتقدير استرشادي للفيديو الناتج بدقة 720P. تُحدَّد الرسوم النهائية وفق الفاتورة الأصلية المسجلة.الرسوم
الإخراج · الفيديو الناتج · تقدير للمقارنة فقط $0.2 لكل ثانية فيديو

تقدير استرشادي فقط؛ تُحدَّد الرسوم النهائية وفق الفاتورة الأصلية المسجلة.

الإعداداتتكلفة التوليد التقديريةجدول التعرفة—الكمية المتوقعةتقدير لتوليد واحددقة الإخراج—وحدة الفوترة—شروط الفوترة—الرسوم
الإخراج · تكلفة التوليد التقديرية · تقدير للمقارنة فقط $0.2 تقدير قبل الإنشاء

هذا التقدير ليس رسومًا إضافية ولا تعرفة ثابتة لعملية التوليد المكتملة.

تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →

أمثلة للطلبات

Ailoot Ultra · Video

curl · أنشئ مرة واحدة واحتفظ بالنتيجة كاملةاقرأ المهمة الأصليةاحفظ كل أصل رقمي مكتمل تملكه
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-i2v", "image": "YOUR_ACCESSIBLE_IMAGE_URL"}')
p['image']=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}/content
  • GET /v1/media/assets
  • GET /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-i2v

الأسماء البديلة لمسارات الطرائق

/v1/videos/generations

معرّفات النماذج ذات الصلة IDs

wan2.7-i2v

FAQ · wan2.7-i2v
ما المدخلات والنتائج المتاحة؟

POST /v1/videos · wan2.7-i2v: text, image → video

ما الحقول التي يستخدمها الطلب؟

POST /v1/videos · wan2.7-i2v: model, prompt, negative_prompt, image, end_image, driving_audio, resolution, ratio, duration, prompt_extend, watermark

المزيد من التفاصيل

اربط Ailoot بخدمة Claude Code أوOpenCode أوHermes أوتطبيقك.

الشركة ومحفظة مشاريعها

الشركة ومحفظة مشاريعها: ملايين العملاء؛ مبيعات بالمليارات شهريًا.

اشتر الرموز بخصم.

خصم اشتراك للعمل المنتظم. الرموز الترويجية حتى 50% على شراء الرموز.

الاشتراك
اختر خطة بخصم لطلباتك المنتظمة.
رمز خصم حتى 50%
أدخل الرمز عند الشراء. يعاد حساب السعر وفق العرض الساري.
المصروفات في السجل
يحفظ النموذج والرموز والمبلغ لكل طلب.

اختر اشتراكا · اعرض أسعار النماذج

اربط API بالمنتج الذي تبيعه.

SaaS والتطبيقات والبوتات وفق العرض واتفاقية ترخيص Ailoot. لإعادة البيع، اطلب ترخيص موزع.

تطبيق تجاري
أضف توليد النص والصور والفيديو والصوت إلى ميزات خدمتك المدفوعة.
ترخيص إعادة البيع
أرسل وصف المشروع وطريقة توفير الوصول. اطلب شروط استخدام وإعادة بيع مكتوبة.
المستندات على الموقع
العرض واتفاقية الترخيص وسياسة معالجة البيانات متاحة قبل الربط.

اطلب ترخيص إعادة بيع · العرض واتفاقية الترخيص