بث مباشر 18.11 · الدفعة 318 نوفمبر، 19:00 بتوقيت موسكو — ورشة عملية مجانية لوكلاء الذكاء الاصطناعي · الدفعة 3 تبدأ 23.11ورشة 18 نوفمبر ←الدفعة 3 (23.11)
إصدارAPI / منتج · جاهز للعملHabr AI→ المصدر

شخصية ثابتة في Gemini API: اختبار على 18 لقطة يُظهر أن الموجّه العاري يُبعد الملابس عن المرجع

لا تملك أداة توليد الصور ذاكرة بين الطلبات، لذا فإن «الشخصية الثابتة» هي انضباط من جهة العميل: بطاقة نصية ثابتة للبطل ومراجع مرجعية في كل طلب. أجرى المؤلف 18 عملية توليد لمشهد بطلين بثلاثة أنواع من الموجّهات. لم تتغير الوجوه ولا مرة، لكن مع الموجّه العاري ابتعدت الملابس والإكسسوارات عن المرجع وظهرت كتابات في الخلفية.

معالج بواسطة الذكاء الاصطناعي من Habr AI؛ بتحرير Hamidun News
شخصية ثابتة في Gemini API: اختبار على 18 لقطة يُظهر أن الموجّه العاري يُبعد الملابس عن المرجع
المصدر: Habr AI. كولاج: Hamidun News.
استمع للمقال
بطاقة الحقائق والأرقام
المعيارالتفاصيل
المصدر الأصليHabr AI ↗
رئيس التحرير
حقيقة رئيسية #1احتفظ ببطاقة البطل في الكود وأدرجها في كل موجّه دون تعديل
رقّم الصور وعدّد العلامات المميزة6 لقطات من 6 بلا أخطاء
افحص السلسلة بورقة مصغّراتالعين تتجاوز السترة الداكنة في لقطة منفردة

إذا كنت تصنع مقاطع فيديو أو إعلانات بالأبطال أنفسهم، فالمشكلة الرئيسية مألوفة: في اللقطة الثالثة لم تعد البطلة تشبه نفسها، وفجأة يتبادل شخصان في مشهد واحد وجهيهما أو ملابسهما. استعرض كاتب على Habr كيفية التعامل مع ذلك عبر Gemini API، واختبر أساليبه بقياس صغير.

لماذا يتغير الوجه

لا تملك أداة التوليد ذاكرة بين الطلبات. كل استدعاء يبني اللقطة من جديد من النص والصور المرفقة. وهذا يعني أن ثبات البطل يجب ضمانه من جهة العميل.

يقترح المؤلف أربعة عناصر:

  • البطاقة (Паспорт): كتلة نصية ثابتة تصف المظهر تُدرج في كل موجّه حرفيًا بايتًا ببايت. يوضع فيها غير المتغير فقط: العمر والشعر والعينان والعلامات المميزة. لا يجوز كتابة الابتسامة أو الملابس فيها، وإلا ستظهر الابتسامة في كل لقطة.
  • المرجع: صورة شخصية أمامية على خلفية رمادية بإضاءة متساوية ووجه محايد. تُرفق كمرجع في كل طلب.
  • الزوايا: أمامية وثلاثة أرباع وجانبية وخلفية. تُولَّد كل زاوية بطلب منفصل مع المرجع كمدخل. وعندما طلب المؤلف الزوايا الأربع في صورة واحدة، أدار النموذج الرأس إلى اليسار والقدمين إلى اليمين.
  • فحص كل لقطة بالعين بالحجم الكامل.

تقنيًا الأمر بسيط: في generateContent تُرسل الصور بصيغة inlineData في مصفوفة parts نفسها التي يوجد فيها النص. وترتيب الأجزاء هو ترتيب الصور الذي يشير إليه الموجّه. الأفضل تحديد نسبة الأبعاد بالمعامل imageConfig.aspectRatio: فالسطر في الموجّه يبقى مجرد تلميح، أما المعامل فيُنفَّذ.

القياس: شخصان في اللقطة

استخدم المؤلف gemini-3.1-flash-image وزوجين من الأبطال: امرأة ورجل، وامرأتان مختلفتان بوضوح. ثلاثة أنواع من الموجّهات، وثلاث لقطات لكل زوج، أي 18 عملية توليد في المجموع:

  1. العاري: «هذان الاثنان يلتقيان في مقهى»، بلا أدوار ولا علامات مميزة.
  2. بالأدوار: من يجلس ومن يقف ومن على اليسار. من دون ترقيم الصور.
  3. بالترقيم: «Image 1 هي المرأة: …»، «Image 2 هو الرجل: …»، العلامات المميزة بالكلمات ومنع صريح لخلط الوجوه.

لم تتبدل الوجوه ولا مرة، ولم يجلس أحد معطيًا ظهره. وظهر الفرق في التفاصيل. ففي الموجّه العاري ظهرت على البطلة في لقطة من ثلاث سترة داكنة وسوار ذهبي غير موجودين في المرجع، وبدت أكبر سنًا. وفي لقطة أخرى ظهرت على لوحة المقهى عبارة «EVENING SPECIALS». أما نوع الأدوار فحافظ على الوجوه والملابس في 6 لقطات من 6، لكن في لقطتين ظهرت لافتات في الخلفية رغم وجود no text في الموجّه. وأعطى نوع الترقيم 6 من 6 بلا أخطاء وبلا كتابات.

