تخطى إلى المحتوى الرئيسي
أحدث الأبحاث:← عندما تذوب الدائرة12 vindexes on Hugging Face
طلب عرض تجريبي

عشرة إخفاقات في إصدارات CI/CD لنماذج اللغة المخصّصة — وأي مرحلة في خط الأنابيب تلتقط كل واحد منها

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

ملاحظات من دورة الإصدار — الجزء الثاني


استعرض المقال الأول في هذه السلسلة خط أنابيب الإصدار ذا المراحل الأربع الذي نشحنه — التسجيل ← البوّابة ← الطرح ← المراقبة. هذا المقال هو الإيصالات: عشرة أنماط إخفاق محدّدة التقطناها به، وكيف بدا كل منها على أرض الواقع، وأي مرحلة من خط الأنابيب أوقفته قبل أن يصل إلى الإنتاج.

القائمة منظّمة حسب المرحلة، لا حسب الخطورة، لأن المرحلة هي ما يخبرك أين تستثمر إن كنت تبني شيئًا مشابهًا بنفسك. إن كانت بوّابتك هي الحلقة الأضعف، ستصيبك ستة من الإخفاقات العشرة أدناه باستمرار. وإن كان مراقبك هو الحلقة الأضعف، فسيصيبك اثنان منها بصمت — أي أن الإشارة الوحيدة التي ستحصل عليها هي شكوى عميل، وهي أسوأ إشارة ممكنة.

خط الأنابيب الذي يلتقط الإخفاقات العشرة جميعًا ليس قائمة ميزات. بل هو عدد قليل من القرارات المعمارية المتّخذة بثبات. وكل إخفاق أدناه يُسمّي القرار المنطبق عليه.

كيف تقرأ هذه القائمة

كل إخفاق موسوم بالمرحلة التي تلتقطه:

  • ① التسجيل — طبقة البيان. توقف الإخفاقات التي لا يمكنك معها معرفة أي تغيير كسر الإنتاج لأن الحالة موزّعة عبر أنظمة عدّة.
  • ② البوّابة — Spearman لكل مجال مقارنة بحَكَم معاير مرتكز على البشر. توقف الإخفاقات التي تختبئ داخل الدرجات التجميعية.
  • ③ الطرح — كناري عند 5% ← 25% ← 100% مع مراقب جودة عند كل نقطة تفتيش. توقف الإخفاقات التي لا تظهر إلا عند الحجم.
  • ④ المراقبة — إعادة تشغيل مستمرّة للآثار عبر المرشّح، مع تسجيل من نفس حَكَم البوّابة. توقف انخفاضات الجودة الصامتة التي لا يلاحظها الكمون ولا الأخطاء 5xx.

ينتهي كل قسم بـالإصلاح — التهيئة الدقيقة التي نشحنها في Divinci، إضافةً إلى ما يلزم بناؤه بنفسك إن لم تكن تستخدمنا.


المرحلة ① — التسجيل

1. شحن النموذج + الموجِّه + التوجيه معًا في حزمة واحدة وعدم معرفة أيها كسر الإنتاج

ما حدث. غيّرنا ثلاثة أشياء في الإصدار نفسه: رفّعنا النموذج الأساس من Gemma 4 E2B إلى Gemma 4 26B-A4B، وعدّلنا موجِّه نظام المجال القانوني لإضافة تعليمة “اذكر النص التشريعي”، وضبطنا قاعدة التوجيه التي تقرّر أي صنف حركة يصل إلى أي نموذج. هبطت الدقّة في صياغة العقود سبع نقاط. لم يُختبر أيّ من التغييرات الثلاثة باستقلالية. تطلّب تصحيح الخطأ التراجع عن متغيّر واحد في كل مرة على مدى يومين.

لماذا يلتقطه خط الأنابيب الآن. إصدار Divinci هو بيان غير قابل للتغيير يجمع model_ref وprompt_template_ref والتوجيه وdataset_version في قطعة واحدة مُعنوَنة بـ SHA-256. يرفض خط الأنابيب نشر بيان يحزم أكثر من تغيير واحد إلّا إذا أُشير إلى SHA الإصدار السابق كخط أساس للمقارنة. إن أردت شحن ثلاثة تغييرات دفعةً واحدة، فعليك الإقرار بذلك في البيان، ويبقى مسار إسناد الإخفاق نظيفًا لأن الإصدار التالي يُجبَر على العودة إلى متغيّر واحد في كل مرّة.

