فك الترميز التخميني: كيف تصبح نماذج الذكاء الاصطناعي أسرع دون أن تكبر

عنق الزجاجة في سرعة نماذج اللغة الكبيرة
تولد نماذج اللغة الكبيرة النص رمزًا تلو الآخر. يتطلب كل رمز تمريرًا أماميًا كاملاً عبر نموذج قد يحتوي على مليارات المعاملات، ويجب أن تكون هذه التمريرات متسلسلة - لا يمكنك توليد الرمز N+1 حتى تحصل على الرمز N. بالنسبة لنموذج مثل GPT-4 أو Claude 3، هذا يعني أن الاستدلال (inference) هو أساسًا تسلسلي على مستوى الرمز، مما يجعل زمن الاستجابة متناسبًا مع طول المخرجات. هذه ليست مشكلة أجهزة. حتى على أسرع وحدات معالجة الرسوميات (GPUs) مع عرض نطاق ترددي مثالي للذاكرة، يصطدم فك الترميز التلقائي (autoregressive decoding) بجدار لأن البنية تتطلب ذلك. يتجاوز فك الترميز التخميني (speculative decoding) هذا القيد تمامًا عن طريق تغيير ما يفعله النموذج الكبير فعليًا أثناء التمرير الأمامي.
ما يفعله فك الترميز التخميني فعليًا
الفكرة الأساسية بسيطة بشكل مخادع: استخدام نموذج مسودة (draft model) صغير وسريع لتوليد سلسلة من الرموز المرشحة بشكل تخميني، ثم استخدام نموذج المدقق (verifier model) الكبير للتحقق منها جميعًا في تمرير أمامي موازٍ واحد. إذا وافق النموذج الكبير على رموز المسودة، فإنك تقبلها جميعًا مرة واحدة. إذا اختلف عند الموضع K، فإنك ترفض الرموز من K فصاعدًا وتعيد أخذ عينة من توزيع النموذج الكبير عند ذلك الموضع.
البصيرة الحاسمة هي أن التمرير الأمامي للنموذج الكبير ليس مقيدًا بطول المخرجات في وضع التحقق - يمكنه معالجة مجموعة من رموز المرشح K في نفس الوقت تقريبًا الذي يستغرقه معالجة رمز واحد للتوليد. عندما يكون نموذج المسودة دقيقًا، تحصل على رموز K مقابل تمرير أمامي واحد للنموذج الكبير. عندما يكون نموذج المسودة غير دقيق، تفقد بعض الكفاءة ولكنك لا تتنازل أبدًا عن جودة المخرجات، لأن المدقق يفرض محاذاة دقيقة مع توزيع النموذج الكبير.
رسميًا، إذا اقترح نموذج المسودة الرمز x عند الموضع i باحتمال q(x)، وقام النموذج الهدف بتعيين الاحتمال p(x)، فسيتم قبول الرمز باحتمال min(1, p(x)/q(x)). يتم إعادة أخذ عينات الرموز المرفوضة من توزيع مصحح (p - q)، بعد تسويته. يضمن مخطط أخذ العينات بالرفض (rejection sampling) هذا أن توزيع المخرجات النهائي مطابق تمامًا لما ستحصل عليه من النموذج الكبير الذي يعمل بمفرده - فك الترميز التخميني هو بلا فقدان (lossless) من خلال البناء.
نماذج المسودة: المحرك وراء التسريع
جودة نموذج المسودة تحدد كل شيء. نموذج المسودة الذي يحقق معدل قبول الرموز (TAR) بنسبة 80% على المدخلات النموذجية يوفر تسريعًا يبلغ حوالي 3-4 أضعاف على التسلسلات الطويلة. معدل قبول الرموز بنسبة 60% يحقق 1.5-2 أضعاف. أقل من 50%، يبدأ الحمل الزائد لتشغيل كلا النموذجين في التهام المكاسب.
هناك نهجان معماريان يسيطران عمليًا:
- نماذج صغيرة مستقلة: نموذج منفصل مدرب على نفس بيانات النموذج الكبير ولكن بحجم أصغر بكثير. على سبيل المثال، استخدام نموذج بحجم 7B كمسودة لمدقق بحجم 70B. هذا هو النهج المستخدم في ورقة فك الترميز التخميني الأصلية من قبل Leviathan et al. (2023) ولا يزال الأكثر انتشارًا.
- رؤوس Medusa: تضيف بنية Medusa من Google عدة "رؤوس" خفيفة الوزن مباشرة إلى الطبقة الأخيرة من النموذج الأساسي، يتنبأ كل منها برموز في إزاحات مختلفة في المستقبل (الموضع +1، +2، +3، إلخ) في تمرير أمامي واحد. نظرًا لأن رؤوس Medusa تشارك تمثيلات النموذج الأساسي، فإنها تحقق معدلات قبول أعلى من نموذج المسودة المستقل لنفس تكلفة الحوسبة. تعمل Medusa-2 على تحسين هذا الأمر بشكل أكبر من خلال الضبط الدقيق المشترك للرؤوس مع النموذج الأساسي.
النهج الثالث، فك الترميز التخميني الذاتي (self-speculative decoding)، يتخطى طبقات معينة من النموذج الكبير خلال مرحلة المسودة ويستخدم النموذج الكامل للتحقق. هذا يتجنب الحاجة إلى الاحتفاظ بنموذج مسودة منفصل ولكنه يتطلب استئصالًا دقيقًا لتحديد الطبقات التي يمكن تخطيها بأمان لكل مجال.
الاعتماد في العالم الحقيقي: أين يتم نشر فك الترميز التخميني
انتقل فك الترميز التخميني من البحث إلى الإنتاج عبر كل مختبر رئيسي للذكاء الاصطناعي. نمط الاعتماد واضح: إنه أحد التحسينات القليلة للاستدلال التي لا تتطلب إعادة تدريب النموذج الهدف ولا تقدم أي خطأ تقريبي.
- Google DeepMind قامت بدمج فك الترميز التخميني في بنية خدمة Gemini في عام 2024، وأبلغت عن تحسينات في زمن الاستجابة بمقدار الضعف على أعباء عمل الحوار. نماذج المسودة الداخلية لديهم مقطرة (distilled) من النماذج الهدف، مما يمنحها معدل قبول رموز أعلى من النماذج الصغيرة العامة.
- SpecInfer من Meta وسع الفكرة إلى التخمين القائم على الشجرة (tree-based speculation)، حيث يولد نموذج المسودة شجرة من الاستمرارات المحتملة بدلاً من تسلسل واحد. يقوم المدقق بمعالجة الشجرة بأكملها في تمريرة واحدة، ويختار أطول مسار مقبول. يتفوق هذا النهج باستمرار على التخمين أحادي التسلسل عندما يكون نموذج المسودة لديه درجة أعلى من عدم اليقين.
- Hugging Face / vLLM / TensorRT-LLM جميعها تشحن فك الترميز التخميني كميزة خدمة من الدرجة الأولى. في vLLM، يتطلب تمكين تخمين نموذج المسودة معلمة تكوين واحدة ويعمل بشفافية عبر أحجام الدفعات.
- Apple تستخدم متغيرًا للاستدلال على الجهاز في Apple Intelligence، حيث يعمل نموذج المسودة على المحرك العصبي (Neural Engine) ويعمل المدقق على GPU - مستغلة الأجهزة غير المتجانسة للحصول على كل من السرعة والجودة.
تتراوح التسريعات المبلغ عنها في الإنتاج من 1.5x إلى 3x اعتمادًا على طول المخرجات والمجال وجودة نموذج المسودة. تميل توليد الكود والمخرجات المنظمة إلى تحقيق أعلى معدلات قبول لأن التوزيع أكثر قابلية للتنبؤ. النص الإبداعي المفتوح يشهد معدلات قبول أقل لأن توزيع النموذج الكبير أكثر استواءً، مما يجعل تخمينات المسودة أقل موثوقية.
معدلات قبول الرموز والقيود العملية
معدل قبول الرموز ليس ثابتًا - يختلف حسب المجال والموجه (prompt) وهندسة نموذج المسودة. النتائج التجريبية عبر المعايير الشائعة:
- إكمال الكود (HumanEval, MBPP): TAR عادة 75-85%، تسريع 2.5-3.5x
- التلخيص (CNN/DM, XSum): TAR 65-75%، تسريع 2-2.5x
- الدردشة المفتوحة: TAR 55-70%، تسريع 1.5-2x
- الترجمة: TAR 70-80%، تسريع 2-3x
القيود العملية الرئيسية هي:
- الحمل الزائد للذاكرة: تشغيل نموذجين في وقت واحد يتطلب الاحتفاظ بكليهما في ذاكرة GPU. بالنسبة لمدقق بحجم 70B، إضافة مسودة بحجم 7B تستهلك حوالي 10% ذاكرة إضافية - يمكن التحكم فيها، ولكنها قيد في النشر المحدود الذاكرة.
- توسيع حجم الدفعة: ميزة فك الترميز التخميني تتضاءل مع زيادة حجم الدفعة. عند حجم دفعة 1 (استدلال في الوقت الحقيقي لمستخدم واحد)، تكون المكاسب قصوى. عند أحجام الدفعات الكبيرة، يكون استخدام GPU للنموذج الكبير مرتفعًا بالفعل ويتنافس الحمل الزائد لتشغيل نموذج المسودة على موارد الحوسبة.
- تقادم نموذج المسودة: إذا تم تحديث النموذج الهدف (ضبط دقيق، RLHF)، قد يتباعد نموذج المسودة في التوزيع وتنخفض معدلات القبول. الحفاظ على محاذاة المسودة والمدقق عبر تحديثات النموذج هو تكلفة تشغيلية حقيقية.
ما بعد فك الترميز التخميني: فك الترميز بالنظر إلى الأمام وفك الترميز يعقوبي
ظهرت تقنيتان مرتبطتان بشكل بارز في عام 2025 تعالجان بعض قيود فك الترميز التخميني، خاصة الحاجة إلى نموذج مسودة منفصل.
فك الترميز بالنظر إلى الأمام (Lookahead decoding) (تم تطويره في LMSYS ودمجه في SGLang) يحلل الاستدلال إلى تيارين متوازيين: فرع نظر إلى الأمام يولد n-grams بشكل تخميني باستخدام تكرار يعقوبي (Jacobi iteration)، وفرع تحقق يختار n-grams الصحيحة من ذاكرة تخزين مؤقت. لا حاجة لنموذج مسودة. بدلاً من ذلك، تستغل الطريقة حقيقة أن تكرار يعقوبي على تسلسلات الرموز يتقارب بسرعة للتسلسلات التي تظهر بشكل طبيعي في توزيع تدريب النموذج. يحقق فك الترميز بالنظر إلى الأمام تسريعًا بمقدار 1.5-2.3x على GPU واحد دون أي أوزان نموذج إضافية.
فك الترميز يعقوبي (Jacobi decoding) هو الأساس الرياضي الذي يقوم عليه النظر إلى الأمام. بدلاً من حلقة فك الترميز التسلسلي القياسية، يقوم بتهيئة جميع مواضع المخرجات في وقت واحد برموز عشوائية ثم يطبق تكرارات النقطة الثابتة المتوازية حتى يستقر التسلسل. كل تكرار يحدث جميع المواضع بالتوازي باستخدام النموذج الكبير، مما يحول المشكلة التسلسلية بشكل فعال إلى مشكلة تكرارية. التقارب سريع عمليًا (2-4 تكرارات لمعظم التسلسلات)، والتوزيع النهائي مطابق لفك الترميز التلقائي.
EAGLE-2 (2025) وسع نهج Medusa من خلال جعل التخمين تكيفيًا: يولد نموذج المسودة بنية شجرة ديناميكية بناءً على درجات الثقة، ويخصص المزيد من المرشحين للمواضع غير المؤكدة. حقق EAGLE-2 تسريعًا بمقدار 3.5x على LLaMA-3-70B-Instruct، وهو أعلى رقم منشور لإعداد خدمة نموذج واحد بهذا الحجم.
في عام 2026، تحول التركيز إلى التخمين متعدد الخطوات مع ضمانات الاتساق - أنظمة تشغل 2-3 جولات من التخمين لكل خطوة تحقق، مما يزيد من نسبة الرموز لكل تمرير أمامي دون كسر خاصية عدم الفقدان. يُذكر أن بنية خدمة Gemini الداخلية من Google تستخدم سلسلة من ثلاثة مستويات: نموذج صغير جدًا (1B)، نموذج متوسط (8B)، والمدقق الكامل، حيث يعمل النموذج المتوسط كمدقق للنموذج الصغير وكمسودة للمدقق الكامل.
ما يجب على المهندسين فعله الآن
إذا كنت تقوم ببناء أو تشغيل بنية تحتية لاستدلال LLM، يجب أن يكون فك الترميز التخميني على رادارك لأي عبء عمل حساس لزمن الاستجابة. خطوات ملموسة:
- قم بتقييم ملف حجم الدفعة الخاص بك أولاً. إذا كان p95 للطلبات المتزامنة لكل نسخة متماثلة أقل من 8، فإن فك الترميز التخميني سيساعد بالتأكيد. فوق 32، قد تكون المكاسب هامشية وقد لا يستحق الحمل الزائد للذاكرة ذلك.
- استخدم vLLM أو SGLang كنقطة انطلاق. كلاهما يشحن فك الترميز التخميني الجاهز للإنتاج. في vLLM، قم بتعيين
--speculative-modelو--num-speculative-tokens. قم بقياس TAR على حركة المرور الفعلية للإنتاج قبل الضبط. - للنشر على الجهاز أو الحافة، غالبًا ما يكون فك الترميز بالنظر إلى الأمام أكثر عملية من الاحتفاظ بملفي نموذج. يعمل تنفيذ النظر إلى الأمام في SGLang دون أي أوزان إضافية.
- قم بتحليل TAR الخاص بالمجال. إذا كنت تخدم مجالًا ضيقًا (قانوني، طبي، كود)، فإن نموذج المسودة المضبوط بدقة للمجال سيتفوق بشكل كبير على النموذج العام. غالبًا ما يؤتي الاستثمار في الضبط الدقيق لنموذج مسودة بحجم 1B-3B ثماره في غضون أسابيع على نطاق واسع.
- راقب أنظمة EAGLE-2 و MEDUSA-2. هذه تتطور بسرعة. إذا كان نموذجك الهدف من عائلة LLaMA أو Mistral، فإن رؤوس المسودة المدربة من المجتمع متاحة بالفعل على Hugging Face ولا تتطلب أي استثمار في التدريب.
فك الترميز التخميني ناضج بما يكفي لاستخدامه في الإنتاج اليوم ونشط بما يكفي في الأبحاث بحيث أن أفضل التطبيقات في عام 2026 ستبدو مختلفة بشكل ملحوظ عما هو موجود الآن. المبدأ الأساسي - التحقق بالتوازي، التوليد التخميني - سيبقى. هندسات نماذج المسودة واستراتيجيات التخمين المبنية عليه لا تزال تتطور بسرعة.