Faster Than Flash: Exploiting Attention Sparsity for Efficient Long-Context Decoding
يُعد "Faster Flash Decoding" (FFD) إطار عمل للتصميم المشترك بين الخوارزمية والعتاد، وهو لا يتطلب تدريباً، ويحقق تسريعاً على مستوى النواة يصل إلى 11.6 ضعفاً ويتوسع ليصل إلى أطوال سياق تبلغ 256 ألفاً، وذلك من خلال دمج الاختيار والحوسبة في نواة واحدة واستخدام استراتيجية "top-delta" لضمان التشتت المتكيف مع التوزيع، كل ذلك مع الحفاظ على دقة النموذج.
في عالم الذكاء الاصطناعي، أصبحت البرامج الحاسوبية الحديثة المعروفة باسم النماذج اللغوية الكبيرة ماهرة بشكل ملحوظ في فهم وتوليد اللغة البشرية. تعمل هذه الأنظمة من خلال التنبؤ بالكلمة التالية في الجملة، رمزاً واحداً تلو الآخر (token by token)، لبناء استجابة متماسكة خطوة بخطوة. ومع ذلك، مع ازدياد قدرات هذه النماذج، فإنها تواجه عقبة مادية كبيرة عندما تُطلب منها معالجة مستندات طويلة جداً أو محادثات مطولة. فكلما زاد السياق الذي يحتاج النموذج لتذكره، زادت كمية البيانات التي يجب عليه نقلها باستمرار بين ذاكرته الداخلية السريعة ومساحة التخزين الرئيسية لديه. هذا التحرك المستمر للبيانات يخلق عنق زجاجة، يشبه محاولة ملء مسبح باستخدام خرطوم حديقة بينما الصرف مفتوح على مصراعيه. يقضي الحاسوب معظم وقته في انتظار وصول المعلومات بدلاً من التفكير الفعلي، مما يبطئ العملية برمتها ويحد من كمية النصوص التي يمكن للنموذج التعامل معها في وقت واحد.
ولحل هذه المشكلة، طور باحثون من جامعة فودان ومعهد شنغهاي للابتكار طريقة جديدة تسمى "فك التشفير الوميضي الأسرع" (Faster Flash Decoding). يعالج نهجهم المشكلة من خلال تغيير كيفية اتخاذ النموذج للقرار بشأن قطع المعلومات التي يجب الاحتفاظ بها وتلك التي يجب تجاهلها. فبدلاً من محاولة قراءة كل كلمة في مستند ضخم للعثور على الكلمات ذات الصلة، يستخدم النظام الجديد اختصاراً ذكياً؛ حيث يقوم أولاً بإنشاء "رسم تخطيطي" (sketch) صغير ومضغوط لتاريخ المحادثة بأكم، وهذا الرسم صغير جداً لدرجة أن الحاسوب يمكنه مسحه ضوئياً بشكل فوري تقرياً. ومن خلال النظر في هذا الرسم التخطيطي، يمكن للنظام تحديد الأجزاء التي من المرجح أن تكون مهمة في التاريخ والتي يمكن تجاهلها بأمان بسرعة. وفقط بعد هذا المسح السريع، يسترجع النموذج النسخة الكاملة والمفصلة من الأجزاء المختارة لإجراء الحساب النهائي. تسمح هذه العملية المكونة من خطوتين للنموذج بتجاوز كميات هائلة من البيانات غير ذات الصلة دون فقدان القدرة على فهم المعنى الجوهري للنص.
اختبر الباحثون هذه الطريقة على بطاقات رسوميات قوية، وهي النوع المستخدم في الألعاب عالية المستوى والحوسبة العلمية، ووجدوا أنها أسرع بشكل كبير من التقنيات القياسية الحالية. فعند معالجة سياق يبلغ 256,000 رمز، قلل النظام الجديد الوقت الذي يستغرقه توليد رمز واحد من أكثر من ميلي ثانية واحدة إلى مجرد جزء ضئيل من ذلك. ومن حيث السرعة الإجمالية، ولد النظام نصوصاً أسرع بمعدل يصل إلى 2.37 مرة من الطرق السابقة مع الحفاظ على نفس مستوى الدقة. وتحقق الفريق من هذا الأداء عبر مجموعة واسعة من المهام، بما في ذلك الاستنتاج المعقد واسترجاع حقائق محددة من مستندات طويلة، مؤكدين أن مكاسب السرعة لم تأتِ على حساب الذكاء. ويعمل النظام دون الحاجة إلى إعادة تدريب النموذج، مما يعني أنه يمكن توصيله بأنظمة الذكاء الاصطناعي الحالية فوراً لتحسين كفاءتها.
ويتمثل الابتكار الرئيسي في هذا العمل في الطريقة المحددة التي يفلتر بها النظام المعلومات. تعتمد الطرق التقليدية غالباً على قواعد ثابتة، مثل الاحتفاظ بأهم عشر كلمات فقط، أو حسابات معقدة تتطلب من النظام بأكمله التوقف والمزامنة قبل المتابعة. أما الطريقة الجديدة فتستخدم عتبة ديناميكية تتكيف مع التدفق الطبيعي للمحادثة؛ فهي تبحث عن الكلمات المهمة بشكل ملحوظ مقارنة بالكلمة الأكثر أهمية في السياق الحالي، مما يسمح لها بتعديل مقدار ما تحتفظ به بناءً على مدى تركيز الانتباه. هذا المرونة، جنباً إلى جنب مع استخدام بيانات منخفضة الدقة للغاية للمسح الأولي، تسمح للحاسوب بتجاوز عنق زجاجة الذاكرة الذي أعاق معالجة السياق الطويل لفترة طويلة. والنتيجة هي نظام يمكنه التعامل مع كميات هائلة من النصوص بسرعة كان يُعتقد سابقاً أنها مستحيلة دون التضحية بجودة الإجابات التي يقدمها.
ملخص تقني: أسرع من فلاش (Faster Than Flash - FFD)
بيان المشكلة
يعيق نشر النماذج اللغوية الكبيرة ذات السياق الطويل (Long-Context LLMs) حاليًا "جدار ذاكرة" شديد، وذلك خلال مرحلة فك التشفير التكراري (autoregressive decoding). فبينما تكون مرحلة التعبئة المسبقة (prefill phase) مقيدة بالحوسبة، فإن مرحلة فك التشفير مقيدة تمامًا بنطاق عرض حزمة الذاكرة (memory-bandwidth-bound). ومع نمو أطوال التسلسلات، تتطلب آلية الانتباه القياسية إعادة تحميل كامل مخزن المفتاح-القيمة (KV cache) من ذاكرة النطاق العالي (HBM) لكل رمز (token) يتم توليده، مما يخلق نموًا خطيًا في زمن الاستجابة (latency) يحد من معدل الإنتاجية (throughput).
تحاول أساليب الانتباه المتناثر (sparse attention) الحالية التخفيف من ذلك، لكنها تواجه معضلتين رئيسيتين:
معضلة المقاييس (The Metric Dilemma): الأساليب التي تعتمد على البيانات الوصفية (مثل مراكز العناقيد أو الحدود الهندسية) لتقدير أهمية الرمز تفرض عبئًا إضافيًا على الذاكرة أو تعاني من تشوه المعلومات.
معضلة الاختيار (The Selection Dilemma): استراتيجيات الميزانية الثابتة (Top-k) تفتقر إلى القدرة على التكيف مع تباين إنتروبيا الانتباه، بينما استراتيجيات التكيف مع التوزيع (Top-p) تتطلب مزامنة عالمية (softmax) وفرزًا، مما يكسر مسارات البث (streaming pipelines) ويؤدي إلى عبء إضافي كبير.
المنهجية: فلاش فك التشفير الأسرع (FFD)
إن FFD هو إطار عمل للتصميم المشترك بين الخوارزمية والعتاد (hardware-algorithm co-design)، حيث يدمج المختار والحاسب في نواة مدمجة بالكامل (fully fused kernel)، مما يلغي الفصل بين التصفية والحوسبة. وهو يعالج المعضلات المذكورة أعلاه من خلال ثلاثة ابتكارات جوهرية:
1. المسح المدرك للمحتوى عبر التكميم منخفض البت (Low-Bit Quantization)
بدلاً من تخزين مؤشرات بيانات وصفية إضافية، يقوم FFD بتقسيم مخزن المفتاح (K) إلى:
صور مصغرة مكممة بـ 2-بت (2-bit Quantized Thumbnails): تُستخدم للمسح عالي الإنتاجية والمدرك للمحتوى لتقدير درجات الانتباه.
بواقي بـ 8-بت (8-bit Residuals): تُخزن لإعادة بناء المفاتيح بدقة قريبة من FP16 للحوسبة النهائية. هذا النهج يلغي العبء الإضافي للبيانات الوصفية على الذاكرة مع الحفاظ على دقة معلومات عالية. تعمل مرحلة المسح بكثافة حسابية دنيا، باستخدام بيانات الـ 2-بت كوسيط عالي السرعة لتقدير الأهمية.
2. استراتيجية الاختيار Top-δ
يقدم FFD معيار اختيار مبتكر يتجنب جمود Top-k ومزامنة Top-p العالمية.
الآلية: يتم الاحتفاظ بالرمز j إذا حققت درجة انتباهه sij الشرط sij≥m~i−δ، حيث m~i هو تقدير للحد الأقصى الزائف و δ هو عتبة نسبية.
تقريب الحد الأقصى الزائف (Pseudo-Max Approximation): لتجنب اختناق الاختزال العالمي (global reduction) الناتج عن حساب الحد الأقصى العالمي الحقيقي (mi)، يقوم FFD بتقدير m~i باستخدام "رموز الغرق" (sink tokens - الرموز الأولية) ورموز السياق المحلي فقط. يُظهر التحليل التجريبي أن توزيعات الانتباه تهيمن عليها هذه المجموعات الفرعية، مما يجعل التقريب قويًا.
التكيف (Adaptivity): تتحكم العتبة δ (على سبيل المثال 5 أو 7) في مقدار الانخفاض المسموح به في كتلة احتمالية الانتباه (على سبيل المثال δ=5 يحتفظ بالرموز التي تساهم بـ >e−5 من الذروة). هذا يسمح لنسبة التناثر بالتكيف ديناميكيًا مع إنتروبيا توزيع الانتباه دون الحاجة لمزامنة عالمية.
3. النواة المدمجة وتحسين النظام
يتم تنفيذ FFD كنواة Triton مدمجة بالكامل تتكون من ثلاث مراحل:
تقدير الحد الأقصى الزائف: يحسب العتبة باستخدام رموز الغرق والرموز المحلية.
اختيار Top-δ: يقوم ببث مفاتيح الـ 2-بت، ويحسب الدرجات المؤقتة، ويصفي الكتل مقابل العتبة. الـ Refinement دقيق التفاصيل: بالنسبة للكتل المختارة، يتم تحميل بواقي الـ 8-بت والقيم لحساب درجات الانتباه الدقيقة. ولتقليل زمن الاستجابة بشكل أكبر، يستخدم المؤلفون استراتيجية الالتقاط الجاهز للتشغيل (JIT capture) القائم على الكتل لرسوم CUDA البيانية (CUDA Graphs). يسمح هذا بالتقاط خطوة فك التشفير بأكملها (بما في ذلك MLP والتطبيع) ديناميكيًا، مما يؤدي إلى تقليل تكاليف التجميع وإلغاء أعباء إطلاق المعالج المركزي (CPU launch overheads) للأحجام الصغيرة من الدفعات (batch sizes).
النتائج الرئيسية
الكفاءة والإنتاجية
تسريع النواة: على بطاقة NVIDIA RTX 4090، يحقق FFD تسريعًا على مستوى النواة يصل إلى 11.6× مقارنة بـ FlashAttention-2 عند سياق طوله 256 ألف.
الإنتاجية النهائية (End-to-End Throughput):
RTX 4090: يحقق FFD إنتاجية أعلى بمقدار 2.37× من FlashAttention-2 عند سياق 16 ألف (51.8 رمز/ثانية مقابل 21.9 رمز/ثانية).
H100: يحقق FFD تسريعًا بمقدار 1.96× فوق FlashAttention-2 عند سياق 16 ألف (87.0 رمز/ثانية مقابل 44.5 رمز/ثانية).
القابلية للتوسع: يتوسع الأسلوب بفعالية حتى سياق 256 ألف مع نمو خطي في زمن الاستجابة، ولكن بميل (slope) أقل بكثير من الانتباه الكثيف (dense attention).
الفعالية والدقة
اختبار RULER (سياق 32 ألف): يحافظ FFD على أداء شبه مثالي في مهام "الإبرة في كومة القش" (Needle In A Haystack) (100.0 في استرجاع المفتاح الواحد) ويحقق درجة إجمالية قدرها 89.4 (مع δ=7)، متفوقًا على الأساليب المتناثرة الأخرى مثل Quest (73.9) و KIVI (82.3)، ومقتربًا من النموذج الكثيف الأساسي (90.6).
LongBench: يحقق FFD أعلى درجة إجمالية (26.35) بين جميع الأساليب المتناثرة، متفوقًا على Quest و Twilight و KIVI، مما يثبت أن نسبة التناثر العالية لا تضحي بالدقة الدلالية.
التعميم: تم التحقق من الطريقة على Qwen2.5-7B-Instruct، مما أظهر تحسينات متسقة على النماذج المرجعية، مما يشير إلى قابلية التطبيق بغض النظر عن البنية (architecture-agnostic).
الأهمية والادعاءات
يزعم البحث أن FFD يمثل تحولًا جذريًا في فك تشفير السياق الطويل من خلال إعادة التفكير في الانتباه المتناثر كـ تصفية هندسية وليس فهرسة بيانات وصفية. وتكمن أهميته الأساسية في:
كسر جدار الذاكرة: من خلال دمج الاختيار والحوسبة، يتيح FFD إعادة استخدام نتائج المسح، محولًا عنق الزجاجة في فك التشفير من مشكلة مقيدة بالذاكرة إلى مشكلة مقيدة بالحوسبة حيث يكون المسح منخفض البت رخيصًا.
بدون إعادة تدريب وجاهز للاستخدام (Training-Free and Plug-and-Play): لا يتطلب الحل إعادة تدريب النموذج ويعمل كبديل مباشر لنواة الانتباه القياسية.
التصميم المشترك بين العتاد والخوارزمية: يوضح العمل أن التحسين لمتطلبات عتادية محددة (نطاق عرض الذاكرة) عبر تغييرات خوارماية (التكميم بـ 2-بت، تقريب الحد الأقصى الزائف) يحقق نتائج متفوقة مقارنة بالتحسينات الخوارزمية أو العتادية البحتة.
يخلص المؤلفون إلى أن فك تشفير السياق الطويل في المستقبل يجب أن يعطي الأولوية للمقايضات بين "الحوسبة لمدخلات/مخرجات الإدخال والإخراج" (compute-for-IO)، مستفيدًا من عمليات الحوسبة (FLOPs) الرخيصة في المسح منخفض البت لتوفير نطاق عرض حزمة HBM المكلف.