الإصلاح. لا تدع البشر يُجمّعون الإصدارات يدويًا. ينبغي أن يُولِّد بيانَ الإصدار خطُّ أنابيب لا يستطيع الحزم بصمت. راجع المرحلة 1 — التسجيل لمعرفة الـ API.

2. تعديل موجِّه نظام في لوحة تحكم وشحنه دون مراجعة كود

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

لماذا يلتقطه خط الأنابيب الآن. الموجِّهات جزء من البيان المُسجَّل. تعديل أحدها في لوحة تحكم يعني إصدار بيان جديد، أي توليد SHA جديد، أي تشغيل البوّابة على التغيير. لا يزال بإمكانك تعديل الموجِّهات في لوحة تحكم. لكن لا يمكنك شحنها دون أن تراها البوّابة.

الإصلاح. تعامل مع الموجِّهات كالكود: أصدِر منها نسخًا بتجزئة المحتوى، وسجّلها جزءًا من الإصدار، وبوِّبها على مجموعة الأسئلة والأجوبة المُقيَّمة. تصف كتابة كذبة Semver لِـ Tianpan[1] هذا النمط بالضبط وهو يحدث في الواقع — تغيير موجِّه “اجتاز مراجعة الكود، ونُشر دون بوّابات تقييم، وأصاب الإنتاج دون اختبار A/B لكل مستخدم، ولم يُشغّل أي تراجع تلقائي.”

3. انحراف المعالجة المسبقة بين التدريب والخدمة

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

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

الإصلاح. احزم المعالجة المسبقة في حاوية كقطعة مُصدَّرة بإصدارات. وأشِر إليها من البيان. وارفض النشر إن كانت البوّابة قد حُسبت مقابل نسخة معالجة مسبقة مختلفة عن تلك التي سيستخدمها الإنتاج.


المرحلة ② — البوّابة

الإخفاقات الأربعة أدناه هي تلك التي كانت بوّابة الدرجة التجميعية ستشحنها. سبب فوات البوّابة التجميعية لها هو سبب هيكلي، لا ضبط معاملات — فالمتوسّط عبر الشرائح يُدمّر بالضبط الإشارة التي ستستخدمها لالتقاط انحدار محصور في شريحة واحدة.

4. انهيار تراخيص الملكية الفكرية (انحدار واعٍ بالشرائح رقم 1)

ما حدث. حسّنت تهيئة QLoRA الدقّة في الأسئلة والأجوبة القانونية في خمسة مجالات فرعية وحطّمت ترخيص الملكية الفكرية — صياغة العقود 0.71، التفسير التشريعي 0.74، تلخيص القضايا 0.69، الامتثال التنظيمي 0.66، التحليل الاختصاصي 0.62، ترخيص الملكية الفكرية 0.41. كان Spearman ρ التجميعي عبر الستة جميعًا 0.64. وكانت عتبة البوّابة 0.65. بدرجة تجميعية واحدة، كان الإصدار تحت الخط بشعرة. أما بالعرض لكل شريحة، فقد انهار مجال فرعي واحد بسبع وعشرين نقطة.

لماذا يلتقطه خط الأنابيب الآن. عتبة البوّابة لكل شريحة، لا تجميعية. أي شريحة واحدة تهبط دون عتبتها تُعلِّم الإصدار بـgate_fail، بغضّ النظر عن شكل المتوسط. ورسم عتبات البوّابة في المقال رقم 1 هو التصوّر الفعلي الذي يُنتجه خط الأنابيب لإصدارات كهذا.

الإصلاح. شرِّح البوّابة. الشرائح التي تهمّ هي مجالات قطاعات عملائك الفرعية، لا أيّ تصنيف موجود في إطار تقييم استوردته.

5. انحدار شريحة طبّ الأورام عند الأطفال (انحدار واعٍ بالشرائح رقم 2)

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

