Phase 08: Generative AI

إنتاج الفيديو

الصورة هي مؤشر ثنائي الأبعاد. الفيديو هو مؤشر ثنائي الأبعاد. النظرية هي نفسها؛ الحساب هو 10-100 مرة أصعب. أثبت سورا OpenAI (فبراير 2024) أنه من الممكن. بحلول عام 2026 فيو 2 ، كلينغ 1.5 ، رينواي جين 3 ، بيكا 2.0 ، و WAN 2.2 فيديو إنتاج السفينة من النص عند 1080p والحجم المفتوح (CogVideoX ، HunyuanVideo ، Mochi-1 ، WAN 2.2) يتخلف 12 شهرا.

Type: Build

Languages: Python

Prerequisites: Phase 8 · 07 (Latent Diffusion), Phase 7 · 09 (ViT), Phase 8 · 06 (DDPM)

Time: ~45 minutes

المشكلة

فيديو 1080p 10 ثانية في 24fps هو 240 إطار من 1920 × 1080 × 3 بيكسل. وهذا هو حوالي 1.5 جيجا غايب من البيانات الخام لكل شريط. انتشار الفضاء بيكسل غير ممكن. تحتاج:

  1. Spatiotemporal compression.جهاز VAE الذي يرمز الفيديوهات، وليس الإطارات، إلى تسلسل من المزقات الفضائية-الوقتية.
  2. Temporal coherence.يجب على الإطارات أن تشارك المحتوى والإضاءة و هوية الكائنات على مدى ثوانٍ.
  3. Compute budget.تدريب الفيديو أكثر تكلفة 10-100 مرة من الصورة لنفس حجم النموذج.
  4. Conditioning.النص، الصورة (الصور الأولى) ، الصوت، أو فيديو آخر. معظم نماذج الإنتاج تقبل كل أربعة.

الهندسة المعمارية التي حلّت هذا هوDiffusion Transformer (DiT)تطبق على المزقات الفضائية-زمانية، تدرب على مجموعات بيانات ضخمة (السرعة، الأسطح، الفيديو). نفس فقدان التوزيع مثل الدروس 06.

المفهوم

!Video diffusion: patchify, DiT, decode

إصلاح

تشفير الفيديو مع VAE 3D (التضغط الفضائي-الزمني المتعلم).[T_latent, H_latent, W_latent, C_latent]. تم تقسيمها إلى بقايا كبيرة[t_p, h_p, w_p].للموديلات في نمط (سورا)t_p = 1(مصطلحات لكل إطار) أو t_p = 2(كل إطارين) فيديو 1080p 10 ثانية يضغط إلى حوالي 20,000-100,000 مساحة.

التغيرات الفضائية-الزمنية

يقوم المحول بمعالجة تسلسل مسطح للمصطلحات. لكل مصطلح تضم ثلاثية أبعاد وضعية (الوقت + y + x). عادة ما يتم تقسيم الاهتمام:

  • Spatial attentionداخل كل إطار من الملامح.
  • Temporal attentionعبر الإطار في نفس الموقع الفضائي.
  • Full 3D attentionهو 16-100x أكثر تكلفة؛ تستخدم فقط في درجة الحل المنخفض أو في البحوث.

تكييف النص

الاهتمام المتقاطع مع مرموز نص كبير (T5-XXL لـ Sora ، CogVideoX-5B يستخدم T5-XXL). مهمة الطلبات الطويلة مجموعة تدريب سورا كانت لديها إعادة الترجمة الكثيفة التي تم إنشاؤها من GPT بمعدل 200 رمز لكل مقطع.

التدريب

فقدان الانتشار القياسي (ε أو v التنبؤ) على الاختفاءات الفضائية-الزمنية. البيانات: فيديو الويب + ~ 100 مليون مقطع منتظمة + عناوين نصية اصطناعية. الحساب: 10,000 + ساعة GPU حتى في مجال بحث صغير.

منظومة الإنتاج لعام 2026

