انتقل إلى المحتوى الرئيسي

تقنيات تقليل الذاكرة

تقنيات تقليل استهلاك الذاكرة تمكّن من تشغيل النماذج اللغوية الكبيرة على أجهزة ذات موارد محدودة.

التكميم (Quantization): 8-bit, 4-bit

التكميم هو تقنية تقلل دقة المعاملات في النموذج لتوفير مساحة الذاكرة:

  • التكميم 8-بت (INT8):

    • يقلل حجم النموذج إلى النصف تقريبًا مقارنة بدقة 16-بت (FP16)
    • فقدان طفيف في الدقة (أقل من 1% غالبًا)
    • متوافق مع معظم الأجهزة الحديثة
    • يعتبر خيارًا جيدًا للتوازن بين الأداء وجودة النتائج
  • التكميم 4-بت (INT4):

    • يقلل حجم النموذج إلى الربع تقريبًا مقارنة بدقة 16-بت
    • فقدان ملحوظ في الدقة لكنه مقبول للعديد من التطبيقات
    • تقنيات مثل GPTQ وAWQ تقلل تأثير فقدان الدقة
    • مثالي للأجهزة ذات الموارد المحدودة جدًا
  • تكميم متعدد المستويات (MLC):

    • استخدام دقة مختلفة لطبقات مختلفة من النموذج
    • تكميم الطبقات الأقل حساسية بدقة أقل (4-بت) والطبقات الحساسة بدقة أعلى (8-بت)
    • يحقق توازنًا مثاليًا بين حجم الذاكرة وجودة النتائج

تقليل الدقة (Precision Reduction)

خفض الدقة العددية المستخدمة في حسابات النموذج:

  • الدقة المختلطة (Mixed Precision):

    • المزج بين FP16 و FP32 في عمليات مختلفة
    • تحسين الأداء مع الحفاظ على الدقة في العمليات الحساسة
    • مدعوم في معظم وحدات معالجة الرسومات الحديثة
  • الدقة المنخفضة (BF16):

    • صيغة الدقة العائمة "brain floating point"
    • تقليل بالذاكرة المستخدمة مع الحفاظ على النطاق الديناميكي
    • متوافق خاصة مع وحدات معالجة الأعصاب (TPUs) ومعالجات شركة NVIDIA الحديثة
  • التحسين التلقائي للدقة:

    • ضبط الدقة ديناميكيًا أثناء الاستدلال
    • تخفيض الدقة في الأجزاء الأقل أهمية من العملية الحسابية

تجزئة المعاملات (Parameter Splitting)

تقنيات لتقسيم النموذج عبر موارد الذاكرة المتاحة:

  • تجزئة النموذج (Model Sharding):

    • تقسيم النموذج إلى أجزاء أصغر يمكن تحميلها في الذاكرة بشكل منفصل
    • توزيع الأجزاء على وحدات معالجة متعددة عند توفرها
    • مناسب خاصة للنماذج الكبيرة جدًا (10+ مليار معامل)
  • الذاكرة الافتراضية (Memory Offloading):

    • نقل أجزاء من النموذج بين وحدة معالجة الرسومات والذاكرة العشوائية أو القرص الصلب
    • السماح بتشغيل نماذج أكبر من سعة وحدة معالجة الرسومات
    • يؤثر على سرعة الاستدلال لكن يتيح تشغيل نماذج أكبر
  • تقنيات التدفق (Streaming):

    • معالجة جزء من النموذج في وقت واحد
    • تحميل وتفريغ أجزاء من النموذج حسب الحاجة
    • مثالي للأجهزة ذات الذاكرة المحدودة جدًا