Command Palette
Search for a command to run...
كاسكاد: طريقة عملية للانتباه النادر لاستدلال نماذج لغة كبيرة ذات سياق طويل
كاسكاد: طريقة عملية للانتباه النادر لاستدلال نماذج لغة كبيرة ذات سياق طويل
Dhruv Deshmukh Saurabh Goyal Nipun Kwatra Ramachandran Ramjee
Abstract
الانتباه هو المصدر الرئيسي للتأخير (latency) أثناء استدلال نماذج اللغة الكبيرة ذات السياق الطويل، وهي مهمة متزايدة الانتشار في نماذج الاستدلال ونماذج RAG. نقترح "Kascade"، وهي طريقة انتباه نادرة (sparse attention) خالية من التدريب، تُستند إلى ملاحظات معروفة مثل: 1) أن انتباه ما بعد الـ softmax هو نادر بشكل طبيعي، و2) أن هوية المفاتيح ذات الأوزان العالية تبقى ثابتة عبر الطبقات القريبة. تقوم Kascade بحساب فهارس الـ Top-k الدقيقة في مجموعة صغيرة من الطبقات المُسندة (anchor layers)، ثم تعيد استخدام هذه الفهارس في الطبقات الوسيطة (reuse layers). تُختار الطبقات المُسندة خوارزميًا من خلال دالة برمجة ديناميكية (dynamic-programming objective) تُحدّد تحسين التشابه بين الطبقات على مجموعة تطوير، مما يُسهل نشرها عبر نماذج مختلفة. وتحتوي الطريقة على قيود تنفيذ فعّالة (مثل العمليات على مستوى "البلاط" - tile-level operations) في كل من الانتباه أثناء التعبئة (prefill) والانتباه أثناء التشفير (decode). كما أن اختيار و إعادة استخدام الـ Top-k في Kascade يأخذ بعين الاعتبار كل رأس (head)، ونُظهر في تجاربنا أن هذا أمر بالغ الأهمية للحفاظ على الدقة العالية. حققت Kascade تسريعًا يصل إلى 4.1 مرة في الانتباه أثناء التشفير، و2.2 مرة في الانتباه أثناء التعبئة، مقارنةً بالأساسية FlashAttention-3 على وحدات معالجة GPU H100، مع الحفاظ على دقة قريبة جدًا من الدقة الناتجة عن الانتباه الكثيف (dense attention) في معايير السياق الطويل مثل LongBench وAIME-24.