Multi-Bin Batching for Increasing LLM Inference Throughput
تقترح هذه الورقة "التجميع متعدد الحاويات" (Multi-Bin Batching)، وهو سياسة تحكم تقوم بتجميع طلبات النماذج اللغوية الكبيرة (LLM) ذات أوقات التنفيذ المتوقعة المتشابهة في حاويات محددة مسبقاً لتعظيم إنتاجية الاستدلال تحت ظروف التجميع الثابت بشكل مثبت، مما يقلل بشكل كبير من عدم استغلال الموارد الناتج عن تباين أطوال التوليد.
المؤلفون الأصليون:Ozgur Guldogan, Jackson Kunde, Kangwook Lee, Ramtin Pedarsani
في العصر الرقمي، أصبحت النماذج اللغوية الكبيرة هي المحركات وراء موجة جديدة من الأدوات الذكية، القادرة على كتابة القصص، وتصحيح الأخطاء البرمجية، والإجابة على الأسئلة المعقدة. تعمل هذه الأنظمة عن طريق التنبؤ بالكلمة التالية في تسلسل ما، رمزاً تلو الآخر، وهي عملية تتطلب قدرة حوسبية هائلة. ولجعل هذه الأنظمة مفيدة لعدد كبير من الناس في وقت واحد، يجب على الخوادم التعامل مع آلاف الطلبات في آن واحد. الطريقة القياسية للقيام بذلك هي من خلال تقنية تسمى "التجميع" (batching)، حيث يقوم الحاسوب بتجميع عدة طلبات معاً ومعالجتها جميعاً في نفس الوقت، تماماً مثل حافلة تحمل ركاباً متعددين إلى الوجهة ذاتها. هذه المعالجة المتوازية ضرورية للسرعة، لكنها تسبب عدم كفاءة خفية: إذ يجب على المجموعة بأكملها الانتظار حتى ينتهي أبطأ راكب قبل أن تنطلق الحافلة في الرحلة التالية. فإذا احتاج شخص واحد في مجموعة مكونة من عشرة أشخاص وقتاً طويلاً للاستعداد بينما كان الآخرون مستعدين فوراً، فإن الحاسوب يظل خاملاً، ينتظر ذلك الطلب البطيء الوحيد، مما يهدر وقتاً وطاقة ثمينين.
لطالما سعى الباحثون لإيجاد طريقة لإصلاح لعبة الانتظار هذه دون التخلي عن كفاءة التجميع. يقترح بحث جديد حلاً يسمى "التجميع متعدد الصناديق" (multi-bin batching)، وهو أسلوب ينظم الطلبات الواردة في خطوط انتظار منفصلة بناءً على المدة المتوقع استغراقها. فبدلاً من إلقاء كل طلب في طابور مختلط واحد، يتنبأ النظام بطول الإجابة التي يريدها كل مستخدم ويصنفها في "صناديق" مختلفة. الطلبات التي يُحتمل أن تكون قصيرة تذهب إلى صندوق واحد، بينما تلك التي يُحتمل أن تكون طويلة تذهب إلى صندوق آخر. ومن ثم يتم تشكيل مجموعات داخل هذه الصناديق، مما يضمن أن الطلبات في أي مجموعة واحدة لها مدد زمنية متقاربة. هذا يمنع الطلبات السريعة من التعطل بسبب الطلبات البطيئة، مما يسمح للحاسوب بإنهاء عمله على مجموعة ما في وقت أقصر بكثير والبدء في المجموعة التالية.
اختبر الباحثون هذه الفكرة باستخدام إطار عمل رياضي يعامل الخادم كآلة واحدة تعالج تدفقاً مستمراً من الطلبات. وقد أثبتوا أنه من خلال زيادة عدد الصنفيات، يمكن للنظام الاقتراب أكثر فأكثر من السرعة القصوى النظرية حيث لا تضيع أي مدة في انتظار المتأخرين. وفي تحليلهم، أظهروا أنه إذا تم إعداد الصناديق بشكل صحيح، فإن الوقت الذي يقضيه الحاسوب في انتظار انتهاء مجموعة ما يتناقص بشكل كبير. كما استكشفت الدراسة كيف يعمل هذا عندما يتبع الوقت المستغرق لتوليد الإجابة نمطاً إحصائياً معيناً، مما أكد أن المنطق يظل صامداً حتى عندما يكون التوقيت غير قابل للتنبؤ. والنتيجة الجوهرية هي أن مجرد تجميع المهام المتشابهة معاً، بدلاً من معالجتها حسب ترتيب وصولها، يمكن أن يقلل بشكل كبير من وقت الخمول الذي يعيب الأنظمة الحالية.
ولرؤية ما إذا كانت هذه النظرية تنجح في العالم الحقيقي، أجرى الفريق تجارب باستخدام نموذج مفتوح المصدر شائع على بطاقة رسوميات عالية الأداء. وقارنوا طريقتهم الجديدة بطريقة التجميع القياسية، وبنظام أكثر تقدماً يسمى "التجميع المستمر" (continuous batching)، والذي يسمح للطلبات الجديدة بالانضمام إلى مجموعة بمجرد توفر مكان شاغر. في اختبار محكم حيث عرف الباحثون بالضبط طول كل إجابة، تفوقت طريقة "التجميع متعدد الصناديق" الخاصة بهم، المكونة من ستة عشر صندوقاً، على النهج القياسي بنسبة تزيد عن 150 بالمائة. وفي هذا السيناريو المحدد، تفوقوا قليلاً حتى على نظام التجميع المستمر، مما يشير إلى أنه إذا استطعت التنبؤ بدقة بكيفية استغراق المهمة لوقتها، فإن فرزها في مجموعات محكمة يعد استراتيجية فعالة للغاية.
ومع ذلك، نادراً ما يكون العالم الحقيقي بهذا القدر من القدرة على التنبؤ. فعندما طبق الباحثون الطريقة على مجموعة بيانات من أسئلة المستخدمين الحقيقية، حيث كان عليهم تقدير طول الإجابة بدلاً من معرفتها بشكل مؤكد، كانت النتائج لا تزال مثيرة للإعجاب ولكنها أكثر تواضعاً. وباستخدام أداة خفيفة لتخمين طول الاستجابة، حسّن نظام التجميع متعدد الصناديق الإنتاجية بنسبة 150 بالمائة مقارنة بالطريقة القياسية، وهي زيادة هائلة. ومع ذلك، ظل خلف نظام التجميع المستمر، الذي ظل الأسرع إجمالاً. وأظهرت الفجوة بين النتائج التقديرية ونتائج "المعرفة المثالية" أن دقة التنبؤ مهمة للغاية؛ فعندما خمن النظام الطول بشكل صحيح، قفز الأداء بشكل كبير. وهذا يشير إلى أنه بينما تعد استراتيجية الفرز قوية، فإن إمكاناتها الكاملة تعتمد على امتلاك طريقة جيدة جداً للتنبؤ بمدة المهمة قبل بدئها.
تخلص الدراسة إلى أن نهج التجميع هذا ليس بديلاً للأنظمة المتطورة المستخدمة بالفعل، ولكنه أداة قوية يمكن إضافتها إليها. فمن خلال العمل كآلية فرز ذكية قبل وصول الطلبات إلى طابور المعالجة الرئيسي، يمكنه مساعدة الخوادم الحديثة على التعامل مع حركة المرور بكفاءة أكبر. ووجد الباحثون أن عدد الصناديق يعمل كـ "مقبض ضبط": فإذا كان العدد قليلاً جداً، سيظل النظام يعاني من تفاوت السرعات؛ وإذا كان كثيراً جداً، فقد يؤدي الوقت المستغرق في فرز الطلبات إلى إبطاء الأمور. وتعتمد "النقطة المثالية" على طبيعة العمل ومدى دقة قدرة النظام على التنبؤ بأطوال المهام. وفي النهاية، يوضح هذا العمل أن تغييراً بسيطاً في كيفية تجميع الطلبات — عبر معاملة المهام المتشابهة كجيران بدلاً من غرباء — يمكن أن يفتح آفاقاً لتحسينات كبيرة في السرعة لأنظمة الذكاء الاصطناعي التي تدعم حياتنا الرقمية اليومية.
تعتمد أنظمة استدلال النماذج اللغوية الكبيرة (LLM) على التجميع (Batching) لتعظيم الاستفادة من الأجهزة وزيادة الإنتاجية. ومع ذلك، تعاني عملية التجميع الثابت (Static Batching) القياسية من عدم كفاءة كبيرة بسبب تباين أوقات التنفيذ. في التجميع الثابت، تظل وحدة الخدمة مقفلة حتى ينتهي الطلب صاحب أطول وقت توليد ("الطلب المتلكئ" أو Straggler). يتسبب هذا في عدم استغلال الموارد، حيث تنتهي الطلبات ذات أوقات التنفيذ القصيرة مبكراً ولكنها تضطر للانتظار حتى يكتمل التجميع بأكمله قبل أن يبدأ التجميع التالي. وبينما يعمل التجميع المستمر (Continuous Batching) - القائم على الجدولة على مستوى التكرار - على تخفيف هذه المشكلة من خلال السماح للطلبات بالخروج والدخول إلى التجميعات ديناميكياً، يهدف المؤلفون إلى تحسين إطار عمل التجميع الثابت تحديداً عبر معالجة تأثير "الطلب المتلكئ" الناتج عن تباين أطوال المخرجات.
تقترح الورقة البحثية التجميع متعدد الحاويات، وهو سياسة تحكم تقوم بتجميع الطلبات الواردة في عدة "حاويات" (Bins) بناءً على أطوال مخرجاتها المتوقعة (أو المثالية/Oracle) قبل تشكيل التجميعات.
الخوارزمية الأساسية
التقسيم إلى حاويات (Binning): يتم تقسيم نطاق أوقات الخدمة المحتملة (أطوال المخرجات) إلى k من الحاويات بحدود [li−1,li].
التعيين (Assignment): يتم تعيين الطلبات الواردة إلى حاوية محددة بناءً على وقت خدمة مقدر أو معروف.
تشكيل التجميع (Batch Formation): يتم تشكيل تجميعات بحجم Bداخل كل حاوية.
الإرسال (Dispatch): يتم إرسال التجميعات المكتملة إلى طابور مركزي للمعالجة.
من خلال تجميع الطلبات ذات أوقات التنفيذ المتشابهة، تقلل هذه الطريقة من التباين داخل التجميع الواحد، مما يقلل من "هدر الحوسبة" الناتج عن هيمنة أقصى وقت خدمة على مدة التجميع.
الإطار النظري
نمذج المؤلفون النظام كـ نظام طابور ذي خادم واحد مع وصول يتبع توزيع بواسون (Poisson). قاموا بتحليل متوسط وقت الخدمة للتجميع بافتراض أن أوقات الخدمة مستقلة وموزعة بشكل متماثل (i.i.d.).
التوزيع الموحد (Uniform Distribution): بالنسبة لأوقات الخدمة الموزعة توزيعاً موحداً في [lmin,lmax]، استنتج المؤلفون أن الإنتاجية تبلغ ذروتها عندما تمتلك الحاويات كتلة احتمالية متساوية. وتكون حدود القرار المثلى خطية: li=lmin+ki(lmax−lmin).
التوزيع الأسي (Exponential Distribution): بالنسبة لأوقات الخدمة الموزعة أسياً، استنتج المؤلفون حداً أعلى لمتوسط وقت الخدمة والحدود المثلى المقابلة باستخدام الإحصاءات الرتبية (Order Statistics) للتوزيعات الأسية المقطوعة.
تحليل الإنتاجية: يثبت التحليل النظري أنه مع زيادة عدد الحاويات k، ينخفض متوسط وقت خدمة التجميع، وتقترب إنتاجية النظام من سعة التجميع الثابت المثالية (حيث يساوي وقت خدمة التجميع متوسط وقت خدمة الطلب الفردي). كما أن عدد الحاويات المطلوب لتحقيق إنتاجية ضمن نطاق ϵ من السعة القصوى يتناسب مع O(1/ϵ).
المساهمات الرئيسية
استراتيجية جدولة مبتكرة: تقديم سياسة تقسيم تعتمد على الطول تقوم بتجميع الطلبات ديناميكياً لتقليل آثار الطلبات المتلكئة في التجميع الثابت.
المثالية النظرية: إثبات أن التجميع متعدد الحاويات يحقق مثالية إنتاجية تقاربية تحت نموذج التجميع الثابت مع اقتراب k→∞، بالإضافة إلى توصيف عدد الحاويات اللازمة لتحقيق مكاسب محددة في الإنتاجية.
التحقق التجريبي: إجراء تجارب شاملة على أعباء عمل استدلال LLM حقيقية (باستخدام llama.cpp و Llama-3.2-3B-Instruct) لمقارنة التجميع الثابت، والتجميع المستمر الأصلي، والتجميع متعدد الحاويات باستخدام الأطوال المثالية (Oracle) والمقدرة.
النتائج التجريبية
قيم المؤلفون الطريقة على عبء عملين: عبء عمل متحكم فيه بطول موحد، ومجموعة بيانات Dolly (ذات أطوال متفاوتة).
1. عبء العمل المتحكم فيه (الأطوال المثالية - Oracle)
الإعداد: 1,024 طلباً، حجم التجميع 32، توزيع موحد للأطوال المستهدفة (500–2000 توكن).
النتائج: حقق التجميع متعدد الحاويات مع k=16 إنتاجية قدرها 1,380.48 توكن/ثانية، بزيادة قدرها 158.4% عن التجميع الثابت القياسي (534.23 توكن/ثانية).
المقارنة: تجاوزت هذه النتيجة قليلاً خط الأساس للتجميع المستمر الأصلي (1,348.49 توكن/ثانية)، مما يثبت أن التجميع الدقيق للأطوال يمكن أن يقترب من أو يتجاوز التجميع المستمر تحت ظروف التباين المتحكم فيها.
2. مجموعة بيانات Dolly (الأطوال المثالية - Oracle)
الإعداد: 1,478 طلباً، حجم التجميع 64، توزيع أطوال حقيقي.
النتائج: باستخدام k=8، حقق التجميع متعدد الحاويات القائم على الأطوال المثالية (Oracle) 965.97 توكن/ثانية، بزيادة قدرها 253.1% عن التجميع الثابت (273.53 توكن/ثانية).
الفجوة: رغم المكسب الهائل مقارنة بالتجميع الثابت، إلا أنه ظل أقل بنسبة 19.5% من خط الأساس للتجميع المستمر الأصلي (1,200.07 توكن/ثانية).
3. مجموعة بيانات Dolly (الأطوال المقدرة)
الإعداد: تم استخدام مُقدّر خفيف الوزن يعتمد على حالات الإخفاء (hidden states) لمرحلة الـ prefill في الـ prompt لتقدير الأطوال.
النتائج: حقق التجميع متعدد الحاويات القائم على الأطوال المقدرة (k=8) إنتاجية قدرها 684.02 توكن/ثانية، بزيادة قدرها 150.1% عن التجميع الثابت.
الدقة: حقق المُقدّر دقة عالية في الحاويات المتجاورة (94.89% لـ k=8)، مما يعني أن معظم الأخطاء كانت محصورة في الحاويات المجاورة.
الفجوة: ظلت نتيجة الأطوال المقدرة أقل بنسبة 43.0% من خط الأساس للتجميع المستمر، مما يسلط الضوء على تأثير خطأ التنبؤ، ولكنه يؤكد أن المقدرات العملية لا تزال تحقق مكاسب كبيرة.
4. المتانة تجاه الأخطاء
أظهرت عمليات المحاكاة مع أخطاء متماثلة في الحاويات المتجاورة أن الإنتاجية تتدهور تدريجياً مع زيادة احتمال خطأ التنبؤ، لكن سياسة تعدد الحاويات تظل متينة في مواجهة الضجيج المتوسط.
الأهمية والادعاءات
تضع الورقة البحثية "التجميع متعدد الحاويات" ليس كبديل لأنظمة التجميع المستمر الحديثة (مثل vLLM أو SGLang)، بل كـ مبدأ جدولة تكميلي.
تخفيف عدم كفاءة التجميع الثابت: تعمل هذه الطريقة على تخفيف أوجه القصور المتأصلة في التجميع الثابت الناتجة عن أوقات التنفيذ المتباينة بشكل كبير.
دور معلومات الطول: تؤكد النتائج أن الحصول على معلومات دقيقة حول الطول يعد إشارة جدولة قوية. فحتى مع التقدير غير الكامل، يمكن تحقيق مكاسب كبيرة في الإنتاجية.
إمكانية التكامل: يشير المؤلفون إلى إمكانية دمج التجميع المدرك للطول في أنظمة الخدمة الحديثة عبر فئات الطوابير (queue classes)، أو قرارات التحكم في الدخول، أو سياسات توجيه النسخ المتماثلة (replica-routing)، لزيادة تحسين التوازن بين الإنتاجية وزمن الاستجابة (latency).
القيود: يقر المؤلفون بأن التجميع متعدد الحاويات، رغم تقليله للفجوة مع التجميع المستمر، لا يغلقها تماماً في أعباء العمل المعقدة والواقعية دون مزيد من التكامل أو الاستراتيجيات التكيفية. كما أن التحليل النظري يعزل تأثير تباين طول المخرجات ولا ينمذج جميع تكاليف أنظمة الإنتاج (مثل تعقيدات التفاعل بين مرحلتي الـ prefill والـ decode)، وإن كانت النتائج التجريبية تتضمن هذه العوامل.