لماذا يلتقطه خط الأنابيب الآن. كان طبّ الأورام عند الأطفال إحدى الشرائح التي هيّأها العميل عند تسجيله لمجموعة الأسئلة والأجوبة المُقيَّمة. أنتج تقييم البوّابة-2 قيمة Spearman ρ لكل شريحة هبطت من 0.72 إلى 0.61، تحت عتبة طبّ الأورام عند الأطفال البالغة 0.68. وُسِم بـgate_fail. لا نشر.

الإصلاح. شرائح يُحدّدها العميل، لا التي تُحدّدها المنصّة. ينبغي أن تتيح المنصّة للعميل إضافة شريحة وعتبة لكل شريحة دون كتابة كود — لأنه لا أحد في Divinci يعرف حواف مجال العميل كما يعرفها العميل نفسه.

6. انحراف لغة فرعية متعدّدة اللغات (انحدار واعٍ بالشرائح رقم 3)

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

لماذا يلتقطه خط الأنابيب الآن. المتغيّرات المحلّية شرائح فرعية ضمن شريحة اللغة. التقط Spearman لكل شريحة فرعية الانحدار في المتغيّر البلجيكي قبل الترقية. أُعيد الإصدار من أجل (أ) بيانات تدريب أكثر تنوّعًا أو (ب) تجاوز قسريّ مع تبرير مكتوب (“نقبل بالانحدار الإقليمي لأن التحسّن الفرنسي التجميعي يهمّ أكثر في هذا الطرح”) — ويدخل التجاوز في مسار التدقيق.

الإصلاح. عمق التشريح يهمّ. “الفرنسية” خشنة جدًا. “الفرنسية البلجيكية” هي المستوى الذي تختبئ فيه الانحدارات فعلًا.

7. تجاوز البوّابة دون منطق تجاوز مكتوب

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

لماذا يلتقطه خط الأنابيب الآن. التجاوز القسري بوّابة بحقلين: forceGateOverride: true وoverrideReason: "...". السبب نصّ حرّ مطلوب يُكتب في سجلّ التدقيق إلى جانب معرّف المستخدم ونتيجة البوّابة لكل شريحة التي جرى تجاوزها. يرفض خط الأنابيب التجاوز دون السبب. لا يزال بإمكانك التجاوز — لكن لا يمكنك التجاوز بشكل مجهول.

الإصلاح. بوّابات الحوكمة ليست مرحلة منفصلة. هي خاصية لمرحلة البوّابة: كل تجاوز هو إيصال موقَّع بنصّ تبرير.


المرحلة ③ — الطرح

8. الانتقال من 0% إلى 100% من الحركة في خطوة واحدة

ما حدث. اجتاز نموذج البوّابة بنظافة. ودُفع إلى 100% من الحركة فورًا. وبسبب خصوصية في طول المحادثة، انتهت مهلة النموذج الجديد على ردود أطول من ~2,400 رمز — سلوك لم يظهر في مجموعة تقييم البوّابة المؤلّفة من مئة سؤال لأن كل موجِّه اختبار كان قصيرًا. حصل 15% من المستخدمين على انتهاء مهلة لثماني عشرة دقيقة قبل أن يتراجع أحدهم يدويًا.

لماذا يلتقطه خط الأنابيب الآن. تتوقّف مرحلة الطرح عند 5% لمدّة dwell_5pct_seconds (افتراضي 240) أو requests_5pct (افتراضي 1,000)، أيّهما أبعد. عند 5% من الحركة، تظهر مهلات المحادثات الطويلة في مراقب معدّل 5xx خلال ~3 دقائق. يرفض خط الأنابيب التقدّم بعد 5% إن خرق أي مراقب نقطة تفتيش نطاقه. كان متوسط الوقت إلى الإيقاف 4 دقائق؛ ومتوسط الوقت إلى تراجع كامل نحو 12 ثانية بعد الإيقاف.

الإصلاح. الكناري في ثلاث خطوات مع مراقب جودة، لا الكمون و5xx فحسب. نمط “خمسة بالمئة في عشرين ثانية وانتهينا” هو النمط الخطر. ونمط “خمسة بالمئة لأربع دقائق” هو النمط الآمن.


المرحلة ④ — المراقبة

الإخفاقان أدناه هما اللذان كان كناري قائم على مقاييس بنية تحتية سيُروّجهما. سبب فوات مقاييس البنية التحتية لهما هو أيضًا هيكلي — يمكن للكمون و5xx أن يبقيا نظيفين تمامًا بينما يتحفّظ النموذج بهدوء أو يرفض أو يهلوس.

