تحسين ذاكرة KV لاستدلال السياق الطويل بالعربية

تبدو نوافذ السياق الطويل مجانيّةً في عرضٍ تسويقي. لكنها ليست كذلك. كل رمزٍ إضافيٍّ تُغذّيه جهةٌ سياديةٌ عُمانية إلى Gemma 4 أو Qwen 3.6 يستهلك ذاكرةَ معالجٍ رسومي حقيقيةً في ذاكرة المفاتيح والقيم، والنصُّ العربي يستهلكها أكثر من الإنجليزي لكل صفحة. تستعرض هذه المقالة الروافع الأربع (الترقيم، التخزين المسبق للموجّه، التكميم، سياسات الإخلاء) التي تُحدِّد ما إذا كان جهازُ سياقٍ بسعة 256k سيخدم عشرة مستخدمين أم مئة.

مشكلة ذاكرة KV عند السياقات الطويلة

أثناء التوليد التتابعي، تكتب كل طبقة في النموذج المحوَّل مفاتيحَ وقيمَ كل رمزٍ سابقٍ في ذاكرةٍ خاصة بالطلب. تُقرأ هذه الذاكرة عند توليد كل رمزٍ جديد، فتحتاج إلى أن تكون في ذاكرة المعالج الرسومي السريعة. الكلفة التقريبية هي 2 × layers × heads × head_dim × bytes × seq_len، مضروبةً مرةً أخرى في عدد المستخدمين المتزامنين. لنموذجٍ من فئة Gemma 4 عند 256k رمز بدقّة FP16، قد تصل ذاكرة المستخدم الواحد إلى عشرات الجيجابايتات قبل أن تبدأ الإجابة.

تُضيّع أنظمة الخدمة الساذجة بين 60% و80% من تلك الذاكرة في التشظّي الداخلي والخارجي، لأن كل طلبٍ يحجز كتلةً متّصلة بأسوأ حجمٍ متوقّع. قاس فريق vLLM ذلك في الورقة الأصلية لـPagedAttention، وأظهر أن مخصِّصًا على نمط الترقيم يُعيد الهدر إلى ما دون 4% (Kwon et al., SOSP 2023).

الأساليب: الترقيم، التخزين المسبق، التكميم، الإخلاء

تتراكب أربعُ معالجاتٍ، كلٌّ منها رافعةٌ مستقلة، وتُطبّقها أحدث منصّات الخدمة (vLLM، TensorRT-LLM، SGLang) كاملةً أو في معظمها.

  • PagedAttention، تعامل الذاكرة بوصفها كتلًا فيزيائيةً ثابتة الحجم (16 رمزًا غالبًا) مع جدولِ ترجمةٍ منطقيٍّ إلى فيزيائيٍّ لكل طلب. تقضي على التشظّي وتُتيح المشاركة بالنسخ-عند-التعديل، وترفع الإنتاجية مرّتين إلى أربع مرّات بزمن استجابةٍ مماثلٍ مقارنةً بـFasterTransformer أو Orca (توثيق vLLM).
  • التخزين المسبق للموجّه، حين تتشارك طلباتٌ كثيرةٌ مقدّمةً واحدة (سياسةٌ طويلة، موجّهٌ نظاميٌّ، وثيقةٌ مسترجعة)، يحسب المحرّك المفاتيح والقيم لتلك المقدّمة مرّةً واحدة ويُعيد استخدام الكتل الفيزيائية ذاتها عبر كل الطلبات التابعة. فيهبط زمنُ أول رمز ويرتفع عددُ الجلسات المتزامنة دون شراء ذاكرةٍ إضافية.
  • تكميم ذاكرة KV، يخزّن المفاتيح والقيم بدقّة FP8 أو INT4 بدل FP16. يُنصّف FP8 الذاكرة عادةً بفقدٍ غير قابلٍ للقياس تقريبًا في الجودة، فيما يضاعف INT4 السعة أربع مرّات مع تنازلٍ طفيفٍ في الدقّة وتباطؤٍ في التوليد عند الدفعات الكبيرة (توثيق vLLM لتكميم KV، LMDeploy INT4/INT8).
  • سياسات الإخلاء، حين يتجاوز الطلبُ الذاكرة، يُخلي الجدوِل كتلًا من الجلسات الخاملة أو منخفضة الأولوية، إمّا بنقلها إلى ذاكرة المضيف أو بإعادة حسابها عند الاستئناف. السياسات الجيّدة (LRU على الجلسة، طبقات أولوية بحسب الفئة) تتفادى تعطّلات رأس الطابور.

