Hybrid JIT-CUDA Graph Optimization for Low-Latency Large Language Model Inference
تقترح هذه الورقة إطار عمل تشغيلي هجين يجمع بين الترجمة الفورية (JIT) وتنفيذ رسوم كودا البيانية (CUDA Graph) لتقليل زمن انتقال الاستدلال وحمل إطلاق النواة بشكل كبير لأعباء عمل نماذج اللغات الكبيرة ذات التسلسلات القصيرة.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أنك تدير مطعماً فاخراً للبيتزا الراقية. لكي تحافظ على سعادة زبائنك، عليك إيصال طعامهم إلى الطاولة بأسرع ما يمكن، ولكن عليك أيضاً التعامل مع الكثير من الطلبات غير المتوقعة.
تصف هذه الورقة البحثية طريقة جديدة لتشغيل "نماذج اللغات الكبيرة" (العقول التي تقف وراء الذكاء الاصطناعي مثل ChatGPT) من خلال حل مشكلة محددة: مشكلة "تردد الطاهي".
المشكلة: الطاهي المتردد
عندما يقوم الذكاء الاصطناعي بتوليد نص، فإنه لا يكتب فقرة كاملة دفعة واحدة. بل يكتب كلمة واحدة (أو "توكن" - Token) في كل مرة.
في الإعداد التقليدي (مثل طريقة "HuggingFace" المذكورة في الورقة)، في كل مرة يريد فيها الذكاء الاصطناعي كتابة كلمة جديدة، يضطر "الطاهي" (وحدة المعالجة المركزية للكمبيوتر - CPU) إلى التوقف، وقراءة الوصفة، وإيجاد المكونات، وتشغيل الموقد، ثم إخبار "الطباخ" (وحدة معالجة الرسومات - GPU) بالبدء في العمل.
ولأن الذكاء الاصطناعي يفعل هذا مئات المرات على التوالي، يقضي الطاهي وقتاً في قراءة التعليمات والصراخ بالأوامر أكثر مما يقضيه في الطبخ فعلياً. وهذا يخلق ما يسمى بـ "زمن الاستجابة" (Latency) — وهو ذلك التوقف المزعج الذي تلاحظه عندما يكون الذكاء الاصطناعي "يفكر".
الحل: المطبخ الهجين
اقترح الباحثون نظاماً "هجيناً". لقد أدركوا أن ليس كل جزء من صنع البيتزا غير متوقع. لذا قاموا بتقسيم المطبخ إلى منطقتين متخصصتين:
1. "خط التجميع" (رسوم CUDA البيانية - CUDA Graphs)
هناك أجزاء من صنع البيتزا تكون دائماً كما هي: فرد العجين، فرد الصلصة، وإضافة الجبن. أنت لست بحاجة لقراءة وصفة في كل مرة تفعل فيها ذلك.
يستخدم الباحثون ما يسمى بـ CUDA Graphs. تخيل هذا كأنه فيديو مسجل مسبقاً لخط التجميع. بدلاً من أن يعطي الطاهي تعليمات فردية لكل حركة، فإنه يكتفي بالضغط على زر "تشغيل". يرى "الطباخ" (GPU) الفيديو ويقوم بتنفيذ تسلسل الحركات بالكامل فوراً دون انتظار الطاهي ليتحدث. هذا سريع للغاية ويلغي "التردد".
2. "محطة الطلبات الخاصة" (الترجمة الفورية - JIT Compilation)
ومع ذلك، هناك بعض الأشياء التي تكون غير متوقعة. قد يقول أحد الزبائن: "أريد زيتوناً إضافياً"، أو "اجعلها خالية من الغلوتين". إذا قمت بتسجيل فيديو لكل تركيبة ممكنة من الإضافات، فستنفد منك أشرطة الفيديو!
لهذه الأجزاء غير المتوقعة (مثل اختيار الكلمة التالية أو التعامل مع أطوال الجمل المختلفة)، يستخدم الباحثون ما يسمى بـ الترجمة الفورية (JIT Compilation). هذا يشبه وجود مساعد ذكي واقف بجانبك. المساعد ليس لديه فيديو مسجل مسبقاً، لكنه سريع جداً في كتابة تعليمات جديدة ومخصصة بحيث لا يبطئ حركة المطبخ.
كيف يعملان معاً (سحر "الهجين")
عبقرية هذه الورقة البحثية تكمن في كيفية تواصل هاتين المنطقتين مع بعضهما البعض.
بينما يكون "خط التجميع" مشغولاً بتشغيل فيديو لصنع البيتزا الحالية، يقوم "المساعد الذكي" في الخلفية بتصوير فيديو جديد للنوع التالي المحتمل من الطلبات. بهذه الطريقة، لا يتوقف المطبخ أبداً عن الحركة. إنهم "يلتقطون" الوصفة التالية بينما لا يزالون "يعيدون تشغيل" الوصفة الحالية.
النتائج: لماذا يهم هذا؟
عندما اختبروا هذا النظام على نموذج ذكاء اصطناعي قوي (LLaMA-2)، كانت النتائج مبهرة:
- بدايات أسرع: انخفض "زمن الوصول لأول توكن" (الوقت الذي تنتظر فيه قبل أن يبدأ الذكاء الاصطناعي في التحدث) بنسبة تصل إلى 66%. إنه يشبه تقديم النادل للمقبلات بمجرد جلوسك مباشرة.
- تجربة أكثر سلاسة: لقد قللوا من "زمن استجابة الذيل" (التوقف الطويل العرضي المزعج). أصبح الذكاء الاصطناعي أكثر قابلية للتنبؤ واستقراراً، بدلاً من أن يكون سريعاً في ثانية وبطيئاً في الثانية التالية.
باخت-القول: من خلال فصل "المهام المملة والمتكررة" عن "المهام الصعبة والمخصصة"، وأتمتة المهام المتكررة باستخدام "تعليمات مسجلة مسبقاً"، جعلوا الذكاء الاصطناعي أسرع بكثير وأكثر استجابة للمحادثات في العالم الحقيقي.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.