9. التحفّظ الصامت على الاستعلامات القانونية (انخفاض جودة صامت رقم 1)

ما حدث. جعل تحديث نموذج مُهيَّأ للسلامة مساعدَ المجال القانوني محافظًا أكثر بشكل ملحوظ. الكمون نفسه، ومعدّل 5xx نفسه، واستخدام الرموز نفسه. لكن حيث كان الإصدار السابق يجيب “مدّة التقادم X سنة”، صار الإصدار الجديد يقول “ينبغي عليك استشارة محامٍ”. لاحظ العملاء ذلك خلال ساعات. ولم تتحرّك لوحات القياس قط.

لماذا يلتقطه خط الأنابيب الآن. يُجري مراقب المرحلة 4 إعادة تشغيل مستمرّة لآثار الإنتاج عبر النموذج النشط ويُسجّلها بنفس الحَكَم المعاير الذي أدار البوّابة-2. يظهر التحفّظ فورًا لأن الحَكَم المعاير — المرتكز على تقييمات بشرية لما تبدو عليه إجابة قانونية “جيّدة” — يُعاقب الرفض عند توقّع الإجابة. هبط مراقب جودة المخرجات تحت نطاقه لثلاث دقائق متتالية وتراجع خط الأنابيب تلقائيًا. الزمن الإجمالي: أقل من خمس دقائق.

الإصلاح. لا تراقب الكمون و5xx فحسب. راقب درجة جودة مستمدّة من حَكَم معاير مقابل آثار إنتاج حقيقية. حواجز نشر SageMaker[2] تتراجع تلقائيًا عند إنذارات CloudWatch — مفيدة للبنية التحتية، لكن الإنذار يجب أن يُطلَق على مقياس، و“النموذج يتحفّظ“ ليس مقياسًا يراه CloudWatch.

10. تواريخ مُهلَوسة بعد التهيئة الدقيقة (انخفاض جودة صامت رقم 2)

ما حدث. بدأ مساعد جدولة تمّت تهيئته بدقّة يُدرج بثقة تواريخ غير موجودة في المدخل. “اجتماعك يوم الخميس 32 مارس”. الكمون دون تغيير. معدّل 5xx دون تغيير. اجتازت الهلوسات مرشّح السلامة لأن لا شيء وسم “32 مارس” بالضار — مجرّد مستحيل.

لماذا يلتقطه خط الأنابيب الآن. الحَكَم المعاير للمراقب — وهو يعمل على آثار جدولة إنتاج حقيقية لا تركيبية — يُعطي الإجابات الواثقة-لكنّها-خاطئة درجة أسوأ من الرفض المناسب بـ“لا أعرف“. أطلق انخفاض فئة الهلوسة عتبة المراقب لكل دقيقة في غضون دقيقتين. اشتعل التراجع التلقائي.

الإصلاح. حَكَم معاير مقابل خبرة المجال. سيُفوّت LLM-كحَكَم العام كلمة “الخميس 32 مارس” بنفس الطريقة التي سيُفوّتها بها البشر وهم يتصفّحون بسرعة. أما الحكّام المعايرون على المجال — المرتكزون على تقييمات خبراء المجال — فلن يفوّتوها.


رسم الإخفاقات العشرة على خط الأنابيب

أنماط الإخفاق حسب مرحلة خط الأنابيبأين يُلتقط كل إخفاقثلاثة انحدارات واعية بالشرائح تقع عند البوّابة. وانخفاضان صامتان في الجودة يقعان عند المراقبة. والباقي يتوزّع بين التسجيل والطرح.① التسجيل② البوّابة③ الطرح④ المراقبة1. تغييرات مشحونة معًاالنموذج + الموجِّه + التوجيهمحزومة بصمت2. موجِّهات بلا إصداراتتعديل في لوحة تحكميتجاوز البوّابة3. انحراف التدريب والخدمةالمعالجة المسبقة تتباعدبين دون اتصال ومتصلًا4. شريحة ترخيص الملكية الفكريةالشريحة 0.41، المتوسّط 0.64المتوسّط كان سيُشحن5. طبّ الأورام عند الأطفالالشريحة تهبط 11 نقطةالمتوسّط كان سيُشحن6. انحراف لغة فرعية متعدّدالفرنسية البلجيكية تنحدرالمتوسّط كان سيُشحن7. تجاوز البوّابةيستلزم منطقًا مكتوبًا+ قيد تدقيق8. طرح من 0% إلى 100%دون توقّف عند نقاط التفتيشعلل الذيل الطويل تظهر بالحجم9. تحفّظ صامتالكمون و5xx دون تغييرالحَكَم يلتقطه10. تواريخ مُهلَوسة"32 مارس"حَكَم المجال يلتقطها

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