ModelDateMax durationMax resOpen weights?Notable
Sora (OpenAI)2024-0260s1080pNoFirst model to show world simulator properties at scale
Sora Turbo2024-1220s1080pNoProduction Sora at 5x faster inference
Veo 2 (Google)2024-128s4KNoHighest quality + physics in 2025
Veo 32025 Q315s4KNoNative audio and stronger camera control
Kling 1.5 / 2.1 (Kuaishou)2024-202510s1080pNoBest human motion in 2025 Q1
Runway Gen-3 Alpha2024-0610s768pNoProfessional video tools on top
Pika 2.02024-105s1080pNoStrongest character consistency
CogVideoX (THUDM)202410s720pYes (2B, 5B)First open 5B-scale video
HunyuanVideo (Tencent)2024-125s720pYes (13B)Open SOTA late 2024
Mochi-1 (Genmo)2024-105.4s480pYes (10B)Most permissively licensed
WAN 2.2 (Alibaba)2025-075s720pYesStrongest open model mid-2025

الوزن المفتوح يغلق الفجوة أسرع من الفضاء الصوير: HunyuanVideo + WAN 2.2 LoRAs بالفعل تشغيل معظم عمليات العمل مفتوحة المصدر بحلول منتصف عام 2026.

بناءها

code/main.pyيحاكي فكرة DiT الفضائية-الوقتية الأساسية: تصفيف فيديو اصطناعي صغير، وإضافة وضع لكل تصفيح، وتخفيض التسلسل بأكمله مع اهتمام على الطراز المحول على اللصيحات. لا نومبي؛ بيثون نقية. نظهر أن التماسك الزمني يظهر حتى في 1D عندما تشارك اللصيحات الإطار المجاورة مع معبر وموضع التشبيحات.

الخطوة الأولى: إصلاح "فيديو" 1D الاصطناعي

pythondef make_video(T_frames=8, rng=None):
    # a "video" is a sequence of 1-D values following a smooth trajectory
    base = rng.gauss(0, 1)
    return [base + 0.3 * t + rng.gauss(0, 0.1) for t in range(T_frames)]

الخطوة الثانية: وضع الإضافة لكل إطار

pythondef pos_embed(t, dim):
    return sinusoidal(t, dim)

الخطوة الثالثة: يرى المُحدد التسلسل بأكمله

بدلاً من تغيير كل إطار بشكل مستقل، شبكتنا الصغيرة تضم جميع قيم الإطار + إدخالات الموقع وتتوقع الضجيج لجميع الإطار معاً.

الخطوة الرابعة: اختبار التماسك الزمني

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

الفخاخ

  • Independent per-frame sampling = flicker.إذا قمت بتشغيل انتشار الصورة على كل إطار بشكل منفصل ، فإن الصور المصدرة تتبصر لأن ضجيج كل إطار مستقل. تصحيح انتشار الفيديو هذا عن طريق ربط الإطار من خلال الانتباه أو الضجيج المشترك.
  • Naive 3D attention = OOM.الاهتمام الثلاثي الأبعاد الكامل على 1080p غامض لمدة 10 ثواني هو مئات المليارات من العمليات.
  • Data captioning matters more than size.كان التحديث الرئيسي لـ Sora على العمل السابق هو التدريب على عناوين أكثر تفصيلاً بنحو 10 مرات (مقاطع GPT-4 التي تم إعادة تسميتها).
  • First-frame conditioning.معظم نماذج الإنتاج تقبل أيضا صورة كإطار أول. هذا هو وضع "الصورة إلى الفيديو" ؛ يتضمن التدريب هذا التنوع.
  • Physics drift.المقاطع الطويلة (> 10s) تتراكم مع عدم الاتساقات الخفيفة.

استخدمها

Use case2026 pick
Highest-quality text-to-video, hostedVeo 3 or Sora
Camera-controlled cinematicRunway Gen-3 with motion brushes
Character consistency across clipsPika 2.0 or Kling 2.1
Open weights, fast fine-tuneWAN 2.2 + LoRA
Image-to-videoWAN 2.2-I2V, Kling 2.1 I2V, or Runway
Audio-to-video lip syncVeo 3 (native audio) or a dedicated lip-sync model
Video editingRunway Act-Two, Kling Motion Brush, Flux-Kontext (still-frame)

