تجاوز إلى المحتوى الرئيسي
العودة إلى المدونة

اتساق الشخصيات في فيديو الذكاء الاصطناعي: كيف تتذكر النماذج الوجوه

تعمق تقني في الابتكارات التي تحافظ على هوية الشخصية عبر اللقطات، من آليات الانتباه إلى تضمينات الهوية.

Alexis · كاتب ذكاء اصطناعي، فحوصات آلية، المسؤولية للمحرر8 min read

اتساق الشخصيات في فيديو الذكاء الاصطناعي: كيف تتذكر النماذج الوجوه

كان أحد أكثر التحديات استمراراً في توليد الفيديو بالذكاء الاصطناعي هو الحفاظ على اتساق الشخصيات عبر اللقطات. اسأل أي صانع أفلام: تنهار القصة في اللحظة التي يتغير فيها وجه بطلك بشكل طفيف بين القطعات. في عام 2025، رأينا أخيراً نماذج تحل هذه المشكلة بابتكارات معمارية تبدو أنيقة بقدر مسار مخطط جيداً لصعود قمة صعبة. دعني أشرح لك كيف تتعلم نماذج الفيديو الحديثة تذكر الوجوه.

تحدي الاتساق

تولد نماذج الانتشار التقليدية كل إطار باستخدام أخذ عينات احتمالي. يؤدي ذلك إلى تباين، وهو مفيد للتنوع لكنه يسبب مشكلة للهوية. عند توليد فيديو مدته 10 ثوانٍ بمعدل 24fps، يتخذ النموذج 240 قراراً متسلسلاً، ولكل منها فرص لانحراف الهوية.

# The core problem: each denoising step introduces variance
def denoise_step(x_t, model, t):
    noise_pred = model(x_t, t)
    # This sampling introduces stochasticity
    x_t_minus_1 = scheduler.step(noise_pred, t, x_t).prev_sample
    return x_t_minus_1  # Slight variations accumulate over frames

واجهت نماذج الفيديو المبكرة مثل Gen-1 وPika 1.0 صعوبات واضحة في هذا الأمر. كانت الشخصيات تتغير في مظهرها، أو تتقدم في العمر قليلاً بين اللقطات، أو تكتسب سمات غير متسقة، وهو ما أطلق عليه الممارسون اسم "انحراف الهوية". جاء الإنجاز من التعامل مع اتساق الشخصيات ليس كمشكلة معالجة لاحقة، بل كمشكلة معمارية.

تضمينات الحفاظ على الهوية: الأساس

كان الابتكار الرئيسي الأول هو إدخال تضمينات هوية مخصصة تستمر عبر عملية التوليد. بدلاً من الاعتماد فقط على تكييف النص، تحافظ النماذج الآن على رموز هوية صريحة:

class IdentityEncoder(nn.Module):
    def __init__(self, embed_dim=768):
        super().__init__()
        self.face_encoder = FaceRecognitionBackbone()  # Pre-trained face model
        self.projection = nn.Linear(512, embed_dim)
        self.identity_bank = nn.Parameter(torch.randn(32, embed_dim))
 
    def encode_identity(self, reference_frame):
        # Extract identity features from reference
        face_features = self.face_encoder(reference_frame)
        identity_embed = self.projection(face_features)
 
        # Cross-attend with learned identity tokens
        identity_tokens = self.cross_attention(
            query=self.identity_bank,
            key=identity_embed,
            value=identity_embed
        )
        return identity_tokens

ثم تُحقن رموز الهوية هذه في عملية الانتشار عند كل خطوة إزالة ضوضاء، لتنشئ ما أحب أن أفكر فيه بوصفه "نقاط ارتكاز"، مثل الحماية الثابتة في مسار تسلق يمكنك دائماً العودة إلى تثبيت الحبل بها عندما تصبح الظروف غير مؤكدة.

الانتباه عبر الإطارات: تعلم الهوية الزمنية

كان الإنجاز الثاني معمارياً: أصبحت النماذج الآن تنتبه صراحة عبر الإطارات عند اتخاذ قرارات بشأن مظهر الشخصية. تدعم محولات الانتشار ذلك بصورة طبيعية عبر معالجة رقع الزمكان، لكن النماذج التي تركز على الاتساق تذهب أبعد من ذلك.

الابتكار الأساسي: طبقات انتباه هوية مخصصة تركز تحديداً على مناطق الوجه عبر البعد الزمني:

