ما هو توربوكوانت؟ تقنية الضغط بالذكاء الاصطناعي من جوجل لتقليل ذاكرة التخزين KV بمقدار 6 أضعاف وتسريع الاستدلال 8 مرات

النقاط الرئيسية
- TurboQuant هو خوارزمية Google Research للتكميم المتجهي عبر الإنترنت التي تضغط ذاكرة التخزين المؤقت للمفاتيح والقيم (KV) في النماذج اللغوية الكبيرة لتصل إلى 3 بت فقط لكل قيمة مع تحقيق فقدان دقة صفري عبر معايير مثل LongBench وNeedle-in-a-Haystack وRULER.
- تشير المعايير إلى تخفيض 6 أضعاف في الذاكرة لخزانة KV وإلى تسريع يصل إلى 8 أضعاف في حساب لوجيت الانتباه على بطاقات NVIDIA H100 مقارنة بالمعايير الأساسية 32 بت.
- لا يتطلب تدريباً أو ضبطاً دقيقاً، مما يجعله قابلاً للتطبيق فوراً على النماذج الحالية مثل Gemma وMistral وLlama وQwen.
- تشير ردود فعل المجتمع إلى أنه يمكّن الأجهزة الموجهة للمستهلكين من التعامل مع نوافذ سياق أطول بشكل كبير مع جودة إخراج شبه متطابقة للاستدلال بدقة كاملة.
- تجمع التقنية بين الدوران المتعامد العشوائي، وPolarQuant للضغط الرئيسي، وQuantized Johnson-Lindenstrauss (QJL) ذو 1 بت لتصحيح الباقي.
ما هو TurboQuant؟
TurboQuant هو طريقة متقدمة للتكميم المتجهي طورتها Google Research تعيد تعريف الكفاءة للنماذج اللغوية الكبيرة والبحث المتجهي عالي الأبعاد. أُعلن عنه في أواخر مارس 2026 ومن المقرر تقديمه في ICLR 2026، وهو يستهدف الاختناق الحرج للذاكرة في استدلال المحولات: ذاكرة التخزين المؤقت لـ KV.
يُظهر التحليل أنه مع نمو أطوال السياق إلى عشرات أو مئات الآلاف من الرموز، يمكن لخزانة KV – التي تخزن متجهات المفاتيح والقيم المحسوبة مسبقاً لكل رمز – أن تستهلك غيغابايت من ذاكرة GPU وتسيطر على تكاليف الاستدلال. يقوم TurboQuant بضغط هذه المتجهات عالية الأبعاد (التي تكون عادة عوامات 16 أو 32 بت) إلى دقة فائقة الانخفاض دون المفاضلات المعتادة في جودة النموذج أو السرعة.
على عكس التكميم التقليدي بعد التدريب الذي غالباً ما يتطلب بيانات معايرة ولا يزال يتكبد تدهوراً في الدقة، فإن TurboQuant هو غير حساس للبيانات وتم إثباته رياضياً للاقتراب من الحدود النظرية للمعلومات لكل من متوسط الخطأ التربيعي (MSE) وتحريف الجداء الداخلي.
اختناق خزانة KV في النماذج اللغوية الكبيرة الحديثة
في هندسات المحولات، يعتمد الانتباه الذاتي على خزانة KV لتجنب إعادة حساب المفاتيح والقيم للرموز التي تمت رؤيتها سابقاً. بالنسبة لنموذج ذي بعد مخفي d وطول تسلسل n، تنمو الخزانة خطياً بـ O(n × d × طبقات × رؤوس × بايت لكل قيمة).
تشير المعايير إلى أن هذه الخزانة يمكن أن تتجاوز حجم أوزان النموذج خلال مهام السياق الطويل. يصبح تخزين KV القياسي بـ 16 بت بسرعة غير عملي على بطاقات GPU للمستهلكين أو في بيئات تقديم عالية الإنتاجية مثل vLLM. أدت محاولات الضغط السابقة (مثل التكميم 4 بت أو 8 بت مع مقاييس لكل كتلة) إلى نفقات عامة للذاكرة من تخزين ثوابت التسوية، مما يحد من المكاسب العملية إلى 2-3 أضعاف في أحسن الأحوال مع مخاطرة انحراف الإخراج.
يقضي TurboQuant على هذه النفقات العامة تماماً، مما يمكن النشر العملي للنماذذ مع نوافذ سياق 32k–128k+ على أجهزة كانت تواجه صعوبة سابقاً عند 8k.
كيف يعمل TurboQuant: غوص تقني عميق
يعمل TurboQuant كخوارزمية ذات مرحلتين عبر الإنترنت، مُحسَّنة لكل من الحفاظ على متوسط الخطأ التربيعي (MSE) والحفاظ على حاصل الضرب الداخلي—وهو أمر بالغ الأهمية لدقة درجات الانتباه (attention scores).
المرحلة 1: دوران عشوائي + ضغط PolarQuant
-
الدوران العمودي العشوائي: تخضع كل متجه إدخال KV (متجهات المفاتيح والقيم) لتحويل عمودي عشوائي مستقل عن البيانات (عبر تحلل QR لمصفوفة Gaussian). يعيد هذا توزيع مقادير المعاملات بشكل متساوٍ عبر الأبعاد، محولاً البنية شبه المتناثرة النموذجية لتنشيطات LLM إلى توزيع حسن التصرف.
بعد الدوران، يتبع كل إحداثي توزيع Beta((d-1)/2, (d-1)/2) المعروف على [-1، 1]. تسمح هذه القدرة على التنبؤ بحساب مراكز التكميم المثلى تحليلياً مسبقاً.
-
PolarQuant (تكميم سلمي عالي الجودة):
- يتم تسوية المتجهات وتحويلها من الإحداثيات الديكارتية إلى الإحداثيات القطبية عن طريق إقران الأبعاد بشكل متكرر.
- يلتقط نصف القطر المقدار؛ وتشفر الزوايا المعلومات الاتجاهية (الدلالية).
- نظراً لأن توزيعات الزوايا مركزة وقابلة للتنبؤ، يتم إلغاء ثوابت التسوية المكلفة لكل كتلة.
- يقوم كموّز Lloyd-Max—المُحسَّن لمتوسط الخطأ التربيعي (MSE) عبر توزيع Beta—بتعيين كل إحداثي إلى قيمة منفصلة منخفضة البت (على سبيل المثال، 3 بت إجمالاً للمرحلة الرئيسية).
توفر هذه المرحلة الجزء الأكبر من الضغط (غالبية البتات) مع الحفاظ على جميع معلومات المتجه تقريباً.
المرحلة 2: التصحيح المتبقي QJL
يبقى خطأ متبقي ضئيل بعد PolarQuant. يطبق TurboQuant تحويل Johnson-Lindenstrauss المُكَمَّم (QJL) باستخدام 1 بت فقط لكل متجه (+1 أو -1 إشارة). يصحح هذا التحيز في حاصل الضرب الداخلي دون إضافة عبء على الذاكرة.
النتيجة: تصل المتجهات المعاد بناؤها إلى تشابه جيب تمام وارتباط حاصل ضرب داخلي شبه كامل مع المتجه الأصلي (0.983+ عند 3 بت في اختبارات المجتمع).
العملية بأكملها صديقة للمسرعات، حيث تمكن نويات Triton المندمجة من الحساب المباشر للقيم اللوجيتية للانتباه (attention logits) من المؤشرات المضغوطة—دون الحاجة إلى إزالة التكميم الكامل أثناء الاستدلال.
المعايير والأداء في العالم الحقيقي
تؤكد المعايير المستقلة والتقييمات الداخلية لـ Google نتائج استثنائية:
- الذاكرة: ذاكرة KV بـ 3 بت توفر تقليلًا يصل إلى 6 أضعاف مقارنة بالمعايير الأساسية بـ 16 بت؛ وتحقق المتغيرات بـ 4 بت مكاسب فعلية تصل إلى 8 أضعاف في بعض أحمال العمل.
- السرعة: يوفر TurboQuant بـ 4 بت سرعة تصل إلى 8 أضعاف في حساب الانتباه على وحدات معالجة الرسومات H100 مقارنة بالمفاتيح غير المكممة بـ 32 بت.
- الدقة: استدعاء كامل في اختبار Needle-in-a-Haystack عبر سياقات تتراوح بين 8k–64k. عدم وجود تدهور في LongBench وZeroSCROLLS وRULER وL-Eval للنماذج بما في ذلك Gemma وMistral وQwen3.5.
- اختبارات المجتمع (مثلًا، Gemma-3-4B على RTX 4090):
- النواة المدمجة بـ 2 بت: إخراج مطابق للمعيار الأساسي fp16، مع تقليل ذاكرة KV من 26 ميجابايت إلى 7 ميجابايت.
- إنتاجية من البداية إلى النهاية تطابق أو تتجاوز المعيار الأساسي مع استخدام أقل من 70% من VRAM.
تظهر تقييمات البحث المتجهي على GloVe (d=200) استدعاءً أعلى لـ top-k مقارنة بـ Product Quantization (PQ) وRabbiQ، على الرغم من قواميس الرموز الأصغر وعدم ضبط مجموعة البيانات.
كيفية تطبيق TurboQuant: دليل خطوة بخطوة
لم تطلق Google كود إنتاج رسمي، لكن المجتمع مفتوح المصدر قدم تطبيقات عمل في غضون أيام من الإعلان. إليك كيفية البدء اليوم.
1. البدء السريع مع PyTorch (البحث/النمذجة الأولية)
استخدم التطبيق من الصفر في tonbistudio/turboquant-pytorch:
– استنساخ المستودع وتثبيت التبعيات (PyTorch + Triton).
– حساب قواميس Lloyd-Max مسبقًا لبعد النموذج الخفي وعرض البت المستهدف.
– تعديل DynamicCache من Hugging Face للكمية في كل استدعاء لـ cache.update().
– تشغيل سكريبت العرض: python run_demo.py --fused --bits 3 لـ Gemma-3-4B أو مشابه.
تقوم نواة Triton المدمجة بتدوير الاستعلامات مرة واحدة مسبقًا وتحسب المنتجات النقطية مباشرة من مؤشرات uint8، مما يوفر تسريعًا من البداية إلى النهاية يزيد عن 1.2 ضعف.
2. الخدمة الإنتاجية مع vLLM
تكاملات vLLM المتفرعة (مثل mitkox/vllm-turboquant أو فرع flash7777/vllm turboquant):
– تثبيت بناء vLLM المخصص. – تمكين TurboQuant في وسائط المحرك (يدعم مفاتيح/قيم من 2-4 بت). – النشر مع خادمك المتوافق مع OpenAI الحالي — لا حاجة لتغييرات في النموذج. – توقع توفير فوري لـ KV cache وإنتاجية أعلى لأحمال العمل ذات السياق الطويل.
3. الاستدلال المحلي على Apple Silicon (MLX)
تتيح منافذ MLX الأصلية (مثل helgklaizar/turboquant_mlx) TurboQuant على أجهزة Mac من السلسلة M:
– pip install mlx-turboquant (الحزم المجتمعية متاحة).
– تحميل النماذج عبر MLX وتطبيق غلاف الـ cache.
– مثالي للتجارب على الجهاز مع سياقات تزيد عن 32k.
4. تكامل llama.cpp (وحدة المعالجة المركزية/وحدة معالجة الرسومات)
الفروع التجريبية (TheTom/llama-cpp-turboquant) تخضع حاليًا للتحسين النشط من أجل نماذج متوافقة مع GGUF.
نصائح احترافية:
- ابدأ بدقة 3 أو 4 بت للحصول على صفر فقدان في الجودة الملحوظة.
- استخدم مسارات الاستعلام المُعَدَّة مسبقًا (pre/rotated query paths) في النوى المدمجة لتقليل النفقات العامة.
- اختبر أولاً على "إبرة في كومة قش" (Needle-in-a-Haystack) للتحقق من الدقة.
- راقب ذاكرة VRAM باستخدام أدوات مثل
nvidia-smi— توقع تحسينًا فعالًا في السياق يتراوح بين 4 إلى 7 مرات.
من المتوقع دعم واسع النطاق في vLLM، TensorRT-LLM، و llama.cpp خلال أسابيع مع نضوج التحسينات.
TurboQuant مقابل طرق التكمية التقليدية
تعتمد الطرق التقليدية (مثل GPTQ، AWQ، أو int4 الأساسية) على مقاييس لكل مجموعة ومعايرة، مما يقدم غالبًا 1-2 بت من النفقات العامة لكل قيمة ويؤدي إلى تدهور أداء السياق الطويل. تتطلب "تكمية المنتج" (Product Quantization) قواميس شيفرات (codebooks) كبيرة ومحددة لمجموعة بيانات وضبطًا خارجيًا (offline tuning).
TurboQuant يختلف تمامًا:
- صفر نفقات عامة: لا توجد ثوابت مخزنة أو بيانات وصفية لكل كتلة.
- غير حساس للبيانات: يعمل جاهزًا على أي نموذج دون حاجة لتخصيص.
- تشويه شبه مثالي: مثبت رياضيًا لكل من متوسط مربع الخطأ (MSE) والضرب الداخلي (inner products).
- ملائم للتشغيل المباشر (Online-friendly): يعمل أثناء الاستدلال مع تأخر زمني ضئيل.
تظهر التنفيذات المجتمعية أنه حتى استخدام TurboQuant بقوة 2 بت يمكنه مطابقة جودة الناتج بدقة كاملة حيث تفشل الطرق القياسية بدقة 4 بت.
التطبيقات والأثر المستقبلي
TurboQuant يُفتح الأبواب أمام:
- سياقات أطول على أجهزة المستهلكين (مثل 128 ألف رمز (token) على RTX 4090 واحد). . تقليل التكاليف: تخفيض يصل إلى 50%+ في نفقات الاستدلال لمزودي الخدمات السحابية.
- الذكاء الاصطناعي على الحافة (Edge AI): بحث دلالي فعال ونماذج لغوية كبيرة على الجهاز نفسه (on-device LLMs).
- قواعد البيانات المتجهية: فهارس أسرع وأكثر كثافة مع استدعاء (recall) من الدرجة الأولى.
مع نمو الاعتماد، توقع خطوط معالجة هجينة لتكمية الأوزان + ذاكرة التخزين المؤقت للقيم الرئيسية (KV cache) التي تدفع نماذج 70 مليار+ معلمة إلى عالم الهواتف المحمولة وأجهزة اللابتوب.
الخاتمة
يمثل TurboQuant قفزة نادرة في هندسة أنظمة الذكاء الاصطناعي: مكاسب كفاءة قصوى دون المساس بالجودة. من خلال حل مشكلة اختناق ذاكرة التخزين المؤقت للقيم الرئيسية (KV cache bottleneck) عبر رؤى رياضية أنيقة — التدوير العشوائي، الهندسة القطبية، والتصحيح المتبقي — قدمت أبحاث جوجل مخططًا (blueprint) بدأ المجتمع بالفعل في تحويله إلى أدوات جاهزة للإنتاج.
سواء كنت تشغّل نماذج محلية، أو تقدم واجهات برمجة تطبيقات عالية الإنتاجية، أو تبني تطبيقات بحث متجهية، الآن هو الوقت المناسب للتجريب. انسخ تنفيذًا مجتمعيًا، قم بقياس الأداء مقارنة بإعدادك الحالي، ووسّع نوافذ السياق الخاصة بك بشكل كبير. عصر الذكاء الاصطناعي المقيد بالذاكرة ينتهي — TurboQuant يجعل الاستدلال الأكبر والأسرع والأرخص حقيقة عملية اليوم.