- متى يكون Wan 2.7 VideoEdit الأداة المناسبة
- النقطة النهائية المعتمدة وسير العمل
- الخطوة 1: الحصول على مفتاح API من Novita AI
- الخطوة 2: فهم شكل الطلب
- الخطوة 3: تقديم أول طلب VideoEdit
- الخطوة 4: استقصاء نقطة نهاية نتيجة المهمة
- الخطوة 5: إضافة صورة مرجعية عندما تحتاج تحكمًا بصريًا أدق
- المعلمات الرئيسية التي يجب أن تهتم بها حقًا
- القيود الموثقة والقيود العملية
- مثال بلغة Python: تقديم واستقصاء
- مثال cURL مع استقصاء شل
- التسعير والائتمانات وما يجب التحقق منه قبل تقدير التكلفة
- أخطاء التكامل الشائعة
- أي نقطة نهاية Wan 2.7 يجب أن تختار؟
- الأسئلة الشائعة
- المقالات الموصى بها
Wan 2.7 VideoEdit على Novita AI هو النقطة النهائية المناسبة عندما يكون لديك بالفعل لقطات وتريد من النموذج إعادة تصميم المشهد أو إعادة كتابته دون إعادة بناء الحركة من الصفر. تقوم بإرسال فيديو مصدر إلى POST https://api.novita.ai/v3/async/wan2.7-videoedit، وتستلم task_id، ثم تقوم بالاستقصاء على GET /v3/async/task-result حتى يصبح المقطع المعدل جاهزًا. يوضح هذا الدليل شكل الطلب الدقيق، ومتى تضيف صورًا مرجعية، وتفاصيل التنفيذ المهمة قبل ربطه في الإنتاج.
متى يكون Wan 2.7 VideoEdit الأداة المناسبة
استخدم Wan 2.7 VideoEdit عندما يكون التوقيت وحركة الكاميرا في مقطع المصدر جيدين بالفعل، وتريد من الذكاء الاصطناعي تغيير ما يراه المشاهد بدلاً من تغيير طريقة تكوين اللقطة.
الاستخدامات النموذجية:
- لديك مقطع حركة حية وتريد تحويله إلى رسم أنمي أو سينمائي أو إخراج بأسلوب معين.
- تحتاج إلى تغيير الملابس أو البيئة أو الدعائم أو الأجواء مع الحفاظ على مسار الحركة الأصلي.
- تريد تطبيق تحويل موجه بنص على اللقطات مع إمكانية تثبيت المظهر بصورة مرجعية.
إنها ليست النقطة النهائية المناسبة عندما:
- تحتاج إلى حركة جديدة تمامًا من النص فقط. استخدم Wan 2.7 T2V بدلاً من ذلك.
- تريد تحريك صورة ثابتة. استخدم Wan 2.7 I2V بدلاً من ذلك.
- تحتاج إلى تمثيل أدوار متعددة الشخصيات مع فتحات مرجعية مسماة عبر مشهد مولّد. استخدم Wan 2.7 R2V بدلاً من ذلك.
هذا التمييز مهم لأن VideoEdit يبدأ من مقطع إدخال. إذا كانت الحركة الأصلية خاطئة، فلن يقوم النموذج بإصلاح تصميم الرقصة لك.
النقطة النهائية المعتمدة وسير العمل
يستخدم Wan 2.7 VideoEdit على Novita AI نقطة نهاية واحدة للتقديم ونقطة النهاية المشتركة لنتيجة المهمة غير المتزامنة:
| الحقل | القيمة |
|---|---|
| نقطة التقديم | POST https://api.novita.ai/v3/async/wan2.7-videoedit |
| استقصاء النتيجة | GET https://api.novita.ai/v3/async/task-result?task_id=<id> |
| رأس المصادقة | Authorization: Bearer $NOVITA_API_KEY |
| نوع المحتوى | application/json |
| الوثائق الرسمية | مرجع API Wan 2.7 VideoEdit |
الـ API غير متزامن. يعيد استدعاء التقديم الناجح task_id، وليس رابط الفيديو النهائي. يجب على تطبيقك الاحتفاظ بمعرّف المهمة هذا وبناء منطق استقصاء أو مهمة خلفية حوله.
الخطوة 1: الحصول على مفتاح API من Novita AI
أنشئ مفتاحًا من إدارة مفاتيح Novita AI واحتفظ به في متغير بيئة:
export NOVITA_API_KEY="your_api_key_here"
لا تقم بتضمين المفتاح مباشرة في كود المتصفح أو تطبيقات الجوال أو ملفات الإعدادات المرفوعة.
الخطوة 2: فهم شكل الطلب
يستخدم Wan 2.7 VideoEdit نص JSON مسطح. لا يقوم الطلب بتداخل الحقول تحت input أو parameters.
كحد أدنى، أرسل:
video_urlprompt
الحقول الاختيارية الموثقة التي ستهمك عادةً هي:
reference_image_urlلمرجع المظهر/الأسلوبresolutiondurationaudio_settingprompt_extendseed
الخطوة 3: تقديم أول طلب VideoEdit
هذا هو أصغر طلب عملي:
curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"prompt": "Turn this office hallway scene into a neon cyberpunk corridor, preserve the walking motion and camera path",
"resolution": "720P",
"duration": 5
}'
الاستجابة المتوقعة:
{
"task_id": "abc123..."
}
لا شيء آخر مضمون في وقت التقديم. تعامل مع الطلب كخطوة إدراج مهمة وليس كاستجابة تحرير متزامنة.
الخطوة 4: استقصاء نقطة نهاية نتيجة المهمة
استخدم task_id الذي تم إرجاعه مع API نتيجة المهمة المشتركة:
curl -s "https://api.novita.ai/v3/async/task-result?task_id=abc123..." \
-H "Authorization: Bearer $NOVITA_API_KEY"
ابنِ حول هذه الحالات:
| الحالة | المعنى |
|---|---|
TASK_STATUS_QUEUED |
تم قبولها وانتظار التنفيذ |
TASK_STATUS_PROCESSING |
التحرير قيد التقدم |
TASK_STATUS_SUCCEED |
الفيديو المحرر جاهز |
TASK_STATUS_FAILED |
فشلت المهمة؛ افحص جسم الاستجابة |
عندما تنجح المهمة، تتضمن الاستجابة مصفوفة videos تحتوي على رابط الإخراج المحرر ومدة صلاحية الرابط. قم بتنزيل هذا الأصل أو نقله فورًا بدلاً من التعامل مع الرابط المستضاف كتخزين دائم.
الخطوة 5: إضافة صورة مرجعية عندما تحتاج تحكمًا بصريًا أدق
reference_image_url اختياري، لكنه يغير سلوك التحرير بطرق مفيدة.
استخدمه عندما:
- تريد أن يتبع المقطع النهائي مظهر شخصية معينة أو زيًا أو لوحة ألوان.
- تريد توجيه المخرجات نحو اتجاه فني محدد بدلاً من ترك كل شيء للأمر النصي.
- حركة الفيديو المصدر صحيحة، لكن هوية المشهد فضفاضة جدًا مع التوجيه النصي فقط.
مثال لطلب مع صورة مرجعية:
curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"reference_image_url": "https://example.com/reference-look.png",
"prompt": "Transform the performer into the look and color palette of the reference image while keeping the same dance timing",
"resolution": "1080P",
"duration": 6,
"audio_setting": "auto"
}'
إذا كانت نتيجتك تستمر في الانحراف، فإن الإصلاح المعتاد ليس أمرًا أطول. بل هو أمر أكثر دقة بالإضافة إلى صورة مرجعية أفضل.
المعلمات الرئيسية التي يجب أن تهتم بها حقًا
| المعامل | النوع | إلزامي | وظيفته |
|---|---|---|---|
video_url |
string | نعم | الفيديو المصدر لتحريره |
prompt |
string | نعم | يصف التحويل المستهدف |
reference_image_url |
string | لا | صورة مرجعية لتثبيت المظهر والأسلوب |
resolution |
string | لا | دقة الإخراج، القيم الموثقة تتضمن 720P و 1080P |
duration |
integer | لا | طول الإخراج المستهدف بالثواني؛ 0 يحافظ على طول فيديو الإدخال الكامل |
audio_setting |
string | لا | يتحكم في سلوك توليد الصوت |
prompt_extend |
boolean | لا | يسمح للنموذج بتوسيع الأوامر القصيرة تلقائيًا |
seed |
integer | لا | يحسن إمكانية إعادة الإنتاج عبر المحاولات المتكررة |
تحقق من مرجع المعاملات الرسمي قبل افتراض القيم الافتراضية. تتغير حقول نماذج الفيديو أكثر من حقول نماذج النص، ومن السهل أن تخطئ في قيود الإخراج إذا اعتمدت على الذاكرة.
القيود الموثقة والقيود العملية
اعتبارًا من 29 يوليو 2026، توثق وثائق Novita الرسمية لـ Wan 2.7 VideoEdit هذه الحدود:
- الدقة المدعومة:
720Pو1080P durationالافتراضي هو0، مما يعني طول فيديو الإدخال الكامل؛ نطاق طول الإخراج الصريح الموثق هو 2 إلى 10 ثوانٍ عند تعيينه- تنسيقات فيديو الإدخال:
mp4وmov - حد حجم فيديو الإدخال: حتى 100 ميغابايت
- تنسيقات الصور المرجعية:
jpg،jpeg،png،webp - حد حجم الصورة المرجعية: حتى 20 ميغابايت
- تنسيق فيديو الإخراج:
mp4
من السهل تفويت هذه القيود عند بناء خط وسائط عام. أكثر فشل تكامل شيوعًا هو إرسال ملف مصدر أطول أو أكبر مما تقبل به نقطة النهاية.
آثار عملية:
- إذا كنت تريد أن يحافظ المقطع المحرر على طول المصدر، فاحذف
durationأو اضبطه على0بدلاً من فرض قص من 2 إلى 10 ثوانٍ. - إذا كنت تختبر الأوامر بسرعة، استخدم
720Pأولاً وانتقل إلى1080Pفقط عندما يعمل التحويل.
مثال بلغة Python: تقديم واستقصاء
import os
import time
import requests
API_KEY = os.environ["NOVITA_API_KEY"]
BASE_URL = "https://api.novita.ai"
HEADERS = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
}
def submit_video_edit(
video_url: str,
prompt: str,
reference_image_url: str | None = None,
resolution: str = "720P",
duration: int = 0,
audio_setting: str = "auto",
prompt_extend: bool = True,
seed: int | None = None,
) -> str:
payload = {
"video_url": video_url,
"prompt": prompt,
"resolution": resolution,
"duration": duration,
"audio_setting": audio_setting,
"prompt_extend": prompt_extend,
}
if reference_image_url:
payload["reference_image_url"] = reference_image_url
if seed is not None:
payload["seed"] = seed
resp = requests.post(
f"{BASE_URL}/v3/async/wan2.7-videoedit",
headers=HEADERS,
json=payload,
timeout=60,
)
resp.raise_for_status()
return resp.json()["task_id"]
def poll_result(task_id: str, interval: int = 5, timeout: int = 300) -> dict:
deadline = time.time() + timeout
while time.time() < deadline:
resp = requests.get(
f"{BASE_URL}/v3/async/task-result",
headers=HEADERS,
params={"task_id": task_id},
timeout=60,
)
resp.raise_for_status()
data = resp.json()
status = data.get("task", {}).get("status")
if status == "TASK_STATUS_SUCCEED":
return data
if status == "TASK_STATUS_FAILED":
reason = data.get("task", {}).get("reason", "unknown")
raise RuntimeError(f"Task {task_id} failed: {reason}")
time.sleep(interval)
raise TimeoutError(f"Task {task_id} did not complete within {timeout}s")
if __name__ == "__main__":
task_id = submit_video_edit(
video_url="https://example.com/source-clip.mp4",
prompt="Change the street scene into a rainy retro-futurist city at night, preserve the original tracking shot",
reference_image_url="https://example.com/reference-frame.png",
resolution="720P",
duration=0,
seed=42,
)
print(f"Submitted task: {task_id}")
result = poll_result(task_id)
video = result["videos"][0]
print("Edited video URL:", video["video_url"])
print("URL TTL:", video["video_url_ttl"])
مثال cURL مع استقصاء شل
TASK_ID=$(curl -s -X POST https://api.novita.ai/v3/async/wan2.7-videoedit \
-H "Authorization: Bearer $NOVITA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://example.com/source-clip.mp4",
"prompt": "Convert the clip into a hand-drawn anime city scene, preserve the running motion",
"resolution": "720P",
"duration": 0,
"prompt_extend": true
}' | jq -r '.task_id')
while true; do
RESULT=$(curl -s "https://api.novita.ai/v3/async/task-result?task_id=$TASK_ID" \
-H "Authorization: Bearer $NOVITA_API_KEY")
STATUS=$(echo "$RESULT" | jq -r '.task.status')
if [ "$STATUS" = "TASK_STATUS_SUCCEED" ]; then
echo "$RESULT" | jq -r '.videos[0].video_url'
break
fi
if [ "$STATUS" = "TASK_STATUS_FAILED" ]; then
echo "$RESULT"
break
fi
sleep 5
done
إذا كنت تتكامل من خدمة خلفية، فلفّ حلقة الاستقصاء هذه في عامل بدلاً من إبقاء طلب المستخدم مفتوحًا طوال نافذة التوليد.
التسعير والائتمانات وما يجب التحقق منه قبل تقدير التكلفة
تكشف Novita AI عن التسعير لنماذج الفيديو على صفحات النماذج والتسعير الخاصة بها، لكن هذه الأرقام قد تتغير. بالنسبة لـ Wan 2.7 VideoEdit، تحقق من الأسعار الحالية مباشرة من صفحة تسعير Novita AI وإدخال النموذج المرتبط من الوثائق الرسمية قبل نشر تقديرات التكلفة التي يواجهها العميل.
لتخطيط الهندسة، الافتراض الأكثر أمانًا هو:
- التكلفة تتدرج مع إعدادات المقطع المولد، وليس فقط مع رسم طلب واحد ثابت.
- تشغيلات
1080Pهي خط الأساس الخاطئ للتكرار. - المقاطع الأقصر أسهل في التحقق وأرخص في التصحيح.
إذا كنت تبني أدوات داخلية، تعامل مع البحث عن التسعير كشأن تكوين، وليس كثابت مضمن في الكود.
أخطاء التكامل الشائعة
إرسال تحميلات خام بدلاً من رابط قابل للوصول. يتوقع شكل الطلب الموثق مدخلات وسائط قائمة على الرابط. تأكد من أن مقطع المصدر متاح بالفعل على رابط ثابت يمكن لخادمك الرجوع إليه.
استخدام VideoEdit لتغييرات الحركة. VideoEdit هي نقطة نهاية للتحويل، وليست نقطة نهاية لتصميم الرقصات. إذا كانت الحركة الأصلية خاطئة، أعد التوليد باستخدام T2V أو I2V.
الخلط بين حدود الفيديو المصدر والصورة المرجعية. الفيديو المصدر هو الأصل الأكبر: mp4/mov، حتى 100 ميغابايت. الحد الأصغر 20 ميغابايت ينطبق على reference_image_url، وليس video_url.
الاستقصاء بقوة شديدة. ضرب نقطة نهاية نتيجة المهمة كل ثانية غير ضروري لمهام الفيديو التي تستغرق عدة ثوانٍ. فاصل زمني من 5-10 ثوانٍ عادة ما يكون نقطة بداية أفضل.
تجاهل مدة صلاحية الرابط. رابط النتيجة مؤقت. قم بتخزين الأصل فورًا إذا كان المقطع المحرر مهمًا في المراحل اللاحقة.
تجاهل خصوصية الأمر. “اجعله أفضل” ليس أمر تحرير. صف الأسلوب المستهدف والبيئة ومعالجة الموضوع والحركة التي يجب أن تبقى دون تغيير.
أي نقطة نهاية Wan 2.7 يجب أن تختار؟
استخدم هذه القاعدة السريعة:
- اختر VideoEdit عندما يكون لديك بالفعل فيديو مصدر.
- اختر I2V عندما يكون لديك صورة مصدر أو تريد الاستمرار من سير عمل قائم على الصور الثابتة.
- اختر T2V عندما يكون لديك نص فقط.
- اختر R2V عندما يكون ثبات الهوية والتحكم في الشخصيات المرجعية أكثر أهمية من تحرير مقطع موجود.
هذا الفصل هو ما يبقي تكاملك بسيطًا. غالبًا ما تفرط الفرق في استخدام تحويل النص إلى فيديو للمهام التي هي في الحقيقة مشاكل تحرير قائمة على الأوامر النصية.
الأسئلة الشائعة
ما هي نقطة نهاية Novita AI لـ Wan 2.7 VideoEdit؟
POST https://api.novita.ai/v3/async/wan2.7-videoedit. تعيد task_id، ثم تستقصي GET https://api.novita.ai/v3/async/task-result?task_id=<id> لاكتمال المهمة.
هل يمكنني تقديم صورة مرجعية مع الفيديو المصدر؟
نعم. يدعم شكل الطلب الموثق reference_image_url اختياريًا إلى جانب video_url و prompt، وهو مفيد لتوجيه المظهر النهائي بشكل أكثر دقة.
ما طول الفيديو الذي يدعمه Wan 2.7 VideoEdit على Novita AI؟
كما هو موثق في 29 يوليو 2026، القيمة الافتراضية لـ duration هي 0، مما يعني طول فيديو الإدخال الكامل. إذا قمت بتعيين duration بشكل صريح، فإن النطاق الموثق هو 2-10 ثوانٍ.
هل يقبل Wan 2.7 VideoEdit فيديوهات مصدر كبيرة؟
نعم، ضمن الحد الموثق. تسرد الوثائق الرسمية إدخال mp4/mov حتى 100 ميغابايت. الحد المنفصل 20 ميغابايت ينطبق على الصورة المرجعية الاختيارية.
هل يجب أن أستخدم Wan 2.7 VideoEdit أم Wan 2.7 I2V؟
استخدم VideoEdit إذا كان لديك بالفعل مقطع وتريد تحويله. استخدم I2V إذا كانت نقطة البداية لديك صورة ثابتة أو سير عمل يقوده الصور.
