مقدمة
تُعد مسألة توليد الأعداد العشوائية داخل نماذج اللغة الكبيرة من المواضيع التي تثير الكثير من الاهتمام بين الباحثين والمطورين. عندما نتحدث عن “رقم عشوائي” ينتجه نموذج مدرب، فإننا في الواقع نتعامل مع توزيع احتمالي يُستخرج من طبقة الـlogits قبل تطبيق دالة softmax. تحويل هذا التوزيع إلى قيمة عددية يمكن قياسها بالبيتات يفتح الباب أمام سؤال عملي: كم عدد التخمينات المطلوبة لاختراق هذا الرقم؟
آلية توليد الأعداد العشوائية في نماذج اللغة الكبيرة
الخطوة الأولى: استخراج الـlogits
بعد تمرير النص المدخل عبر شبكة التحويل (Transformer)، ينتج عن كل موضع زمنية مجموعة من القيم الرقمية تُسمى logits. هذه القيم تمثل “درجة الثقة” لكل رمز محتمل في المفردات. لا يمكن استخدام logits مباشرةً، لذا يتم تحويلها إلى احتمالات عبر دالة softmax.
الخطوة الثانية: حساب التوزيع الاحتمالي
القيم الناتجة من softmax تشكل توزيعًا احتماليًا يضمن أن مجموع الاحتمالات يساوي 1. من هذا التوزيع يمكن استخراج عينة عشوائية باستخدام خوارزمية sampling (مثل top‑k أو nucleus sampling). العينة المختارة هي ما يُعتبر “الرقم العشوائي” في سياق النموذج.
تحويل الاحتمالات إلى بيتات
لتحويل الاحتمالات إلى قياس معلوماتي يُقاس بالبتات، نستخدم مفهوم الإنتروبيا. إنتروبيا توزيع احتمالي p تُحسب بالصيغة H(p) = – Σ p_i log₂(p_i). النتيجة تعطي عدد البتات المتوسطة المطلوبة لتمثيل العينة المختارة. كلما ارتفعت الإنتروبيا، زاد عدد البتات، وبالتالي زاد صعوبة التخمين.
حساب عدد التخمينات المتوقع
عدد التخمينات المتوقع لتخمين قيمة عشوائية يُقاس بالمعادلة:
Guesses = 2^{Bits} حيث Bits هي قيمة الإنتروبيا المحسوبة. إذا كان الإنتروبيا 10 بتات، فإن عدد التخمينات المتوقع هو 2^{10}=1024 تخمين.
جدول مقارنة بين نماذج مختلفة
| النموذج | الإنتروبيا (بت) | عدد التخمينات المتوقع |
|---|---|---|
| GPT‑2 (بدون تعديل) | 9.8 | ≈ 900 |
| GPT‑2 (مُعَدل تعليمات) | 8.5 | ≈ 360 |
| LLaMA‑7B | 10.2 | ≈ 1200 |
| LLaMA‑7B (Instruction‑tuned) | 9.0 | ≈ 512 |
خطوات عملية لتطبيق التحليل
- اختر نموذجًا مفتوح المصدر أو تجاريًا يدعم استخراج الـlogits.
- قم بتمرير نص إدخال ثابت (مثل جملة سؤال) للحصول على logits للموضع الأخير.
- طبق softmax للحصول على توزيع احتمالي.
- احسب الإنتروبيا باستخدام الصيغة H(p) = – Σ p_i log₂(p_i).
- حول الإنتروبيا إلى عدد بتات ثم إلى عدد التخمينات عبر 2^{Bits}.
- قارن النتائج بين النماذج الأساسية والنماذج المُعَدة لتعليمات.
تحليل النتائج ومقارنة الأمان
من الجدول السابق نلاحظ أن النماذج المُعَدة لتعليمات (instruction‑tuned) تميل إلى خفض الإنتروبيا، ما يعني تقليل عدد البتات المتوسطة وبالتالي تقليل عدد التخمينات المطلوبة. هذا السلوك يُفسَّر بكون التعليمات تدفع النموذج إلى إعطاء إجابات أكثر تركيزًا وثقة، ما يقلل العشوائية الظاهرة في المخرجات.
من منظور الأمان السيبراني، انخفاض الإنتروبيا قد يُستغل لتقليل مساحة البحث عند محاولة تخمين رقم عشوائي يُستخدم في تطبيقات مثل توليد رموز التحقق أو مفاتيح الجلسة. لذا يُنصح بتطبيق تقنيات تعزيز العشوائية مثل إضافة ضوضاء (noise) أو استخدام نماذج ذات إنتروبيا أعلى في السيناريوهات الحساسة.
نصائح لتقوية العشوائية
- دمج ناتج النموذج مع مصدر عشوائي خارجي (مثل مولد أرقام عشوائية من نظام التشغيل).
- استخدام خوارزمية post‑processing مثل hash‑based truncation لزيادة تعقيد التوزيع.
- تطبيق تقنية temperature أعلى أثناء الـsampling لرفع الإنتروبيا.
- تحديث النموذج ببيانات تدريب متنوعة لتجنب الانحياز نحو قيم محددة.
خاتمة
تحليل عدد التخمينات لتكسير رقم عشوائي يولده نموذج الذكاء الاصطناعي يعتمد على تحويل توزيع الـlogits إلى إنتروبيا ثم إلى بيتات. النتائج تُظهر أن النماذج المُعَدة لتعليمات تقلل الإنتروبيا، ما قد يُسهل عملية التخمين إذا لم تُتخذ إجراءات تعزيز العشوائية. من خلال اتباع الخطوات المذكورة وتطبيق النصائح الأمنية، يمكن للباحثين والمطورين تقييم مستوى الأمان في أنظمتهم وتحديد ما إذا كان من الضروري تعزيز العشوائية لتفادي الهجمات المحتملة.
ولاستكمال الصورة التقنية بشكل أوسع، يمكنك مراجعة دليل 10 أسرار لمستقبل GEMINI النموذج الاستثنائي.