الأثر الخاص بالعربية: رموزٌ أكثر لكل حرف

تُعاقب العربية كل أسلوبٍ يحاسبُ بالرمز. دُرِّبت معظم أدوات التقطيع الفرعية الإنتاجية على متونٍ ويب يغلب عليها الإنجليزي، فتُقطّع الكلمات العربية، خصوصًا الفصحى ذات التشكيل الغني والاتصالات الحرفية، إلى وحداتٍ أكثر من نظيرتها. في تقييماتنا الداخلية على عيّنة من نصوص جهةٍ تنظيمية، أنتجت الفقرة ذاتها 1.4 إلى 1.8 ضعفًا من الرموز بالعربية مقارنةً بالإنجليزية. وتنمو كلفة ذاكرة KV خطيًا مع هذا العدد، فتكلفة ذاكرة وثيقة سياسات ثنائية اللغة من ستين صفحةً تكون أعلى بنحو 60% إلى 80% في صياغتها العربية.

نتيجتان عمليتان لأي نشرٍ سيادي: أولًا، التخزين المسبق للموجّه يصبح أعلى قيمة، فموجّهٌ نظاميٌّ عربيٌّ طويل، يُحسب مرةً ويُتقاسم على مئة جلسة خدمةٍ مواطنية، يستردّ معظم ضريبة التقطيع. ثانيًا، يتحوّل تكميم FP8 من خيارٍ إلى إعدادٍ افتراضي، لأن المعالج الرسومي ذاته بات يحمل ضِعفَ بصمة الذاكرة الخام لمرجعيةٍ إنجليزيّة فقط.

التداعيات على العتاد والتحجيم بحسب الفئة

ترجمةُ هذه الأساليب إلى تحجيمٍ للجهاز هي صلب ما نشرحه في معمارية Gemma 4 بسياق 256k. قواعدٌ ميدانية للأحمال العربية الكثيفة:

  • حصن كيرنل (H100 80 جيجابايت مفردة): ثلاثون مستخدمًا متزامنًا بالعربية عند 256k مع FP8 ومشاركةِ موجّهٍ مكثّفة. مناسبةٌ لمساعد سياسات وزاريّ أو مكتب محلّلٍ لجهةٍ تنظيمية واحدة.
  • حصن تاور (وحدتان): مئة مستخدمٍ متزامن عند 256k مع إخلاءٍ على الخمول. مناسبةٌ لمكتب خدمة عملاء يخدم المواطنين بالفصحى مع تحوّلاتٍ دوريةٍ إلى الإنجليزية.
  • حصن راك (أربع وحدات بتوازي تنسوري): مئتا مستخدمٍ فأكثر بفئاتِ جودة خدمةٍ صارمة. مناسبةٌ لأحمالٍ في الفئة السرية حيث لا تُساوَم على زمن الاستجابة.

عند السياقات الطويلة، يصبح عرضُ نطاق الذاكرة، لا السعة فحسب، هو القيد الفعلي. فكل رمزٍ مولَّد يقرأ ذاكرةَ KV كاملةً لطبقته، مما يُشبع الناقل قبل وحدات الحساب. لذلك يتفوق العتاد من فئة H100 (بعرض HBM يفوق 3 تيرابايت/ثانية) على صناديق L40S الأرخص بفارقٍ يفوق ما تشير إليه أرقامُ FLOPS المعلنة. ومن المنطق ذاتِه يُنصح بعدم تقسيم الذاكرة عبر بطاقاتٍ استهلاكية بلا NVLink، فبطاقةٌ سريعةٌ واحدة كثيرًا ما تتفوّق على بطاقتين بطيئتين في الأحمال العربية الطويلة، إذ تبقى الذاكرة محلّية وتتجنّب جولاتِ الترابط.

