Efficient Mixture-of-Experts LLM Inference with Apple Silicon NPUs
تقدم هذه الورقة NPUMoE، وهو محرك استدلال وقت التشغيل يعمل على تسريع نماذج اللغات الكبيرة من نوع "خليط الخبراء" (Mixture-of--Experts) على شرائح Apple Silicon عبر ترحيل الحسابات الثابتة إلى المحرك العصبي (Neural Engine)، مع استخدام المعايرة غير المتصلة وتقنيات متخصصة للتغلب على تحديات التوجيه الديناميكي والمزامنة، مما يؤدي إلى تحسينات كبيرة في زمن الاستجابة، وكفاءة الطاقة، واستخدام وحدة المعالجة المركزية.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
إليك شرح لورقة بحثية بعنوان "Efficient Mixture-of-Experts LLM Inference with Apple Silicon NPUs" باستخدام لغة بسيطة وتشبيهات إبداعية.
الصورة الكبيرة: مشكلة "المستشفى التخصصي"
تخ fear مستشفى ضخمًا (النموذج الذكي - AI Model) يضم آلاف الأطباء (الخبراء - Experts).
- الطريقة القديمة (النماذج الكثيفة - Dense Models): في كل مرة يدخل فيها مريض، يتعين على كل طبيب في المستشفى فحصه، وكتابة تقرير عنه، ثم تمريره إلى الغرفة التالية. هذا الأمر بطيء ومرهق، حتى لو لم يكن لدى معظم الأطباء ما يقدمونه.
- الطريقة الجديدة (خليط الخبراء - Mixture-of-Experts / MoE): هذا هو "المستشفى التخصصي". عندما يصل المريض، يقوم موظف الاستقبال (الموجه - Router) بفحص أعراضه ويستدعي فقط طبيبين أو ثلاثة من المتخصصين الذين يعرفون بالفعل كيفية علاج هذه المشكلة. وبقية المستشفى يظل هادئاً. هذا أسرع بكثير ويوفر الطاقة.
المشكلة: تمتلك أجهزة آبل (الهواتف واللابتوبات) محركاً متخصصاً فائق السرعة يسمى الـ ANE (المحرك العصبي - Neural Engine). تخيل الـ ANE كأنه خط تجميع عالي السرعة. إنه فعال للغاية في أداء نفس المهمة المتكررة مراراً وتكراراً (مثل تجميع السيارات). ومع ذلك، فهو يكره التغيير. لا يمكنه التعامل مع "مستشفى تخصصي" حيث يستدعي موظف الاستقبال أطباء مختلفين بشكل عشوائي في كل مرة يصل فيها مريض. خط التجميع يصاب بالارتباك، ويتوقف، ويضطر لإعادة الضبط باستمرار، مما يهدر الوقت.
الحل: NPUMoE (مدير المستشفى الذكي)
ابتكر المؤلفون نظاماً يسمى NPUMoE. يعمل كمدير ذكي يقوم بترجمة سير العمل الفوضوي لـ "المستشفى التخصصي" إلى تنسيق يمكن لـ "خط التجميع" (NPU) فهمه، دون فقدان فوائد السرعة.
إليك الحيل الثلاث الرئيسية التي استخدموها، مشروحة بالتشبيهات:
1. المستويات الثابتة (Static Tiers): "غرف الانتظار المناسبة للحجم"
- المشكلة: في نموذج MoE حقيقي، قد يستقبل بعض الأطباء 100 مريض في الساعة، بينما يستقبل آخرون مريضين فقط. إذا بنيت غرفة انتظار للطبيب الأكثر انشغالاً (100 مقعد)، فإن الطبيب الهادئ سيهدر 98 مقعداً. وإذا بنيت غرفة صغيرة، سيمتلئ الطبيب المشغول بسرعة.
- الحل: يقوم النظام بإجراء "تجربة تشغيل" مسبقة لمعرفة الأطباء الأكثر شعبية.
- الأطباء المشهورون: يحصلون على غرفة انتظار كبيرة (المستوى 1).
- الأطباء متوسطو الشهرة: يحصلون على غرفة انتظار متوسطة (المستوى 2).
- الأطباء النادرون: يحصلون على غرفة انتظار صغيرة (المستوى 3).
- لماذا يساعد ذلك: لم يعد خط التجميع (NPU) بحاجة للتخمين بشأن الأحجام. هو يعرف فقط: "حسناً، لدينا 3 غرف كبيرة، و5 غرف متوسطة، و10 غرف صغيرة". يمكنه إعداد خط التجميع بشكل مثالي لهذه الأحجام الثابتة، مما يلغي الفوضى الناتجة عن تغيير الحجم أثناء التشغيل.
2. تنفيذ الخبراء المجموع (Grouped Expert Execution): استراتيجية "الحافلة مقابل التاكسي"
- المشكلة: إذا أرسل النظام كل طبيب بمفرده إلى خط التجميع، فسيتوقف الخط في كل مرة للسماية بمرور شخص جديد. الوقت المستغرق في التوقف والبدء (تكلفة الإرسال) يكون أطول من الوقت المستغرق في العمل الفعلي.
- الحل: بدلاً من إرسال الأطباء واحداً تلو الآخر (تاكسي)، يضعهم النظام في حافلة.
- يقوم بتجميع 8 أطباء معاً في "حافلة" واحدة (رسم بيائي حسابي واحد).
- خط التجميع يحتاج للتوقف مرة واحدة فقط لتحميل الحافلة بأكملها.
- حتى لو كانت بعض المقاعد في الحافلة فارغة (حشو/Padding)، فإنه لا يزال أسرع بكثير من إرسال 8 سيارات تاكسي منفصلة.
- لماذا يساعد ذلك: يعظم سرعة خط التجميع من خلال إبقائه مشغولاً بكتل كبيرة من العمل بدلاً من الانقطاعات الصغيرة المزعجة.
3. الإقامة الواعية بالحمل (Load-Aware Residency): نوبة "الساخن مقابل البارد"
- المشكلة: أحياناً، يتلقى بعض الأطباء عدداً قليلاً جداً من المرضى لدرجة أنه من الأسرع تركهم يعملون في المكتب الرئيسي (CPU) بدلاً من قيادتهم طوال الطريق إلى خط التجميع (NPU). وقت الرحلة (المزامنة) طويل جداً بالنسبة لمهمة صغيرة كهذه.
- الحل: يراقب النظام حركة المرور.
- الخبراء الساخنون (المشغولون): يبقون في خط التجميع (NPU) لأن لديهم ما يكفي من العمل لتبرير الرحلة.
- الخبراء الباردون (الخاملون): يبقون في المكتب الرئيسي (CPU). لا يرهق النظام نفسه بإرسالهم إلى خط التجميع لأن الرحلة ستستغرق وقتاً أطول من العمل نفسه.
- لماذا يساعد ذلك: يمنع النظام من إضاعة الطاقة والوقت في نقل المهام الصغيرة وغير المهمة إلى المحرك فائق السرعة.
النتائج: لماذا يجب أن تهتم؟
اختبر المؤلفون هذا النظام على شرائح M2 من آبل (الموجودة في أجهزة Mac و iPad) مع ثلاثة نماذج ذكاء اصطناعي مختلفة. وهذا ما حدث:
- السرعة: كان النظام أسرع بـ 1.3 إلى 5.5 مرة من الطرق السابقة.
- عمر البطارية: استهلك طاقة أقل بـ 1.8 إلى 7.4 مرة. هذا يعني أن هاتفك أو جهاز الكمبيوتر الخاص بك يمكنه تشغيل ميزات الذكاء الاصطنا_ي لفترة أطول دون أن ينفد شحنه.
- حرية المعالج (CPU): حرر النظام المعالج الرئيسي (CPU) بنسبة تتراوح بين 1.7 إلى 5.5 مرة. هذا يعني أن جهاز الكمبيوتر الخاص بك يظل سريعاً في تطبيقاتك الأخرى (مثل تصفح الويب أو لعب الألعاب) بينما يعمل الذكاء الاصطناعي في الخلفية.
الخلاصة
قبل هذه الورقة البحثية، كان تشغيل نماذج الذكاء الاصطناعي "التخصصية" الذكية على هاتفك يشبه محاولة تشغيل مستشفى فوضوي وغير متوقع على خط تجميع عالي السرعة وصلب. كان الأمر بطيئاً ويستنزف البطارية.
NPUMoE هو المدير الجديد الذي ينظم هذه الفوضى. فهو يجمع المتخصصين، ويخصص لهم غرفاً ذات أحجام ثابتة، ويقرر من منهم يحتاج فعلياً للذهاب إلى خط التجميع السريع. النتيجة هي ذكاء اصطناعي أسرع، وأقل حرارة، وأكثر كفاءة في استهلاك البطارية مباشرة على جهاز Apple الخاص بك.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.