تخطّي إلى المحتوى الرئيسي
← العودة إلى المجلّة
ذكاء اصطناعي · بنية·أبريل ٢٠٢٦·٩ دقائق قراءة

ما هو PagedAttention وما الذي غيّره في عالم الـ LLM Serving.

فيصل العنقودي · المؤسس والرئيس التنفيذي

المشكلة في Serving لم تكن دائماً سرعة المعالج، بل هدر الذاكرة في KV Cache. PagedAttention غيّر اللعبة لأنه عامل الذاكرة كصفحات قابلة للتخصيص بدل مساحات متجاورة ضخمة، فقلّ الهدر وارتفعت الإنتاجية على نفس العتاد.

عندما يقول فريقك «النموذج بطيء في الإنتاج»، غالباً ما يكون جزء من المشكلة في إدارة الذاكرة، لا في الـGPU وحده. في مسارات التوليد، كل طلب يحتفظ بـKV Cache يكبر مع طول السياق. وإذا أُديرت هذه الذاكرة بشكل تقليدي متجاور، يزداد الهدر بسرعة.

هنا ظهر PagedAttention داخل vLLM: فكرة مستوحاة من الذاكرة الافتراضية في أنظمة التشغيل. بدل تخصيص كتلة كبيرة متجاورة لكل طلب، تُقسّم ذاكرة الـKV إلى صفحات أصغر يمكن ربطها ديناميكياً أثناء التوليد [١].

المشكلة قبل PagedAttention.

قبل هذه الفكرة، كثير من محرّكات الـServing كانت تحجز مساحة أكبر من الحاجة المتوقعة لكل تسلسل. النتيجة: Fragmentation وهدر في الذاكرة، خصوصاً مع أحمال غير متجانسة (طلبات قصيرة مع طلبات طويلة في نفس اللحظة).

هذا الهدر لا يظهر فقط كرقم ذاكرة مهدور؛ يظهر كعدد أقل من الطلبات التي تستطيع تشغيلها بالتوازي، وبالتالي throughput أقل وتكلفة أعلى لكل رمز مُولَّد.

ما هو PagedAttention ببساطة.

PagedAttention يقسّم KV Cache إلى Blocks ثابتة الحجم (صفحات)، ويحتفظ بجدول تعيين يربط الصفحات المنطقية للتسلسل بصفحات فعلية على الـGPU. عندما يحتاج الطلب إلى توكنات إضافية، يحصل على صفحات جديدة فقط عند الحاجة بدل إعادة حجز كتل كبيرة [١][٢].

المكسب ليس «تسريع معادلة الانتباه» مباشرة، بل رفع كفاءة استعمال الذاكرة. وعندما تتحسن الكفاءة، تستطيع تشغيل Batch أكبر أو عدد طلبات متزامنة أعلى على نفس الجهاز، وهذا يترجم عملياً إلى أداء أفضل وكلفة أقل لكل طلب.

PagedAttention لم يخترع نموذجاً جديداً. هو جعل نفس النموذج يُخدَّم بذكاء أعلى في الذاكرة.

ما الذي غيّره في عالم LLM Serving.

  • رفع الاستفادة من ذاكرة الـGPU عبر تقليل الهدر في KV Cache.
  • زيادة القدرة على الـcontinuous batching لأن الذاكرة صارت أكثر مرونة.
  • تحسين throughput على نفس العتاد مقارنةً بمحركات تخصيص تقليدية في كثير من الحالات [١].
  • خفض الضغط على الفرق التشغيلية: أقل إعادة ضبط للحجوم اليدوية لكل workload.
  • فتح الباب لبنية Serving أكثر اقتصادية عند الأحمال المتغيرة (chat, agents, mixed context lengths).

أين يلمس المنتج هذا الفرق.

على مستوى المنتج، التأثير يظهر في مؤشرين: عدد المستخدمين المتزامنين الذين يمكنك خدمتهم بزمن مقبول، وتكلفة الرمز عند نفس جودة الخدمة. إذا كنت تدير مساعداً محادثياً بقمم استخدام يومية، فإن تقليل هدر KV ينعكس مباشرة على الفاتورة.

في نُقطة، القاعدة العملية بسيطة: عندما يرتفع طول السياق وتتداخل جلسات كثيرة قصيرة وطويلة، تصبح إدارة الذاكرة أهم من أي ادعاء تسويقي حول «سرعة النموذج» وحدها [٥].

مخطط الفكرة.

FIG. 1 — PAGEDATTENTION: LOGICAL TOKENS TO PHYSICAL KV PAGES

هل يكفي PagedAttention وحده؟

لا. هو جزء من منظومة Serving: scheduler جيد، continuous batching، إدارة طلبات، وسياسات timeout/retry. لكنه كان خطوة مفصلية لأنه حل عنق زجاجة ذاكرة كان يحدّ السعة قبل أن تحدّها قوة الحساب.

إذا كنت تقارن محركين، لا تكتفِ بالـtokens/sec في اختبار واحد. قارن أيضاً سلوك الذاكرة مع أحمال حقيقية متعددة الأطوال، لأن هناك يظهر الفرق الفعلي.

أسئلة شائعة.

  • هل PagedAttention يغيّر جودة النموذج؟ لا، هو تحسين Serving وإدارة ذاكرة، لا تغيير أوزان.
  • هل هو حصري لـvLLM؟ المصطلح ارتبط بـvLLM والأدبيات المرتبطة به، لكن الفكرة العامة (paging للـKV) قابلة للاستلهام في تصميمات أخرى.
  • هل يفيد في الاستدلال القصير فقط؟ يظهر أثره أكثر كلما زاد تباين أطوال السياق وتزاحم الطلبات.
  • هل يغنيني عن GPU أقوى؟ ليس دائماً؛ لكنه يرفع ما تستخرجه من نفس العتاد قبل التفكير في ترقية مكلفة.
  • ما أول KPI أراقبه؟ GPU memory utilization الفعلي مع throughput تحت حمل مختلط، لا حمل صناعي ثابت فقط.

الخلاصة والدعوة.

PagedAttention غيّر عالم LLM Serving لأنه نقل النقاش من «كم TFLOPS لدينا» إلى «كيف نستهلك الذاكرة بذكاء». والنتيجة في كثير من البيئات كانت: نفس النموذج، نفس الجهاز، لكن طلبات أكثر وفاتورة أفضل.

قبل أي توسعة عتاد هذا الشهر، شغّل اختبار حمل مختلط وقياس KV cache fragmentation. إن وجدت الهدر عالياً، فالخطوة التالية ليست شراء GPU جديد مباشرة — بل إصلاح طريقة الخدمة.

المصادر.

[١] Kwon et al. — Efficient Memory Management for Large Language Model Serving with PagedAttention (vLLM) — SOSP 2023 / arXiv.

[٢] vLLM Documentation — PagedAttention and engine design.

[٣] vLLM Blog — vLLM: Easy, Fast, and Cheap LLM Serving with PagedAttention.

[٤] AnyScale — Continuous batching and serving throughput discussions for LLM inference.

[٥] نقطة — ملاحظات داخلية حول اختبارات Serving وتكلفة الرمز تحت أحمال مختلطة، أبريل ٢٠٢٦ (Nuqta internal serving notes, April 2026).

مقالات ذات صلة

← العودة إلى المجلّةنُقطة · المجلّة