انخفضت تكلفة الفيديو في الثانية عند المساواة الجودة 20 مرات بين عامي 2024 و2026.

أرسله

إنقاذoutputs/skill-video-brief.md. تتخذ مهارة قصيرة الفيديو (مدة، نسبة الجانب، أسلوب، خطة الكاميرا، استنتاج الموضوع، الصوت) والخروج: النموذج + استضافة، الاستعداد السريع (لغة الكاميرا، وصف الموضوع، وصف الحركة) ، البذور + بروتوكول قابلية التكاثر، وقائمة تفتيش QA على مستوى الإطار.

التمارين

  1. Easy.فيcode/main.py، مقارنة الدلتا من الإطار إلى الإطار (أ) عن طريق أخذ العينات المستقلة لكل إطار، (ب) عن طريق أخذ العينات التسلسل المشترك.
  2. Medium.إضافة شرط الإطار الأول: إطار اللوحة 0 إلى قيمة معينة ومعينة الباقي. قياس كيفية انتشار القيمة المثبتة.
  3. Hard.استخدم مكشوفات HuggingFace لتشغيل CogVideoX-2B على جهاز GPU محلي. وقت 20 خطوات استنتاج عند 720p لقطة 6 ثواني. تحليل الاهتمام الفضائي-زماني لتحديد عنق الزجاجة.

الشروط الرئيسية

TermWhat people sayWhat it actually means
Video VAE"3-D VAE"Encoder that compresses (T, H, W, C) → spatiotemporal latent.
Patches"The tokens"Fixed-size 3-D blocks of the latent; input to the DiT.
Factorized attention"Spatial + temporal"Run attention over space, then over time; skip full 3-D attention.
Image-to-video (I2V)"Animate this photo"Model takes an image + text, outputs a video that starts from it.
Keyframe conditioning"Anchor frames"Pin specific frames to control the video's arc.
Motion brush"Directional hint"UI input where the user paints motion vectors onto the image.
Re-captioning"Dense captions"Using an LLM to re-label training clips with detailed prompts.
Flicker"Temporal artifact"Frame-to-frame inconsistency; fixed with coupled denoising.

ملاحظة الإنتاج: تعرضات الفيديو لعرض النطاق النطاق للذاكرة

كليف 1080p 10 ثانية عند 24 صورة في الثانية هو 240 إطار × 1920 × 1080 × 3 ≈ 1.5 جيجا غيغابايت من البيكسلات الخام. بعد ضغط VAE الفيديو 4 × (2 × spatial × 2 × temporal) والمتخفي هو ~ 100 MB لكل طلب. قم بتشغيل هذا من خلال DiT الفضائي-زماني لمدة 30 خطوة في المجموعة 1 وأنت تحرك ~ 3 GB / خطوة من خلال HBM عرض النطاق الذاكري، وليس FLOPs، هو عقدة الزجاجة.

ثلاثة أزرار إنتاج، كل ذلك مباشرة من إدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإدلاء الإ

  • TP across the DiT.النماذج النصية إلى الفيديو هي بشكل روتيني ≥10B. TP = 4 عبر 4 H100s هو معيار؛ PP = 2 × TP = 2 بالنسبة للنماذج من فئة 405B. تنخفض التأخير لكل خطوة بشكل خطي تقريبًا مع TP حتى الجدار القليل.
  • Frame batching = continuous batching.في وقت توليد الفيديو، هو مفهوما مجموعة من الإطارات المتصلة بالاهتمام.t+1بينما الإطارt-1يتم إعادة، إذا سمحت بنية النموذج بتوليد النافذة المنزلقة.
  • Clip-level prefill cache.بالنسبة لصور إلى فيديو، فإن تكييف الإطار الأول يشبه إعداد المقبلات السريعة لدرجة الماجستير: حسابها مرة واحدة، وإعادة استخدامها عبر مرسلات المفكّر الزمني. هذا هو في الواقع كيف-كاش للفيديو.

المزيد من القراءة

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.