class IdentityAwareAttention(nn.Module):
    def __init__(self, dim, num_heads=8):
        super().__init__()
        self.spatial_attn = nn.MultiheadAttention(dim, num_heads)
        self.temporal_attn = nn.MultiheadAttention(dim, num_heads)
        self.identity_attn = nn.MultiheadAttention(dim, num_heads)
 
    def forward(self, x, identity_tokens, face_masks):
        # Standard spatial attention within frames
        x = self.spatial_attn(x, x, x)[0] + x
 
        # Temporal attention across frames
        x = rearrange(x, '(b t) n d -> (b n) t d', t=num_frames)
        x = self.temporal_attn(x, x, x)[0] + x
        x = rearrange(x, '(b n) t d -> (b t) n d', n=num_patches)
 
        # Identity-specific attention using face regions
        face_tokens = x * face_masks.unsqueeze(-1)
        x = self.identity_attn(
            query=x,
            key=identity_tokens,
            value=identity_tokens
        )[0] + x
 
        return x

تتيح آلية الانتباه الثلاثي هذه، التي تجمع بين الانتباه المكاني والزماني والخاص بالهوية، للنموذج اتخاذ قرارات بشأن المظهر مع الرجوع صراحة إلى كل من الهوية المثبتة والإطارات السابقة.

مقارنة مناهج النماذج الحالية

طبقت منصات توليد الفيديو الرئيسية اتساق الشخصيات بطرق مختلفة:

النموذجالنهجطريقة الاتساقالفعالية
Sora 2رقع الزمكانضمني عبر سياق طويلجيد للمقاطع القصيرة
Veo 3توليد متعدد المراحلتثبيت الإطار الرئيسيقوي للحركة البشرية
Gen-4.5تكييف بالمرجعحقن صريح للهويةاتساق الأفضل في فئته
Kling 1.6انتباه مدرك للوجهتتبع مخصص للوجهقوي للقطات القريبة

يستحق Gen-4.5 من Runway ذكراً خاصاً هنا. يجمع نهجهم بين تكييف الصورة المرجعية وما يسمونه "أقفال الهوية"، وهي رموز متعلمة يُدرَّب النموذج على الحفاظ عليها بغض النظر عن القرارات التوليدية الأخرى. من المرجح أن يكون هذا الاختيار المعماري قد ساهم في هيمنتهم على Video Arena.

نموذج الإطار المرجعي

تمثل تحول مهم في عام 2025 في الانتقال نحو التوليد المشروط بالمرجع. بدلاً من توليد الشخصيات بحتاً من أوصاف نصية، تقبل النماذج الآن صوراً مرجعية تحدد المظهر القياسي:

class ReferenceConditionedGenerator:
    def __init__(self, base_model, identity_encoder):
        self.model = base_model
        self.identity_encoder = identity_encoder
 
    def generate(self, prompt, reference_images, num_frames=120):
        # Encode identity from reference images
        identity_embeds = []
        for ref in reference_images:
            identity_embeds.append(self.identity_encoder(ref))
 
        # Pool multiple references for robust identity
        identity_tokens = torch.stack(identity_embeds).mean(dim=0)
 
        # Generate with identity conditioning
        video = self.model.generate(
            prompt=prompt,
            num_frames=num_frames,
            cross_attention_kwargs={
                "identity_tokens": identity_tokens,
                "identity_strength": 0.8  # Balances consistency vs creativity
            }
        )
        return video

تمثل المعلمة identity_strength مفاضلة مهمة. إذا كانت مرتفعة جداً، يصبح النموذج جامداً وغير قادر على إظهار تغيرات التعبير الطبيعية. وإذا كانت منخفضة جداً، يعود الانحراف. إن إيجاد النقطة المثالية، التي تكون عادة حول 0.7-0.85، هو جزء فن وجزء علم.

دوال الخسارة للحفاظ على الهوية

يتطلب تدريب هذه الأنظمة دوال خسارة متخصصة تعاقب صراحة انحراف الهوية:

خسارة الحفاظ على الهوية:

L_identity = ||f(G(z, c)) - f(x_ref)||² + λ_temporal * Σ_t ||f(v_t) - f(v_{t+1})||²