ملاحظةٌ تشغيلية تستحق الإبراز للمشترين السياديين: الاستدلال طويل السياق لزجٌ بطبعه. فحالما يبدأ فريقُ جهةٍ تنظيمية بتمرير حزم سياسات من ستين صفحة عبر النموذج، تصبح أهداف الإنتاجية التي بدت سخيّةً عند 32k ضيّقةً عند 256k، وأضيق حين تكون العربيةُ لغة العمل. نوصي بتخطيط السعة على أساس المئين الخامس والتسعين من طول السياق المتوقّع، لا متوسطه، ومراجعة فئة الجهاز كل ربعٍ مع نضوج الأحمال. الروافع الأربع المذكورة آنفًا توسّع السعة الفعلية دون شراء عتاد، مما يمنح وقتًا لإعادة التحجيم بهدوءٍ بدل الاضطرار إليه تحت الضغط.

للاطلاع على كيفية تركيب هذه الأساليب في خط معالجةٍ عاملٍ بسعة 256k داخل صندوقٍ سياديٍّ على المؤسسة، انظر المقال الركيزة عن معمارية Gemma 4 بسياق 256k. للحصول على جلسة إحاطةٍ لمدة ساعة حول التحجيم المناسب لحملك العربي، راسلنا على [email protected] أو واتساب +968 9889 9100.

أسئلة شائعة

لماذا يحتاج الاستدلال بالعربية إلى ذاكرة KV أكبر مقارنةً بالإنجليزية لعدد الكلمات نفسه؟

تقطّع معظم أدوات التقطيع الإنتاجية الكلمةَ العربية إلى وحدات فرعية أكثر من نظيرتها الإنجليزية. يمكن أن تُنتج الفقرة ذاتها من نص جهة تنظيمية ما بين 1.4 و1.8 ضعف عدد الرموز، وتنمو ذاكرة KV خطيًا مع عدد الرموز، فتكلفة استيعاب وثيقة سياسات بالعربية أعلى من نظيرتها الإنجليزية حتى قبل أن يبدأ النموذج بالإجابة.

هل يضر التكميم إلى FP8 بجودة الإجابات بالعربية؟

FP8 آمن إلى حدٍّ كبير في توليد العربية وفق اختباراتنا الداخلية على Gemma 4 وQwen 3.6. يُقلّص حجم الذاكرة إلى النصف بفقدٍ شبه معدوم في الجودة. أما INT4 فهو أكثر جذرية، نافع في المهام الدفعية كالتلخيص، ويُتحفّظ عليه عادةً في الدردشة التفاعلية.

كيف يساعد التخزين المسبق جهةً تنظيمية تستخدم وثائق سياسات طويلة في موجّهاتها؟

حين تُستخدم وثيقة سياسات من ثلاثين صفحة كموجّه نظامي عبر آلاف الاستفسارات، يحسب النظام مفاتيح وقيم تلك المقدمة مرّة واحدة ويعيد استخدامها في كل طلب لاحق. ينخفض زمن أول رمز انخفاضًا حادًا، وتُتقاسم الذاكرة بدلًا من تكرارها لكل جلسة.

كيف يُحدَّد القدر المناسب من ذاكرة KV على جهازٍ سيادي؟

يتبع التحجيم معادلة عرض طبقات النموذج مضروبًا في عدد المستخدمين المتزامنين وفي متوسط طول السياق. نشرٌ بسعة 256k رمز على Gemma 4 مع ثلاثين مستخدمًا متزامنًا بالعربية وذاكرة FP8 يتسع عادةً لجهازٍ بـH100 سعة 80 جيجابايت. أما الأحمال السرية الأثقل بمئتي مستخدم فتنتقل إلى وحدتين أو أربع.