AI

نشر ذكاء اصطناعي أذكى: إتقان PEFT للاستدلال على الحافة منخفض زمن الاستجابة

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

اختناق الذاكرة وزمن الاستجابة في ذكاء الحافة

يتضمن الضبط الدقيق التقليدي تحديث جميع الأوزان في نموذج مُدرَّب مسبقاً. بالنسبة لنموذج يحتوي على مليارات المعاملات، يتطلب ذلك تحميل النموذج بأكمله إلى الذاكرة وتخزين نقاط تفتيش كاملة للتدرجات. على جهاز حافة ذاكرة الوصول العشوائي (RAM) محدودة (مثل 4 جيجابايت أو 8 جيجابايت)، غالباً ما يكون ذلك مستحيلاً. علاوة على ذلك، يؤدي الحمل الحسابي الناتج عن حساب التدرجات لمليارات المعاملات إلى استهلاك عالٍ للطاقة وتوليد حرارة، وهو أمر غير مقبول للأجهزة التي تعمل بالبطاريات.

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

اختيار استراتيجية PEFT المناسبة: LoRA و QLoRA

بينما توجد عدة طرق لـ PEFT، يُعد التكيّف منخفض الرتبة (LoRA) والتكيّف منخفض الرتبة المُكمَّم (QLoRA) الأنسب للنشر على الحافة بسبب كفاءتهما وسهولة تنفيذهما.

يقوم LoRA بتقريب تحديثات الأوزان باستخدام التحلل منخفض الرتبة. بدلاً من تحديث مصفوفة W بأبعاد (d, k)، يقدم LoRA مصفوفتين أصغر A و B برتبة r، حيث r << min(d, k). يتم حساب التحديث كالتالي ΔW = BA.

يأخذ QLoRA هذا الأمر خطوة أبعد من خلال تكميم النموذج الأساسي إلى دقة 4 بت. يقلل هذا من البصمة الذاكرة للنموذج المجمد بنسبة تصل إلى 75% مقارنةً بدقة 16 بت، مما يسمح بوضع نماذج أكبر في أجهزة حافة أصغر. تظل أوزان المحوِلة بدقة أعلى للحفاظ على سعة التعلم.

التنفيذ العملي باستخدام مكتبة Hugging Face PEFT

توفر مكتبة Hugging Face peft واجهة بسيطة لتنفيذ LoRA. فيما يلي مثال عملي لتكوين محوِلة LoRA لنموذج محوّل (transformer).

from peft import LoraConfig, get_peft_model
from transformers import AutoModelForCausalLM

# تحميل النموذج الأساسي الخاص بك
base_model_id = "mistralai/Mistral-7B-v0.1"
model = AutoModelForCausalLM.from_pretrained(base_model_id)

# تكوين معاملات LoRA
lora_config = LoraConfig(
    r=8,                  # رتبة مصفوفة التحديث
    lora_alpha=32,        # عامل القياس
    target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
    lora_dropout=0.05,
    bias="none",
    task_type="CAUSAL_LM"
)

# تغليف النموذج بـ PEFT
model = get_peft_model(model, lora_config)

# التحقق من المعاملات القابلة للتدريب للتأكد من الكفاءة
model.print_trainable_parameters()

في هذا التكوين، يتم تكيف طبقات الإسقاط الانتباهية فقط. للنشر على الحافة، ستقوم عادةً بحفظ أوزان المحوِلة فقط باستخدام model.save_pretrained("adapter_weights"). عند وقت الاستدلال، تقوم بتحميل النموذج الأساسي ودمج أوزان المحوِلة مرة أخرى في النموذج الأساسي أو إبقائها منفصلة، اعتماداً على قدرات محرك التشغيل الخاص بك (مثل ONNX Runtime أو TensorRT).

تحسين زمن الاستجابة للاستدلال

التدريب هو نصف المعركة فقط؛ فإن تحسين الاستدلال حاسم لأداء الحافة. بعد الضبط الدقيق، فكر في الخطوات التالية:

  1. دمج النموذج: دمج أوزان LoRA في أوزان النموذج الأساسي. يلغي هذا الحاجة إلى الجمع الديناميكي أثناء الاستدلال، والذي قد يضيف حملاً زائداً.
  2. التكميم: تصدير النموذج المدمج إلى تنسيقات أعداد صحيحة 8 بت أو 4 بت. تدعم معظم مسرعات الحافة (NPUs، GPUs) الاستدلال INT8 بشكل أصلي، مما يوفر تسريعات كبيرة.
  3. تحسين الرسم البياني: تحويل النموذج إلى ONNX واستخدام عمليات مثل تحسينات MatMul و LayerNormalization لتقليل حمل إطلاق النواة (kernel launch overhead).

الخاتمة

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

Share: