إصدارتحليل · على الرادارTG: @gonzo_ML (gonzo-обзоры ML статей)→ المصدر

غوغل تدمج الفَزِّنغ في المضبط التلقائي لـ XLA وتكتشف 142 خطأً صامتاً في المترجم على TPU

أسوأ أخطاء المترجمات هي تلك التي لا توقف البرنامج: يستمر التدريب لكن الأرقام خاطئة، وتضيع ملايين الدولارات هباءً. أدمج فريق في غوغل الفَزِّنغ التفاضلي في المضبط التلقائي لـ XLA الخاص بوحدات TPU. فهذا المضبط يجرّب أصلاً متغيرات ترجمة النواة، وصار الآن يقارن مخرجاتها أيضاً بمخرجات النواة المدمجة المرجعية. وفي بيئة الإنتاج جرى بهذه الطريقة اكتشاف وإصلاح 142 خطأً فاتت على نظام التكامل المستمر (CI).

معالج بواسطة الذكاء الاصطناعي من TG: @gonzo_ML (gonzo-обзоры ML статей)؛ بتحرير Hamidun News
غوغل تدمج الفَزِّنغ في المضبط التلقائي لـ XLA وتكتشف 142 خطأً صامتاً في المترجم على TPU
المصدر: TG: @gonzo_ML (gonzo-обзоры ML статей). كولاج: Hamidun News.
استمع للمقال
بطاقة الحقائق والأرقام
المعيارالتفاصيل
المصدر الأصليTG: @gonzo_ML (gonzo-обзоры ML статей) ↗
رئيس التحرير
التحقق شبه مجانيفالمضبط التلقائي يشغّل متغيرات النوى أصلاً
حقيقة رئيسية #243% من الأخطاء كانت في مولّدات الشيفرة الخاصة بالسجلات والذاكرة
حقيقة رئيسية #3الطريقة لا تلتقط سباقات الذاكرة غير الحتمية

إذا انهار المترجم برسالة خطأ فستلاحظ ذلك. أما إذا أنتج أرقاماً خاطئة بصمت، فلن تعلم إلا بعد أسبوع من التدريب، حين يتصرف الخسارة (loss) بغرابة وتكون فاتورة العنقود قد وصلت. هذه بالضبط هي الأخطاء الصامتة التي يحلّلها فريق غوغل في عمله XLA from the Trenches، وحلّهم عملي بشكل مفاجئ.

لماذا الأخطاء الصامتة أسوأ من الانهيارات

يحوّل XLA رسم الحسابات الخاص بالنموذج إلى شيفرة آلية لوحدات TPU. وفي الطريق يدمج العمليات في نوى كبيرة (fusion)، ويوزّع البيانات على السجلات الاتجاهية والذاكرة، ويجري عشرات التحسينات الأخرى. وقد تكون كل واحدة منها صحيحة بمفردها لكنها تفشل في تركيبة نادرة من الأشكال والأنواع والمعاملات.

تتحقق اختبارات CI الساكنة من حالات مُعدّة مسبقاً. وملايين هذه الاختبارات لا تغطي كل التركيبات التي تنشأ في النماذج الفعلية. كما أن الخطأ لا يظهر على شكل انهيار: كل شيء يعمل وبسرعة، لكن النتيجة مختلفة قليلاً. وفي تدريب نموذج كبير تُقاس كلفة هذا الخطأ بملايين الدولارات.

كيف يعمل النظام

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

وإذا وقع الشك على خطأ داخل الرسم، يقارن النظام النتيجة أيضاً بمرجع غير مدمج تُنفَّذ فيه العمليات منفصلة. وبذلك يمكن معرفة ما إذا كان الدمج هو المسؤول فعلاً.

بعد ذلك يأتي دور المعزِل ذي المرحلتين. فتقسيم النواة ببساطة إلى أجزاء كثيراً ما يخفي الخطأ، لأن المشكلة تكمن في النسخة المدمجة تحديداً. لذلك يقرأ المعزِل خطوة بخطوة سجلات المتجهات العتادية داخل النواة المدمجة نفسها، ويجد التعليمة التي تتباعد عندها القيم للمرة الأولى. إضافة إلى ذلك يستخدم المؤلفون توليد برامج اصطناعية وسرباً من وكلاء الذكاء الاصطناعي يكتبون تصحيحات للمشكلات المكتشفة.