الاستنتاج الرئيسي: خطر الموجّه العاري ليس تبادل الوجوه، بل انحراف الملابس والإكسسوارات عن المرجع. ثلاث لقطات لكل نوع عينة صغيرة، ولا يمكن الحديث عن «انخفاض الأخطاء بنسبة N بالمئة». كما أن المقارنة ليست مثالية: وقت اليوم مختلف في الموجّهات العارية، وكان no text موجودًا في موجّهات الأدوار فقط. ولم يختبر المؤلف بطلين متشابهين، مثل أسمرين بشعر داكن يرتديان بدلتين.

الفيديو وOmni

للفيديو يستخدم المؤلف gemini-omni-1.1-flash عبر Interactions API. تُحدَّد أدوار الصور بوسوم داخل النص مباشرة: <FIRST_FRAME> للقطة الأولى و<IMAGE_REF_n> لمراجع الأبطال. والترتيب العملي هو: أولًا تجميع اللقطة التي فيها البطلان وفحصها، ثم تمريرها كلقطة أولى وإضافة المراجع.

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

منذ 5 نوفمبر أصبح gemini-omni-1.2-flash متاحًا، ومنذ 3 ديسمبر ستُحوَّل الطلبات الموجهة إلى 1.1 إليه. صارت المدة فيه معاملًا (من 3 إلى 15 ثانية)، وانخفض سعر ثانية 720p من 0,10 إلى 0,07 دولار. لكن في أحد الاختبارات لم تعمل وسوم اللقطة الأولى والأخيرة. وساعدت عبارة مباشرة في بداية الموجّه: «The video starts exactly on the first image and ends exactly on the second image». أما الخيار بوسم FIRST_FRAME واحد وIMAGE_REF على 1.2 فلم يُختبر.

ماذا تفعل عمليًا

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

من حيث التكلفة، تبلغ كلفة صورة 1K نحو 0,067 دولار، والقياس كله من 18 لقطة نحو 1,21 دولار، وكلّف مقطع مدته 6 ثوانٍ على Omni 1.1 مبلغ 0,63 دولار.

القصة

أسئلة وأجوبة حول الخبر

ما أبرز التفاصيل حول لماذا يتغير الوجه؟

لا تملك أداة التوليد ذاكرة بين الطلبات. كل استدعاء يبني اللقطة من جديد من النص والصور المرفقة. وهذا يعني أن ثبات البطل يجب ضمانه من جهة العميل. يقترح المؤلف أربعة عناصر: البطاقة (Паспорт): كتلة نصية ثابتة تصف المظهر تُدرج في كل موجّه حرفيًا بايتًا ببايت. يوضع فيها غير المتغير فقط: العمر والشعر والعينان والعلامات المميزة. لا يجوز كتابة الابتسامة أو الملابس فيها، وإلا ستظهر الابتسامة في كل لقطة. المرجع: صورة شخصية أمامية على خلفية رمادية بإضاءة متساوية ووجه محايد. تُرفق كمرجع في كل طلب.

ما أبرز التفاصيل حول القياس: شخصان في اللقطة؟

استخدم المؤلف gemini-3.1-flash-image وزوجين من الأبطال: امرأة ورجل، وامرأتان مختلفتان بوضوح. ثلاثة أنواع من الموجّهات، وثلاث لقطات لكل زوج، أي 18 عملية توليد في المجموع: العاري: «هذان الاثنان يلتقيان في مقهى»، بلا أدوار ولا علامات مميزة. بالأدوار: من يجلس ومن يقف ومن على اليسار. من دون ترقيم الصور. بالترقيم: «Image 1 هي المرأة: …»، «Image 2 هو الرجل: …»، العلامات المميزة بالكلمات ومنع صريح لخلط الوجوه. لم تتبدل الوجوه ولا مرة، ولم يجلس أحد معطيًا ظهره. وظهر الفرق في التفاصيل.

ما أبرز التفاصيل حول الفيديو وOmni؟

للفيديو يستخدم المؤلف gemini-omni-1.1-flash عبر Interactions API. تُحدَّد أدوار الصور بوسوم داخل النص مباشرة: <FIRST_FRAME> للقطة الأولى و<IMAGE_REF_n> لمراجع الأبطال. والترتيب العملي هو: أولًا تجميع اللقطة التي فيها البطلان وفحصها، ثم تمريرها كلقطة أولى وإضافة المراجع. يقرر النموذج بنفسه من سيكون أين. فعند طلب «يجلس مقابله» جلس البطل بجانبه لأنه كان واقفًا إلى الجانب. وإذا كان التموضع مهمًا، فيلزم لقطة أولى يكون فيها الشخصان جالسين أصلًا، ويبقى في الفيديو الفعل فقط.

ZK
جمال حميدون — مدير المنتجات في Alpina Digital ومدير منتج AlpinaGPT. يبني منتجات الذكاء الاصطناعي منذ 2019. بدأ Hamidun News كمشروع شخصي ثم أصبح مُجمِّعًا إنتاجيًا بأكثر من 6000 قارئ.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
ما رأيك؟
جارٍ تحميل التعليقات…