الذكاء الاصطناعي
مستقبل الاستدلال بدون خادم للنماذج اللغوية الكبيرة

النماذج اللغوية الكبيرة (LLMs) مثل GPT-4 و PaLM قد أدت إلى قدرات تحويلية في المهام اللغوية. يتم دمج LLMs في تطبيقات مختلفة مثل برامج الدردشة ومحركات البحث ومساعدي البرمجة. ومع ذلك ، لا يزال تقديم LLMs بمقياس كبير تحديًا بسبب متطلباتهم المهمة من حيث وحدة معالجة الرسومات (GPU) والذاكرة.
تتمثل الطرق للتغلب على هذا بشكل عام في فئتين رئيسيتين:
- تقنيات ضغط النموذج
تهدف هذه التقنيات إلى تقليل حجم النموذج مع الحفاظ على الدقة. وتشمل النهج الشائعة:
- التحديد – إزالة المعاملات المتكررة أو الأقل أهمية من النموذج. هذا يخلق نموذجًا مخففًا مع معاملات أقل.
- الكمية – استخدام أرقام دقة أقل مثل int8 أو bfloat16 لتمثيل الأوزان بدلاً من fp32 أو fp16. هذا يقلل من بصمة الذاكرة.
- استخلاص المعرفة – تدريب نموذج “طالب” أصغر لتحاكي نموذج “معلم” كبير. ثم يتم استخدام النموذج الأصغر للاستدلال.
- تنفيذ انتقائي
بدلاً من نماذج مضغوطة ، تقنيات تنفذ فقط أجزاء من النموذج لكل استدلال:
- تنشيطات نادرة – تخطي الحساب على تنشيطات صفر.
- حساب مشروط – تنفيذ طبقات معينة مشروطة بالمدخل.
على الجانب التكميلي من حيث الجانب المعماري للبرنامج ؛ لتمكين نشر LLMs بشكل أسرع ، قد اقترح الباحثون أنظمة استدلال بدون خادم. في المعمارية بدون خادم ، يتم استضافة LLMs على مجموعات GPU المشتركة وتخصيصها ديناميكيًا بناءً على الطلب. هذا يسمح بالاستفادة الفعالة من وحدات معالجة الرسومات وتقليل التكاليف للمطورين. وتشمل التنفيذات البارزة Amazon SageMaker و Microsoft Azure ML وخيارات مفتوحة المصدر مثل KServe.
على الرغم من وعد الأنظمة بدون خادم بالنموذج اللغوي الكبير ، فإن الأنظمة الحالية تظهر زمن تأخير عالٍ يضر بتجربة المستخدم في التطبيقات التفاعلية:
- تنزيل نقاط التفتيش باهظة الثمن: LLMs لها بصمة ذاكرة كبيرة ، غالبًا ما تكون بحجم الغيغابايت أو التيرابايت. يمكن أن يستغرق تنزيل نقاط التفتيش من التخزين عن بُعد وقتًا طويلاً ، يستغرق أكثر من 20 ثانية حتى مع الشبكات المُحسنة.
- تحميل نقاط التفتيش غير فعال: حتى مع التخزين المحلي SSD ، يستغرق تحميل نقاط التفتيش إلى ذاكرة GPU عشرات الثواني بسبب عوامل مثل تسلسل التنسور وتخصيص الذاكرة. هذا يضيف تأخيرات كبيرة إلى ما وراء وقت بدء التشغيل.
لمعالجة هذه القضايا ، اقترح الباحثون في MIT CSAIL ServerlessLLM ، نظام مبتكر يحقق استدلالًا بدون خادم منخفض التأخير للنماذج اللغوية الكبيرة. ServerlessLLM يعزز الموقع من خلال استغلال القدرة الوفيرة ولكن غير المستغلة وال帯 في تخزين الخادم المتدرج لتنفيذ LLM.
الابتكارات الرئيسية في ServerlessLLM ServerlessLLM يتضمن عدة تصاميم مبتكرة لتقليل أوقات تحميل LLM في بيئات بدون خادم:
- تحميل نقاط التفتيش السريع
- تنسيق تحميل نقاط التفتيش المُحسّن الذي يسمح بالقراءة التسلسلية السريعة والعنونة الفعالة للتنسور في الذاكرة.
- pipeline تحميل نقاط التفتيش المتدرج الذي يزيد من استخدام عرض النطاق الترددي عبر الشبكة و SSD و DRAM وذاكرة GPU من خلال تقنيات مثل الإدخال المباشر ونقل الذاكرة المثبتة والتوازي.
- هجرة مباشرة للاستدلال القائم على الموقع
- هجرة قائم على الرمز التي تنقل فقط الرموز الأساسية للتحفيز عبر الشبكة ، وتجنب نقل الصور الثابتة البطيئة.
- هجرة مرحلة مزدوجة تسمح بالاستدلال غير المتقطع من خلال إعادة حساب حالات الذاكرة على الخادم الوجهة قبل نقل الرموز النهائية.
- تخصيص الخادم المُحسّن للتأخير
- نماذج دقيقة لتقدير أوقات تحميل نقاط التفتيش من كل مستوى وأوقات الهجرة للخادم.
- مجدول موقعي يختار الخوادم التي تقلل من زمن التأخير المتوقع للتشغيل باستخدام النماذج المذكورة أعلاه.
تسمح هذه التحسينات ل ServerlessLLM بتقليل أوقات تحميل LLMs بأربعة إلى ثمانية أضعاف وتقليل أوقات التشغيل من النهاية إلى النهاية بأكثر من 25 ضعفًا مقارنة بالأنظمة الحالية مثل PyTorch و TensorFlow و KServe.
دعونا نغوص بشكل أعمق في كيفية تحقيق ServerlessLLM لهذه المكاسب الكبيرة في الأداء.
تعزيز تحميل نقاط التفتيش
الخط العرضي الأول الذي يعالجه ServerlessLLM هو زمن التأخير العالي لتحميل نقاط التفتيش LLM من التخزين إلى ذاكرة GPU.
لتمكين تحميل نقاط التفتيش السريع ، يقدم ServerlessLLM:
- تنسيق تحميل نقاط التفتيش المُحسّن
نقاط التفتيش القياسية المستخدمة بواسطة الإطارات مثل PyTorch مصممة لتدريب النموذج وتصحيح الأخطاء. ولكن من أجل الاستدلال بدون خادم ، يتم الوصول إلى نقاط التفتيش بشكل متكرر وقراءة فقط.
لتحسين استخدام قراءة مكثفة ، يقوم ServerlessLLM بتحويل نقاط التفتيش إلى تنسيق يحتوي على خاصيتين رئيسيتين:
- قراءة شريحة تسلسلية: يتم تجميع التنسورات في ملفات ثنائية لكل وحدة معالجة رسومات ، مما يسهل القراءات التسلسلية الكبيرة.
- عنونة تنسور فعالة: يخريطة فهرس أسماء التنسورات إلى 오프셋 الذاكرة ، مما يسمح بإعادة استعادة مباشرة في الذاكرة دون تسلسل.
- pipeline تحميل نقاط التفتيش المتدرج
يستفيد ServerlessLLM من هيكل الخادم المتدرج ، مع وسائط التخزين مثل SSDs والشبكات التي تصل إلى وحدات معالجة الرسومات عبر PCIe و NVMe و غيرها.
يضمن النظام pipeline متعددة المراحل لتعظيم استخدام عرض النطاق الترددي عبر جميع المستويات:
- يتم تخصيص قطع البيانات في الذاكرة باستخدام ذاكرة مثبتة للنقل السريع إلى وحدة معالجة الرسومات.
- يتم استخدام الإدخال المباشر لقراءات SSD الفعالة دون أعباء التخزين المؤقت.
- يقرأ الخيوط المتعددة قطع التخزين المختلفة بالتوازي.
- يحدث التنسيق بين المراحل عبر طوابير المهام غير المتزامنة.
معًا ، هذا يسمح بتشبع عرض النطاق الترددي لجميع المستويات ، حتى أسرعها مثل NVMe RAID. تظهر التجارب أن ServerlessLLM يحقق سرعة تحميل أسرع 6-8 مرة من PyTorch/TensorFlow ، مما يقلل من أوقات التشغيل للنماذج اللغوية الكبيرة من أكثر من دقيقة إلى أقل من 10 ثوان.
استدلال LLM القائم على الموقع عبر الهجرة الحية
مع تعزيز التحميل ، يواجه ServerlessLLM تحديًا جديدًا – كيفية الاستفادة من نقاط التفتيش المُحملة مسبقًا للموقع دون انقطاع الاستدلالات الجارية على الخوادم المشغولة؟
يقدم ServerlessLLM تقنية مبتكرة – هجرة حية لاستدلال LLM عبر خوادم وحدة معالجة الرسومات. هذا يسمح بنقل التنفيذ بشكل متواصل إلى الخوادم التي تتوفر فيها نقاط التفتيش المحلية.
المميزات الرئيسية للهجرة الحية ل LLM:
- هجرة قائم على الرمز
بدلاً من التقاط صورة لجميع حالات النموذج ، ينقل ServerlessLLM فقط الرموز الأساسية للتحفيز عبر الشبكة. هذا ينقل كمية بيانات أقل بكثير من الصور.
- هجرة مرحلة مزدوجة
يحسب الخادم الوجهة بشكل غير متزامن حالات الذاكرة من الرموز الأساسية. بمجرد الاستعداد ، ينقل الخادم المصدر الرموز النهائية قبل إطلاق الموارد. هذا يمنع توقفات الاستدلال.
تظهر التجارب أن هجرة قائم على الرمز تقلل من أوقات الهجرة من عشرات الثواني إلى أقل من ثانية واحدة حتى لمسلسلات طويلة. الهجرة الحية هي أمر حيوي لمنع تأخيرات التأخير عند تحقيق التخصيص القائم على الموقع.
تخطيط مُحسّن للتأخير
لتحقيق الحد الأدنى من التأخير من النهاية إلى النهاية ، يعزز ServerlessLLM المجدول لتحسين اختيار الخادم مع مراعاة الموقع. هذا يشمل:
- مُقدر زمن التحميل الدقيق
النماذج تتنبأ بأوقات التحميل من الشبكة وذاكرة التخزين المؤقت والذاكرة لكل خادم باستخدام مقاييس مثل تأخيرات الطوابئق وحجم النموذج وال帯 المقاسة.
- مُقدّر زمن الهجرة الدقيق
يُقدّر المجدول أوقات الهجرة للخوادم باستخدام عدد الرموز الأساسية والرموز الناتجة. يتتبع تقدم الاستدلال بشكل غير متزامن لتجنب الأعباء.
- تخصيص موقعي
لکل طلب استدلال ، يقيم المجدول أوقات التحميل والمهاجرة المتوقعة عبر الخوادم. يختار الخادم الذي يقلل من زمن التأخير المتوقع للتشغيل.
كما يحافظ المجدول على طوابئق المهام للخوادم ويتوافق مع مخزن متوافق بقوة لتحمل الأعطال. معًا ، هذه الابتكارات تقلل من أعباء المجدول وتعظم الفوائد القائمة على الموقع.
تقييم أداء ServerlessLLM
تجارب شاملة تقييم الفعالية الشاملة ل ServerlessLLM مقابل الأنظمة الحالية باستخدام نماذج العالم الحقيقي مثل OPT-175B وطوابئق مستوحاة من أثر Azure.
النتائج الرئيسية:
- المقاييس الدقيقة: ServerlessLLM يعزز تحميل نقاط التفتيش بمقدار 3.6-8.2 مرة أكثر من PyTorch/TensorFlow. إنه يشبع عرض النطاق الترددي للتخزين ، حتى لأحدث NVMe RAID.
- التخطيط: ServerlessLLM يقلل من تأخير التخصيص بمقدار 4-12 مرة مقارنة بالتخطيط العشوائي ، مما يبرز الفوائد القائمة على الموقع. الهجرة الحية تمنع تأخيرات الطوابئق.
- الخدمة من النهاية إلى النهاية: بالنسبة للنماذج الكبيرة مثل OPT-30B ، ServerlessLLM يحسن التأخير في Percentile 99 بمقدار 28-200 مرة أكثر من الأنظمة مثل KServe و Ray Serve. كما يعزز كفاءة الموارد.
تظهر هذه المكاسب الكبيرة قدرة ServerlessLLM على التغلب على عقبات في التنفيذ بدون خادم الحالي وتحقيق قوة النماذج اللغوية الكبيرة للخدمات التفاعلية.
التحسينات المقدمة في ServerlessLLM ، مثل التحميل المتدرج والهجرة الحية والتخطيط المُحسّن للتأخير ، يمكن أن تساعد في إعلام تصميم الهياكل بدون خادم في المستقبل. قدرة النظام على تقليل أوقات التحميل وأوقات التشغيل تمنع نشر النماذج اللغوية الكبيرة بشكل كبير للتطبيقات العملية.
النظر إلى الأمام: التحديات المستمرة
في حين أن هذا يمثل قفزة كبيرة إلى الأمام ، ServerlessLLM يمثل فقط الخطوة الأولى في تحسين الاستدلال بدون خادم للنماذج اللغوية الكبيرة. لا تزال هناك مشاكل مفتوحة ، بما في ذلك:
- توقع الطلب الحقيقي على النموذج لتحديد التمويل والتحميل المسبق
- وضع نقاط التفتيش بشكل ذكي عبر الخوادم لتعظيم ضربات الذاكرة
- توسيع خوارزميات التخطيط بكفاءة لمعالجة مجموعات أكبر
- ضمان العدالة في تخصيص الموارد عبر النماذج والمطورين
- تعميم الابتكارات مثل الهجرة الحية إلى حمولات عمل بدون خادم أخرى
معالجة هذه المجالات يمكن أن تساعد في بناء الوعد بالنموذج اللغوي الكبير بدون خادم وجعله أكثر سهولة. بالإضافة إلى تحسينات النظام ، يبقى تقليل بصمة الكربون والآثار الضارة للنماذج الكبيرة أولوية ملحة.
يظهر ServerlessLLM أن هناك مجالًا كبيرًا للابتكار في هياكل بدون خادم الجيل القادم لتحملات الذكاء الاصطناعي. مع استمرار نمو النماذج اللغوية الكبيرة في الحجم والشعبية ، ستزداد الحلول مثل ServerlessLLM تأثيرًا. يمكن أن يقدم تقاطع البحث في الأنظمة والتعلم الآلي مفاهيم جديدة في تقديم النماذج ونشرها وتوسيعها بأمان واستدامة.