حيث إن f هو مشفر تعرّف على الوجوه مدرب مسبقاً، وG هو المولد، وv_t يمثل الإطارات المولدة. يضمن الحد الأول تطابق الوجوه المولدة مع المراجع، بينما يعاقب الحد الثاني التباين من إطار إلى إطار.

def identity_preservation_loss(generated_video, reference_faces, face_encoder):
    # Per-frame identity matching to reference
    frame_losses = []
    for frame in generated_video:
        face_embed = face_encoder(frame)
        ref_embed = face_encoder(reference_faces).mean(dim=0)
        frame_losses.append(F.mse_loss(face_embed, ref_embed))
 
    reference_loss = torch.stack(frame_losses).mean()
 
    # Temporal consistency between adjacent frames
    temporal_losses = []
    for i in range(len(generated_video) - 1):
        curr_embed = face_encoder(generated_video[i])
        next_embed = face_encoder(generated_video[i + 1])
        temporal_losses.append(F.mse_loss(curr_embed, next_embed))
 
    temporal_loss = torch.stack(temporal_losses).mean()
 
    return reference_loss + 0.5 * temporal_loss

سيناريوهات الشخصيات المتعددة: المشكلة الأصعب

تم حل اتساق الشخصية الواحدة إلى حد كبير. لا تزال سيناريوهات الشخصيات المتعددة، حيث يجب الحفاظ على هويات متعددة ومميزة في الوقت نفسه، صعبة. يمكن لآليات الانتباه أن تخلط بين الهويات، مما يؤدي إلى تسرب السمات بين الشخصيات.

تستخدم المناهج الحالية بنوك هوية منفصلة:

class MultiCharacterIdentityBank:
    def __init__(self, max_characters=8, embed_dim=768):
        self.banks = nn.ModuleList([
            IdentityBank(embed_dim) for _ in range(max_characters)
        ])
        self.character_separator = nn.Parameter(torch.randn(1, embed_dim))
 
    def encode_multiple(self, character_references):
        all_tokens = []
        for idx, refs in enumerate(character_references):
            char_tokens = self.banks[idx].encode(refs)
            # Add separator to prevent conflation
            char_tokens = torch.cat([char_tokens, self.character_separator])
            all_tokens.append(char_tokens)
        return torch.cat(all_tokens, dim=0)

تعمل رموز الفصل مثل حبال التأمين بين المتسلقين، فتحافظ على هويات مميزة حتى عند العمل على مقربة من بعضها بعضاً.

الآثار العملية للمبدعين

بالنسبة إلى من يستخدمون هذه الأدوات بدلاً من بنائها، برزت عدة أنماط عملية:

جودة الصورة المرجعية

تنتج الصور المرجعية عالية الدقة، المضاءة جيداً، ذات التعابير المحايدة نتائج أكثر اتساقاً. يتعلم النموذج الهوية من هذه المراسي، وتنتشر الضوضاء.

مراجع متعددة

يساعد تقديم 3-5 صور مرجعية من زوايا مختلفة النموذج على بناء تمثيل هوية أكثر اكتمالاً. فكّر في الأمر كأنه تثليث لموضع من نقاط متعددة.

مطالبات تصف الهوية

تعزز أوصاف الهوية الصريحة في المطالبات الاتساق البصري. عبارة "امرأة تبلغ 30 عاماً ذات شعر بني قصير وعينين خضراوين" توفر قيوداً إضافية يمكن للنموذج الاستفادة منها.

كيفية إعداد لقطة، خطوة بخطوة

  1. الخطوة 1: اختر إطاراً مرجعياً واحداً تكون فيه إضاءة الوجه متساوية والتعبير محايداً، واحتفظ به كمرساة لكل لقطة في التسلسل.
  2. الخطوة 2: أضف مرجعين إلى أربعة مراجع أخرى من زوايا مختلفة، كي يُثلث تضمين الهوية بدلاً من استقرائه من منظور واحد.
  3. الخطوة 3: صف الهوية في المطالبة بالكلمات نفسها في كل مرة، لأن الوصف الذي ينحرف بين اللقطات يعيد التباين الذي أزالته المراجع.
  4. الخطوة 4: ولّد اختباراً قصيراً قبل التسلسل الكامل وقارن الإطارين الأول والأخير، لأن الانحراف يتراكم ويكون اكتشافه أقل كلفة عند عشر ثوانٍ منه عند تسعين ثانية.

الطريق إلى الأمام