ما الذي وُجد

على عناقيد TPU في غوغل ساعد النظام في إصلاح أكثر من 142 خطأً فاتت على CI. والتوزيع لافت: 43% منها لم تكن في تحويلات الرسم عالية المستوى، بل في مولّدات الشيفرة منخفضة المستوى للسجلات الاتجاهية والذاكرة. أي أن العطل حدث حيث تكاد الاختبارات المعتادة على مستوى الرسم لا تنظر.

القيود وما ينبغي فعله

والحق يقال إن للعمل نقاط ضعف. فقد احتُسبت الأخطاء الـ142 كلها برقم واحد، دون دراسات استئصال (ablations) للمكونات، ولذلك لا يُعرف أي جزء من النظام يحقق الفائدة الأكبر: الفَزِّنغ أم المعزِل أم الوكلاء. أما سباقات الذاكرة غير الحتمية، أي أخطاء هايزنبيغ الحقيقية، فتبقى خارج نطاق الطريقة. كما أن المقارنة بالنواة الافتراضية تفترض أن الافتراضية نفسها صحيحة، وهذا ليس دائماً صحيحاً.

والخلاصة العملية أوسع من TPU. فإذا كان لديك مضبط تلقائي أو مترجم JIT أو أي آلية تجرّب تنفيذات متكافئة للعملية نفسها، فأنت تدفع أصلاً ثمن حساب عدة إجابات على المدخلات نفسها. وإضافة مقارنة للنتائج مع هامش تسامح للضجيج العددي زهيدة الكلفة، وهي تلتقط بالضبط الأخطاء التي لن يراها أحد. وبالنسبة للفرق التي تدرّب نماذج كبيرة على بنيتها الخاصة، فهذه من أرخص الطرق لاكتشاف العيوب قبل أن تلتهم الميزانية.

القصة

أسئلة وأجوبة حول الخبر

ما أبرز التفاصيل حول لماذا الأخطاء الصامتة أسوأ من الانهيارات؟

يحوّل XLA رسم الحسابات الخاص بالنموذج إلى شيفرة آلية لوحدات TPU. وفي الطريق يدمج العمليات في نوى كبيرة (fusion)، ويوزّع البيانات على السجلات الاتجاهية والذاكرة، ويجري عشرات التحسينات الأخرى. وقد تكون كل واحدة منها صحيحة بمفردها لكنها تفشل في تركيبة نادرة من الأشكال والأنواع والمعاملات. تتحقق اختبارات CI الساكنة من حالات مُعدّة مسبقاً. وملايين هذه الاختبارات لا تغطي كل التركيبات التي تنشأ في النماذج الفعلية. كما أن الخطأ لا يظهر على شكل انهيار: كل شيء يعمل وبسرعة، لكن النتيجة مختلفة قليلاً.

ما أبرز التفاصيل حول كيف يعمل النظام؟

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

ما أبرز التفاصيل حول ما الذي وُجد؟

على عناقيد TPU في غوغل ساعد النظام في إصلاح أكثر من 142 خطأً فاتت على CI. والتوزيع لافت: 43% منها لم تكن في تحويلات الرسم عالية المستوى، بل في مولّدات الشيفرة منخفضة المستوى للسجلات الاتجاهية والذاكرة. أي أن العطل حدث حيث تكاد الاختبارات المعتادة على مستوى الرسم لا تنظر.

ZK
جمال حميدون — مدير المنتجات في Alpina Digital ومدير منتج AlpinaGPT. يبني منتجات الذكاء الاصطناعي منذ 2019. بدأ Hamidun News كمشروع شخصي ثم أصبح مُجمِّعًا إنتاجيًا بأكثر من 6000 قارئ.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
ما رأيك؟
جارٍ تحميل التعليقات…