النقاط الرئيسية
تنفيذ فعال: يجمع SGLang بين لغة أمامية مصممة بالتنسيق مع وقت تشغيل خلفي مُحسَّن، ويتميز بمبتكرات مثل RadixAttention لإعادة استخدام ذاكرة التخزين المؤقت KV و آلات الحالة المحدودة المضغوطة لفك الترميز المنظم الأسرع.
تعزيز الأداء: تُظهر المعايير أن SGLang يحقق باستمرار أعلى إنتاجية (1.0) و أقل زمن استجابة (~0.2) عبر المهام.
كفاءة الذاكرة: تقنيات مثل الانتباه المقسم إلى صفحات و تكميم ذاكرة التخزين المؤقت KV تقلل من استخدام الذاكرة، مما يحسن استخدام الموارد للتسلسلات الطويلة والمهام المعقدة.
صديق للمطورين: مدمج في بايثون، يقدم SGLang بدائيات للتوليد والتوازي ومعالجة البيانات متعددة الوسائط، مما يبسط برمجة LLM المتقدمة.
تكامل مرن: مثالي لمهام مثل المطالبات المتقدمة والتحكم في التدفق والإدخال/الإخراج المنظم، يُبسِّط SGLang مهام سير عمل LLM مع تعظيم الكفاءة.
نشر عالي السرعة: للحصول على الأداء الأمثل، انشر SGLang في بيئة عالية السرعة باستخدام حاويات Novita AI GPU، التي تتميز بوحدات معالجة رسومية مثل NVIDIA A100 SXM و RTX 4090.
تُستخدم نماذج اللغة الكبيرة بشكل متزايد في المهام المعقدة التي تتضمن عدة استدعاءات توليد، وتقديم مطالبات متقدمة، وتحكم في التدفق، ومدخلات/مخرجات منظمة. ومع ذلك، فإن الأنظمة الحالية لبرمجة وتنفيذ مثل هذه التطبيقات تفتقر غالبًا إلى الكفاءة. يسعى SGLang إلى التغلب على هذه القيود من خلال توفير حل مبسط، يتميز بلغة أمامية للبرمجة المبسطة ووقت تشغيل مُحسَّن للتنفيذ المتسارع.
التحديات في خدمة LLMs
- بصمة ذاكرة عالية: يمكن أن تؤدي محركات الاستدلال الحديثة إلى عدم كفاءة كبيرة في استخدام الذاكرة، خاصة مع ذاكرة التخزين المؤقت Key-Value (KV)21 . غالبًا لا يتم إعادة استخدام ذاكرة التخزين المؤقت KV، التي تخزن الموترات الوسيطة القابلة لإعادة الاستخدام، بشكل فعال عبر استدعاءات LLM متعددة ذات بادئات مشتركة، مما يؤدي إلى هدر الذاكرة21 .
- إنتاجية محدودة: تعالج الأنظمة الحالية غالبًا رمزًا واحدًا في كل مرة أثناء فك الترميز المقيد للمخرجات المنظمة، حتى عندما يمكن فك تشفير عدة رموز معًا، مما يؤدي إلى سرعات دون المستوى الأمثل21 …
- تكلفة حسابية: ينشأ الحساب المكرر من عدم إعادة استخدام ذاكرة التخزين المؤقت KV عبر استدعاءات LLM المختلفة ذات البادئات المشتركة21 …
فهم SGLang وأهميته
ما هو SGLang؟
هندسة SGLang: تقدم الواجهة الأمامية بدائيات للتوليد (مثل extend و gen و select) والتحكم في التوازي (مثل fork و join)، مما يمكّن المستخدمين من إنشاء مهام سير عمل مطالبات متقدمة بسلاسة داخل بنية بايثون الأصلية. يعزز وقت التشغيل كفاءة التنفيذ من خلال تحسينات مبتكرة، بما في ذلك RadixAttention لإعادة استخدام ذاكرة التخزين المؤقت KV وآلات الحالة المحدودة المضغوطة لفك ترميز الإخراج المنظم الأسرع. يمكن لهذين المكونين العمل إما بشكل تعاوني أو مستقل، اعتمادًا على حالة الاستخدام.
التقنيات الأساسية وراء SGLang
إدارة ذاكرة التخزين المؤقت KV: ابتكار أساسي في SGLang هو RadixAttention، الذي يتيح إعادة استخدام ذاكرة التخزين المؤقت KV بشكل تلقائي ومنهجي أثناء وقت التشغيل. من خلال تنظيم ذاكرة التخزين المؤقت KV في شجرة أساسية، فإنه يدعم البحث الفعال عن البادئات وإعادة الاستخدام والإدراج والإزالة. يقلل هذا الأسلوب من الحساب المكرر واستخدام الذاكرة من خلال السماح للطلبات ذات بادئات المطالبة المشتركة بإعادة استخدام ذاكرة التخزين المؤقت KV. بالإضافة إلى ذلك، تعطي سياسة الجدولة الواعية بالذاكرة المؤقتة الأولوية للطلبات ذات البادئات المتطابقة الأطول، مما يحسن بشكل كبير من معدل الإصابة بالذاكرة المؤقتة.

من ARXIV
خوارزمية الانتباه والانتباه المقسم إلى صفحات: يدمج SGLang تحسينات متقدمة مثل الانتباه المقسم إلى صفحات، الذي يقلل من استخدام الذاكرة عن طريق إدارة ذاكرة التخزين المؤقت KV في صفحات ذاكرة غير متجاورة. بينما يركز RadixAttention على تعظيم إعادة استخدام ذاكرة التخزين المؤقت KV عبر استدعاءات متعددة، يعمل الانتباه المقسم إلى صفحات على تحسين كفاءة الذاكرة داخل الاستدعاءات الفردية، خاصة للتعامل مع التسلسلات الأطول.

من ARXIV
طريقة عالية السرعة لتعزيز كفاءة تشغيل SGLang لديك
حاوية Novita AI GPU هي حل قائم على السحابة يتفوق في توفير قوة حاسوبية عالية الأداء. تتميز بوحدات معالجة رسومية متطورة مثل NVIDIA A100 SXM و RTX 4090، مما يجعلها خيارًا مثاليًا للمهام كثيفة المتطلبات.
هذه الخدمة مفيدة بشكل خاص لمستخدمي PyTorch، حيث توفر قوة حاسوبية هائلة لوحدات المعالجة الرسومية دون الحاجة إلى أي استثمار مسبق في الأجهزة المحلية. إنها طريقة سلسة لتعزيز سير عملك وتحقيق أداء أفضل باستخدام SGLang أو التطبيقات الأخرى كثيفة استخدام وحدة المعالجة الرسومية.
كيف تبدأ رحلتك في حاوية Novita AI GPU
الخطوة 1: تسجيل حساب
أنشئ حساب Novita AI الخاص بك من خلال موقعنا الإلكتروني. بعد التسجيل، انتقل إلى علامة التبويب “GPUs” لعرض الموارد المتاحة وابدأ رحلتك.

جرب وحدات معالجة رسومية عالية الأداء من Novita AI
الخطوة 2:استكشاف القوالب وخوادم وحدات المعالجة الرسومية
اختر من بين القوالب مثل PyTorch أو TensorFlow أو CUDA التي تناسب احتياجات مشروعك. ثم حدد تكوين وحدة المعالجة الرسومية المفضل لديك—تتضمن الخيارات RTX 4090 القوية أو RTX 6000 Ada، ولكل منهما مواصفات مختلفة للذاكرة العشوائية (VRAM) والذاكرة والتخزين.

الخطوة 3:تخصيص النشر الخاص بك
اضبط النشر الخاص بك عن طريق تعديل المعلمات مثل إصدار نظام التشغيل وإعدادات التكوين الأخرى لتحسين متطلبات عبء العمل المحددة لديك.

**الخطوة 4:تشغيل مثيل
انقر على “Launch Instance” لنشر البيئة التي قمت بتكوينها. في غضون دقائق، سيكون لديك إمكانية الوصول إلى موارد وحدات المعالجة الرسومية عالية الأداء الجاهزة لمهام التعلم الآلي أو العرض أو المهام الحسابية.

الخاتمة
يمثل SGLang طفرة كبيرة في التنفيذ الفعال لبرامج نماذج اللغة المعقدة. من خلال الجمع بين لغة أمامية مصممة بالتنسيق مع وقت تشغيل خلفي مُحسَّن للغاية، فإنه يستفيد من التقنيات المبتكرة مثل RadixAttention و آلات الحالة المحدودة المضغوطة لتحقيق تحسينات كبيرة في كل من الإنتاجية و زمن الاستجابة مقارنة بأنظمة الاستدلال الحالية. بفضل مرونته و دعمه الواسع للنماذج و تكامله الصديق للمطورين، يبرز SGLang كأداة لا تقدر بثمن لبناء ونشر تطبيقات LLM المتقدمة، مما يبسط سير العمل ويزيد الأداء إلى أقصى حد.
ما هو SGLang؟
SGLang (لغة التوليد المنظمة) هي لغة برمجة ووقت تشغيل مصممة لتنفيذ البرامج التي تتفاعل مع نماذج اللغة الكبيرة (LLMs) بكفاءة.
ما هي الخطوة الأولى لنشر SGLang؟
الخطوة الأولى جدًا لتثبيت وتشغيل SGLang هي نشر بيئة عالية السرعة. إليك طريقة ممتازة — جرب حاوية Novita AI GPU!
Novita AI هي المنصة السحابية الشاملة التي تمكن طموحاتك في الذكاء الاصطناعي. واجهات برمجة تطبيقات متكاملة، بدون خادم، حاوية GPU — الأدوات الفعالة من حيث التكلفة التي تحتاجها. تخلص من البنية التحتية، ابدأ مجانًا، واجعل رؤيتك للذكاء الاصطناعي حقيقة.
قراءة موصى بها
