الشحن التوربيني LLMs
PagedAttention، وvLLM، وSelf-Debugging، وPowerInfer، وEG-MLA - كيفية توسيع نطاق عوامل LLM دون إهدار ذاكرة التخزين المؤقت لـ GPU KV
Workstationحول كيفية تعزيز نماذج اللغات الكبيرة في الإنتاج: PagedAttention، وvLLM، وSelf-Debugging، وPowerInfer، وEG-MLA - مع المقايضات التي تظهر بالفعل على GPUs. الغوص العميق: مقال طويل. التمهيدي: شرحLLMs + Kubernetes.
: ما هو LLM في الواقع
سياق، وليس عرضًا توضيحيًا للمنتج:مقدمة لنماذج اللغات الكبيرة(أندريه كارباثي). قم بالاقتران مع دليلLLM + Kubernetes باللغة الإنجليزية العادية.
مشكلة القياس
فتحLLMs الذكاء الاصطناعي للمحادثة والجيل، ثم أصبح على الفور مشكلة في الخدمة. تقوم كل خطوة فك تشفير بإلحاق المفاتيح والقيم بذاكرة التخزين المؤقت KV التي تنمو مع طول التسلسل وحجم الدُفعة. تقوم المحركات الساذجة بحجز ألواح ضخمة متجاورة مسبقًا. معظم تلك الذاكرة تظل خاملة بينما تنتظر الطلبات الأخرى. ينهار معدل النقل على الرغم من أن GPU يبدو "ممتلئًا".
PagedAttention: الذاكرة الافتراضية للانتباه
PagedAttention (Kwon et al., SOSP 2023) مع ذاكرة التخزين المؤقت KV مثل ترحيل صفحات نظام التشغيل: كتل ذات حجم ثابت، وجدول كتلة لكل طلب، وصفحات فعلية غير متجاورة[arXiv:2309.06180]. تقوم النواة بتجميع الكتل في وقت الانتباه. لا يزال يتعين عليك ضبط حجم كتلةوالحد الأقصى لطول الطرازوالتسلسل الهرمي لذاكرة التخزين المؤقت(إلغاء التحميل GPU HBM مقابل CPU مقابل ذاكرة التخزين المؤقت للبادئة). تضيف الكتل الصغيرة جدًا رسم الخرائط في الأعلى؛ الكتل الكبيرة جدًا تعيد إنتاج النفايات.
vLLM: نفايات قريبة من الصفر تخدم
vLLM هو نظام التقديم المبني على PagedAttention. إنه يستهدف نفايات كيلو فولت قريبة من الصفر، والخلط المستمر، وسطح HTTP المتوافق مع OpenAI. في الإنتاج، شاهد ثلاثة أشياء: (1)gpu_memory_utilizationمقابل OOM، (2) وقت ظهور الرمز المميز الأول مقابل الرموز/الرموز المميزة لفك التشفير، (3) ما إذا كان التخزين المؤقت للبادئة/المطالبة يغير الإجابات لمجموعة التقييم الخاصة بك. يعد التخزين المؤقت بمثابة فوز في الإنتاجية؛ فهو لا يخلو من آثار الصواب والكمون الخلفي.
from vllm import LLM, SamplingParams llm = LLM(model="meta-llama/Llama-3.1-8B-Instruct", gpu_memory_utilization=0.90) params = SamplingParams(temperature=0.2, max_tokens=256) outs = llm.generate(["Explain PagedAttention in one paragraph."], params) print(outs[0].outputs[0].text)
هذا هو الاستخدام الحقيقي لـ vLLM. مكالمة Hugging Face BERTforward()هيوليستPagedAttention - لا تخلط بين سجلات المصنف وخدمة KV المقسمة إلى صفحات.
Self-Debugging: حلقات الجودة بميزانية زمن الوصول
يقومSelf-Debugging (تشن وآخرون) بتعليم نموذج لإصلاح البرامج المتوقعة الخاصة به من آثار قليلة الطلقات، أو مطابقة أو التغلب على خطوط الأساس التي تنبعث منها مرشحات أكثر بعشر مرات[arXiv:2304.05128]. بالنسبة للوكلاء، هذا هو الذهب - حتى تتراكم جولات ردود الفعل. قم بتحديد عدد رسائل التصحيح، وقم بتسجيل كل جولة، ثم فشل في الإغلاق أمام نموذج بشري أو متخصص أصغر عند انتهاء الميزانية.
ساعة: سياق التقديم والاستدلال
حديث سياقي عن خدمة LLM السريعة - وليس عرضًا توضيحيًا رسميًا لـ Workstation. قم بالاقتران مع ورق vLLM وdocs.vllm.ai.
PowerInfer: الرموز المميزة على دهون واحدة GPU
يقومPowerInfer بتقسيم الخلايا العصبية الساخنة/الباردة حتى يتمكن المستهلك GPU بالإضافة إلى CPU من إنشاء الرموز المميزة بسرعة. الأرقام المبلغ عنها:13.20 رمزًا/ثانية متوسط ، ذروة29.08 رمزًا/ثانيةعلى NVIDIA RTX 4090 واحد، حتى11.69xمقابل llama.cpp مع الحفاظ على الدقة[PowerInfer]. على نطاق الأسطول، لا تزال بحاجة إلى التنسيب: ما هي الطبقات التي تبقى على GPU، وكيفية تقسيمها عبر العقد، وما إذا كان ملف تعريف المنطقةالذي يطالبك بهيتطابق مع نماذج الورقة.
EG-MLA: تقليص KV دون تدمير المقعد
يُبلغ(الانتباه الكامن متعدد الرؤوس المضمن) عنتقليل ذاكرة التخزين المؤقت بنسبة تزيد عن 91.6% كيلو فولت،مقابل الانتباه متعدد الرؤوس مع تدهور لا يُذكر، وتوفير إضافي مقابل MLA (يصل إلى 59.9%)، ونتائج أفضل في مجموعات الاستدلال، تتجاوز معلمات 1B[ورقة EG-MLA]. تعامل معه كخيار معماري، وليس علامة منسدلة على نقطة تفتيش vLLM المجمدة - تحقق من صحة أداة التقييم الخاصة بك قبل الاحتفال بالرسم البياني للذاكرة.
تجميعها معًا
اجمع بين PagedAttention + vLLM لخدمة المجموعة، وPowerInfer عندما يكون الصندوق عبارة عن محطة عمل GPU، وSelf-Debugging داخل عوامل الترميز ذات الحد الدائري الصلب، وEG-MLA عندما تتحكم في عائلة الطراز. يضيف العرض الموزع التعقيد: توازي KV، وتقسيم التعبئة المسبقة/فك التشفير، والقياس التلقائي الذي لا يؤدي إلى جداول الصفحات. يقيس. ثم اكتب ADR.
اقرأ
التالي- مقالة طويلة— المقابض، أوضاع الفشل، ملاحظات Kubernetes. شرح
- LLMs + تشغيل الخاص بك على Kubernetes
- Muse Glimmer / الوكلاء المحليون·Enterprise AI Lab
تم النشر بواسطةWorkstation.