ما الذي يجعل CI/CD لنماذج اللغة مختلفًا عن CI/CD للبرامج؟

النسخة المختصرة: إصدار LLM ليس قطعة حتميّة. الموجِّه نفسه يُنتج مخرجات مختلفة عبر التشغيلات. ومجموعة التقييم نفسها تُنتج درجات مختلفة عبر العتاد. ويمكن للنموذج نفسه أن يجتاز فحص جودة تجميعي بينما يفشل بصمت على شريحة لم تدرجها في التقييم. معظم الافتراضات التي بُني عليها CI/CD التقليدي لا تصمد عند ملامسة نظام احتماليّ.

ثلاث نتائج ملموسة:

  1. لا يمكنك كتابة تأكيدات expect(output).toEqual(X). تحتاج إلى تقييم واعٍ بالتوزيع يستهلك ارتباط الرتب مقابل مُصحّح مرتكز على البشر، لا المساواة مقابل قيمة ثابتة.
  2. نموذج “اجتاز CI” يمكن أن يشحن سلوكًا مكسورًا. اجتياز CI يعني أن الكود يعمل. لا يعني أن النموذج صحيح. على خط أنابيب الإصدار أن يفرض بوّابة جودة فوق بوّابة صحّة التي يوفّرها CI.
  3. التراجع ليس اختياريًا ولا بطيئًا. لأن أنماط الإخفاق احتمالية — ولأن بعضها صامت في طبقة البنية التحتية — يجب أن يكون مسار التراجع بنية تحتية أولية، لا خطّة احتياطية. يوجد بيان الإصدار تحديدًا ليجعل التراجع ذرّيًا.

يصف المقال الأول في هذه السلسلة المعمارية من أربع مراحل التي تستجيب لهذه النتائج. ويصف هذا المقال الإخفاقات التي تلتقطها.

كيف تبني خط أنابيب CI/CD مقاومًا للإخفاق لنماذج اللغة المخصّصة؟

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

إن لم تكن تستخدم Divinci وأردت بناء ما يكافئه، فإن القطع الحاملة هي:

  • بيان إصدار غير قابل للتغيير يحزم النموذج + الموجِّه + التوجيه + مجموعة البيانات + المعالجة المسبقة في SHA واحد. هذا ما يجعل 1 و2 و3 قابلة للالتقاط. (المرحلة 1)
  • بوّابة لكل شريحة بعتبات يُحدّدها أصحاب المجال، لا أصحاب المنصّة. هذا ما يجعل 4 و5 و6 قابلة للالتقاط. (المرحلة 2)
  • كناري بمراقبة جودة عند كل نقطة تفتيش، لا الكمون و5xx فحسب. هذا ما يجعل 8 قابلًا للالتقاط ويجعل 9 و10 قابلَين للنجاة منهما بمجرّد إصابتهما الإنتاج. (المرحلة 3)
  • مراقب مستمرّ يُسجّل آثار الإنتاج الفعلية عبر النموذج النشط بنفس الحَكَم المعاير الذي شغّل البوّابة. هذا ما يجعل 9 و10 قابلَين للالتقاط. (المرحلة 4)
  • إيصال تدقيق موقَّع لكل قرار. مُسلسَل بالتجزئة، قابل للترسيخ خارجيًا. لمسانيد النماذج مفتوحة الأوزان، يُضمِّن الإيصال شهادة أوزان vindex تُثبت أن الأوزان النشطة هي ما سجّله البيان. لمسانيد API المغلقة، يُغطّي الإيصال سلسلة القرار لكن لا يستطيع ادّعاء أصل الأوزان — ويُصرّح مسار التدقيق بذلك بوضوح.