نقترب من عتبة يمكن فيها للفيديو المولد بالذكاء الاصطناعي الحفاظ على اتساق شخصيات كافٍ للسرد القصصي. يجري العمل بنشاط على التحديات المتبقية، بما في ذلك اتساق التعابير الدقيقة، والتوليد طويل الشكل لأكثر من 60 ثانية، والتفاعل بين شخصيات متعددة.

في Bonega.ai، نهتم بشكل خاص بكيفية تكامل هذه التحسينات في الاتساق مع قدرات تمديد الفيديو. إن القدرة على تمديد لقطات موجودة مع الحفاظ على اتساق مثالي للشخصية تفتح إمكانات إبداعية لم تكن ممكنة ببساطة قبل 12 شهراً.

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

اتساق الشخصيات ليس مجرد مقياس تقني. إنه أساس السرد البصري. وفي عام 2025، أصبح هذا الأساس أخيراً صلباً بما يكفي للبناء عليه.

ما الذي تستخدمه، ومتى

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

  • لقطات سردية قصيرة بشخصية متكررة واحدة: نموذج الإطار المرجعي هو الخيار الصحيح. إنه النهج الذي يحافظ على الهوية بأكبر قدر من الموثوقية تحت عشر ثوانٍ، ويمنحك الإطار المرساة شيئاً ملموساً للتكرار عليه عندما تسوء لقطة ما.
  • تسلسلات أطول من دقيقة: توقع الانحراف بغض النظر عن النموذج، وخطط للقطع. إن التوليد في مقاطع أقصر ثم وصلها يكلّف وقتاً أقل من مقاومة تصيير طويل واحد يتدهور في ثلثه الأخير.
  • شخصيتان أو أكثر في الإطار: تعامل مع تسرب الهوية باعتباره النتيجة الافتراضية واختبره مبكراً، لأن الفشل ليس تدريجياً. افصل الشخصيات عبر اللقطات حيثما يسمح المونتاج.
  • شبه فوتوغرافي لشخص حقيقي: لا توجد أي من هذه الطرق موثوقة بما يكفي لتعد بها عميلاً، والتعرض القانوني مشكلة منفصلة عن المشكلة التقنية.

الخلاصة الصادقة هي أن الهوية حُلَّت الآن بصورة جيدة بما يكفي للسرد القصصي، لكنها لم تُحل بعد بصورة كافية للإنتاج غير المراقب. إذا كان تسلسلك قصيراً، وبشخصية واحدة، ويمكنك مراجعة كل لقطة، فستحافظ هذه النماذج على الاتساق. إذا كان أي من هذه الشروط الثلاثة غير متحقق، فخصص ميزانية لإعادة اللقطات.

AlexisAI Engineerمؤلف ذكاء اصطناعي

شخصية مهندس ذكاء اصطناعي. يغطي معماريات النماذج، واختبارات الأداء، وشروحات تحويل الأبحاث إلى تطبيقات عملية في مجال فيديو الذكاء الاصطناعي. كُتبت المسودة باستخدام Claude، ونُشرت بعد فحوصات آلية.

عرض الملف الشخصي

تابع الاستكشاف مع هذه المقالات ذات الصلة

Alibaba HappyHorse-1.0: النموذج الغامض الذي تصدر كل لوائح ترتيب فيديو الذكاء الاصطناعي

ظهر نموذج باسم HappyHorse-1.0 على Artificial Analysis من دون إسناد، وصعد إلى المركز #1 في كل من تحويل النص إلى فيديو وتحويل الصورة إلى فيديو، ثم اتضح أنه تابع لـ Alibaba. إليكم ما نعرفه عن البنية والفريق وما يعنيه ذلك لسوق فيديو الذكاء الاصطناعي.

Google Veo 3.1 Lite: وصول توليد الفيديو بالذكاء الاصطناعي منخفض التكلفة إلى Gemini API

أطلقت Google للتو نموذج Veo 3.1 Lite، وهو نموذج سريع وبأسعار معقولة لتوليد الفيديو بالذكاء الاصطناعي داخل Gemini API. إليك ما يحتاج المطورون معرفته حول الأسعار، ومفاضلات الجودة، ودمج الفيديو في التطبيقات الإنتاجية.

ثورة نموذج العالم في فيديو الذكاء الاصطناعي: كيف تحل محاكاة الفيزياء محل توليد البكسل في عام 2026

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