HyperAIHyperAI
Back to Headlines

تقليل زمن التأخير عند البدء البارد لاستدلال النماذج اللغوية الكبيرة باستخدام NVIDIA Run:ai Model Streamer

منذ 5 أيام

يواجه تشغيل النماذج الكبيرة للغة (LLMs) تحديًا كبيرًا في تحسين كفاءة الاستدلال، خاصة بسبب تأخيرات "البدء البارد" التي تحدث عند تحميل النموذج إلى ذاكرة GPU. هذه التأخيرات، التي قد تمتد لعدة ثوانٍ أو حتى دقائق، تؤثر سلبًا على تجربة المستخدم وتحتّم على التوسع في بيئات الإنتاج الديناميكية. تتفاقم المشكلة مع حجم النماذج الكبير الذي يتطلب عشرات أو مئات الجيجابايت من الذاكرة، ما يجعل التحميل بطيئًا، خاصة في البيئات السحابية. لحل هذه المشكلة، أطلقت NVIDIA بالتعاون مع Run:ai أداة مفتوحة المصدر تُسمى Model Streamer، وهي SDK مكتوبة بلغة Python مع خلفية عالية الأداء بلغة C++. تُعد هذه الأداة أداة فعالة لتقليل زمن التحميل عبر تحميل أوزان النموذج من التخزين مباشرة إلى ذاكرة GPU بشكل متزامن. تعمل على تقليل التأخيرات عبر تفعيل قدرة المعالج المركزي (CPU) ووحدة معالجة الرسومات (GPU) على العمل بالتوازي، حيث يتم قراءة الأوزان من التخزين إلى ذاكرة CPU في خيوط متعددة، بينما تُنقل أجزاء أخرى من الأوزان من CPU إلى GPU دون توقف. تمت مقارنة Model Streamer بأدوات تحميل شائعة: HF Safetensors Loader وCoreWeave Tensorizer، على ثلاثة أنواع من التخزين: أقراص SSD محليّة (GP3 وIO2) وتخزين سحابي (Amazon S3). أظهرت النتائج أن Model Streamer يقلل زمن التحميل بشكل كبير، حتى في البيئات السحابية. على سبيل المثال، على قرص IO2 SSD، تقلل Model Streamer زمن التحميل من 47 ثانية (باستخدام Safetensors) إلى 7.53 ثانية عند استخدام 8 خيوط متزامنة، أي بتقليل بنسبة 84%. أما في S3، فقد حقق Model Streamer زمن تحميل بلغ 4.88 ثانية عند استخدام 32 خيطًا، بينما استغرق Tensorizer 37.36 ثانية في أفضل أداء له. أحد المزايا الأساسية لـ Model Streamer هو دعمه لتنسيق Safetensors دون الحاجة إلى تحويل الأوزان، مما يحافظ على سلامة البيانات ويقلل التعقيد. كما يُمكن دمجه بسهولة مع محركات الاستدلال مثل vLLM، حيث أظهرت التجارب أن دمج Model Streamer مع vLLM خفض زمن الاستعداد للنماذج من 66 ثانية (باستخدام Safetensors) إلى 35.08 ثانية على GP3 SSD، و28.28 ثانية على IO2 SSD، و23.18 ثانية على S3 – أي تقليل كبير في زمن التحميل الكلي. تُظهر النتائج أن تحسين أداء التحميل لا يعتمد فقط على الأداة، بل أيضًا على اختيار نوع التخزين (حيث أن IO2 SSD أسرع من GP3) وتوظيف التحميل المتزامن بكفاءة. كما أن التوسع في عدد الخيوط (concurrency) يُحدث فرقًا كبيرًا، لكنه يواجه حدودًا مفروضة على سعة التخزين أو الشبكة. بالتالي، يُعد Model Streamer حلاً عمليًا وفعالًا لتحسين كفاءة الاستدلال في بيئات الإنتاج، خاصة عند التعامل مع نماذج ضخمة أو في بيئات سحابية. يُوصى باستخدامه لخفض زمن البدء البارد، استغلال كامل سعة التخزين، وتسريع وقت الوصول إلى الاستدلال، مع دعم سهل للتكامل مع أدوات مثل vLLM.

Related Links