القطع ليست جديدة فرديًا. كل منصّة MLOps لديها واحدة أو اثنتان منها. التركيبة — بوّابة واعية بالشرائح + مراقب آثار الإنتاج + تراجع ذرّي + إيصال قابل للإثبات — هي الجزء الذي لا يشحنه أحد آخر في 2026.

إلى أين بعد ذلك

  • المقال المرافق — كيفية بناء خط أنابيب CI/CD لنماذج اللغة الكبيرة باستخدام Divinci AI — يُغطّي المعمارية والـ API.
  • صفحة الامتثال توثّق صيغة إيصال vindex التي تدعم كل قرار إصدار وكيف تُقابِل قانون الاتحاد الأوروبي للذكاء الاصطناعي والمادة 17 من اللائحة العامة لحماية البيانات وHIPAA وإطار NIST لإدارة مخاطر الذكاء الاصطناعي.
  • صفحة منتج AutoRAG تُغطّي خفض الهلوسات من جانب RAG الذي يُقرَن بشكل طبيعي مع الحَكَم المعاير الذي يقود البوّابة-2 ومراقب المرحلة-4.
  • مرجع الـ API — كل أمر مذكور في هذه السلسلة هو نقطة نهاية حقيقية.

الأسئلة الشائعة

ما هو أكثر إخفاق CI/CD شيوعًا في نماذج اللغة المخصّصة؟

عبر الإصدارات التي شحنّاها، الإخفاق الأكثر ضررًا منفردًا هو انحدار واعٍ بالشرائح يجتاز بوّابة تجميعية — نموذج يتحسّن في المتوسط بينما ينهار بهدوء على مجال فرعي محدّد (الإخفاقات 4 و5 و6 أعلاه). إنه أكثر شيوعًا من غياب التراجع، وأكثر شيوعًا من انحراف الموجِّه، وأصعب اكتشافًا من كليهما. والإصلاح هيكلي، لا ضبط معاملات: بوّاب لكل شريحة، لا على المتوسط.

ما السرعة التي ينبغي أن تتمكّن بها من التراجع عن إصدار LLM سيّئ؟

بترتيب ثوانٍ، لا دقائق. متوسّط زمن التراجع على خط أنابيب Divinci نحو 12 ثانية — وهو تصريف الطلبات أثناء التشغيل على خدمة بنحو 100 نسخة متماثلة، لا تبديل البيان نفسه، الذي هو دون الثانية. القرار المعماري الذي يجعل ذلك ممكنًا هو بيان الإصدار المحزوم: لأن كل مكوّن (الأوزان، الموجِّه، التوجيه، مجموعة البيانات) مُشار إليه من SHA واحد، فالتراجع إعادة توجيه ذرّية وحيدة. قارن ذلك بحوادث ما بعد الواقعة العامة: استغرقت حادثة Cloudflare في يونيو 2022[3] 44 دقيقة للتراجع لأن المهندسين كانوا يدوسون على عمليات تراجع بعضهم البعض؛ استغرق انقطاع Atlassian في أبريل 2022[4] 12 ساعة لكل موقع متأثّر لاستعادته لأن الحالة كانت موزّعة عبر أنظمة متعدّدة.

لماذا تُسبّب تغييرات الموجِّه الكثير من انقطاعات الإنتاج؟

لأن الموجِّهات تُعدَّل اعتياديًا خارج خط أنابيب CI/CD — في لوحات التحكّم، وفي واجهات الإدارة، وأحيانًا من قِبل أشخاص دون مراجعة هندسية. تُعامَل كتهيئة، لكنّها تتصرّف ككود. تعديل بثمانية وثلاثين حرفًا في موجِّه نظام يمكن أن يُغيّر سلوك النموذج النهائي أكثر من إعادة تدريب نموذج. الإصلاح هو تسجيل الموجِّهات جزءًا من بيان الإصدار واشتراط اجتيازها للبوّابة نفسها التي يجتازها النموذج.

كيف تكتشف تدهور الجودة الصامت في مخرجات LLM؟

ليس بمقاييس البنية التحتية. الكمون ومعدّل 5xx واستخدام الرموز لن تلتقط التحفّظ ولا الرفض-عند-توقّع-الإجابة ولا التواريخ المُهلَوسة. يجب أن تأتي إشارة الاكتشاف من درجة جودة يحسبها حَكَم معاير مقابل آثار إنتاج حقيقية. يُعيد مراقب المرحلة 4 في خط أنابيب Divinci تشغيل عيّنة دوّارة من آثار الإنتاج عبر النموذج النشط، ويُسجّلها بنفس حَكَم Spearman المرتكز على البشر الذي شغّل البوّابة-2، ويُشغّل تراجعًا تلقائيًا حين تهبط درجة الجودة دون العتبة لثلاث دقائق متتالية.

ما متطلّبات مسار التدقيق التي تنطبق على عمليات نشر نماذج الذكاء الاصطناعي؟

يستلزم قانون الاتحاد الأوروبي للذكاء الاصطناعي والمادة 17 من اللائحة العامة لحماية البيانات (الحقّ في المحو) وHIPAA وإطار NIST لإدارة مخاطر الذكاء الاصطناعي من المؤسّسات أن تحتفظ بسجلّات لإصدارات النموذج ونتائج التقييم وقرارات الموافقة والطرحات. والمتطلّب غير المنطوق تحتها جميعًا هو أن تكون السجلّات قابلة للتحقّق — قابلية التدقيق تعني أكثر من “لدينا سجلّ”. إيصالات vindex من Divinci مُسلسلة بالتجزئة وقابلة للترسيخ خارجيًا، مما يعني أن المُدقّق يستطيع التحقّق من السلسلة دون الوثوق بسجلّاتنا. ولمسانيد النماذج مفتوحة الأوزان يُضمِّن الإيصال أيضًا شهادة أوزان؛ ولمسانيد API المغلقة يُلاحظ الإيصال صراحةً أن أصل الأوزان غير مدّعى.

المراجع

  1. Tianpan — The Semver Lie: how an LLM minor update breaks production (أبريل 2026). يُسمّي نمط إخفاق تعديل الموجِّه من لوحة التحكّم مباشرة. الرفيق: LLM postmortem template — fields SRE missed.
  2. AWS SageMaker — Use canary traffic shifting. التراجع التلقائي المعياري المدفوع بمقاييس البنية التحتية. مقارنة مفيدة لما تفعله المرحلة 4 من المراقبة بشكل مختلف (درجة جودة، لا إنذارات CloudWatch).
  3. Cloudflare — Cloudflare outage on June 21, 2022. تراجع 44 دقيقة لأن المهندسين داسوا على عمليات تراجع بعضهم البعض. مُستشهد بها كمرتكز "التراجع نوعه الخاص من الحوادث".
  4. Atlassian — Post-Incident Review: April 2022 Outage. 12 ساعة لكل موقع لاستعادته. نمط إخفاق الحالة الموزّعة عبر الأنظمة في أسوأ صوره.
  5. DORA — Software delivery performance metrics. عتبة "زمن التعافي من النشر الفاشل" لأصحاب الأداء النخبة موثّقة بأنها دون ساعة واحدة. إطار مفيد لـ"ما مدى السرعة الكافية" للتراجع.
  6. Zheng et al., Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena (arXiv:2306.05685, 2023). المرجع لسبب إمكان مطابقة LLM-كحَكَم للتقييمات البشرية إجمالًا مع تباين واسع لكل فئة — وهو بالضبط النمط الذي يجعل البوّبة لكل شريحة ضرورية.

التالي في هذه السلسلة: التحقّق من نماذج اللغة المخصّصة وإصدارها في المجالات المنظَّمة. خط الأنابيب أعلاه هو المعمارية. ومسار الامتثال هو ممارسة استخدامه. قانون الاتحاد الأوروبي للذكاء الاصطناعي والمادة 17 من اللائحة العامة لحماية البيانات وHIPAA وإطار NIST لإدارة مخاطر الذكاء الاصطناعي — ما يطلبه كل واحد منها من عملية إصدار، وأي حقول إيصال vindex تُغطّي أي متطلّب.

هل أنت مستعد لبناء حل الذكاء الاصطناعي المخصص؟

اكتشف كيف يمكن لـ Divinci AI مساعدتك في تطبيق أنظمة RAG وأتمتة ضمان الجودة وتبسيط عملية تطوير الذكاء الاصطناعي.

ابدأ اليوم