output. تشغّلها البوابة بعد أن يستجيب النموذج
الأعلى وقبل أن يصل بايت واحد إلى عميلك.
تغطي هذه الصفحة مرحلة المخرجات تحديداً: كيف يُفحص الإكمال، وماذا يكلّف
الحجب، وكيف يتصرف كل من block وmask على الاستجابات المبثوثة. للمحرك
الكامل — كل نوع قاعدة، وحقل، ومسار — انظر
حواجز الحماية.
1. لماذا تلجأ فرق LLM لحواجز حماية المخرجات
النموذج هو الجزء غير الموثوق في الحلقة. يمكنه أن يردّد سراً من المطالبة، أو يسحب بريد عميل من سياق RAG، أو يهلوس ادعاءً لم تصنعه مصادرك قط. لا شيء من ذلك مرئي في مرحلة المدخلات، لأن لا شيء منه موجود حتى يجيب النموذج. حاجز حماية مرحلة المخرجات هو الفحص على الإكمال نفسه. تعمل قاعدة في مرحلة المخرجات عندما تكونstage لها output (أو
both). تقيّم البوابة نص استجابة النموذج مقابل السياسة، تسجّل أي مطابقة،
ثم تمرّره أو تنقّحه أو ترفضه — بنفس إجراءات block / mask / flag
التي تستخدمها على المدخلات بالضبط، مطبّقة على الرد فحسب.
قواعد المخرجات هي همّ مكمّل، لا بديل. معظم السياسات تفحص
input
لإبقاء البيانات خارج المطالبة وoutput لاصطياد ما يعيده النموذج.
المرحلة both تربط قاعدة واحدة بكلا الطرفين.2. مثال واحد ملموس — احجب سراً في الرد
أنشئ حاجز حماية في وحدة التحكم (/console/guardrails)، أضف قاعدة واحدة،
واربطها بمفتاح:
- النوع: كاشف أسرار / regex
- المرحلة:
output - الإجراء:
block
/v1/*
فقط:
guardrail_blocked — لا يرى العميل المحتوى المسرّب أبداً.
وإن كانت نظيفة، تمر الاستجابة دون مساس.
3. ماذا يكلّف حجب المخرجات
بخلاف حجب المدخلات — الذي يُطلق قبل قياس الطلب — يحدث حجب المخرجات بعد أن يكون النموذج الأعلى قد عمل بالفعل. تتولى البوابة المحاسبة عنك:- الإكمال المحجوب ما زال يعيد HTTP 400
guardrail_blockedمع رسالة تسمّي حاجز الحماية والقاعدة التي أُطلقت. - لا تُحاسب أي حصة. حجب المخرجات يردّ الحصة المستهلكة مسبقاً بعد رفض الاستجابة، فالاستدعاء الفاشل مجاني لك حتى لو أنتج النموذج رموزاً.
- يُعلَّم الطلب بـ skip-retry — إعادة تشغيل نفس المطالبة ستحجب مجدداً فحسب، لذا لن تحرق البوابة إعادة محاولة على قناة أخرى.
هذا هو الفرق الرئيسي عن مرحلة المدخلات. حجب المدخلات مجاني لأن القياس
لم يبدأ؛ وحجب المخرجات مجاني لأن الحصة المستهلكة مسبقاً تُردّ بمجرد
رفض الرد. في الحالتين لا يدفع المستدعي شيئاً. انظر
خطأ guardrail_blocked.
4. البث — block مقابل mask
يُفرض الحجب على الاستجابات المبثوثة؛ أما إخفاء المخرجات فليس بعد. إليك كيف يتصرف كل منهما:block — مفروض على البث وغير البث
block — مفروض على البث وغير البث
على الاستجابة غير المبثوثة، يُفحص الإكمال كاملاً قبل إرجاعه. وعلى
الاستجابة المبثوثة، يراقب ماسح الفروقات (deltas) كما تتدفق؛ عندما
تُطلق قاعدة حجب في منتصف التدفق، يقطع التدفق — يغلق الماسح، ويصدر
إشعاراً بديلاً قصيراً مكان البقية، وتُغلق قناة SSE قبل أن يصل أي محتوى
محجوب إلى العميل.البايتات المُمرَّرة بالفعل لا يمكن سحبها، فالحجب بأفضل جهد على ما
بُثّ بالفعل لكنه يوقف بشكل موثوق كل شيء بعد المطابقة. لضمان قاطع بأن
لا بايت مخالف يُرسَل أبداً، استخدم طلباً غير مبثوث.
mask — غير البث فقط (الإخفاء ضمن التدفق على خارطة الطريق)
mask — غير البث فقط (الإخفاء ضمن التدفق على خارطة الطريق)
على الاستجابة غير المبثوثة، تعيد قاعدة mask كتابة الإكمال — مثلاً
بريد إلكتروني في الرد يصبح
[EMAIL] — والنص المُنقّى هو ما يستلمه
عميلك.على الاستجابة المبثوثة، لا تنقّح قاعدة إخفاء المخرجات الرد
اليوم. ما زال الماسح يقيّم كل فرق وسيتصرف بناءً على قرار block،
لكن النص المُخفى الذي يحسبه لا يُمرَّر — تتدفق الفروقات الخام دون
تغيير. إعادة كتابة مخرجات البث ضمن النطاق على خارطة الطريق. حتى
تُشحن، أرسل الطلب غير مبثوث إذا احتجت إخفاء المخرجات أن ينقّح الرد
فعلاً.الإجراء على output | غير البث | البث |
|---|---|---|
block | يرفض الرد | يقطع التدفق |
mask | ينقّح الرد | غير منقّح بعد (خارطة الطريق) |
flag | يسجّل فقط | يسجّل فقط |
5. الترسيخ — فحص أمانة في مرحلة المخرجات
قاعدة متقدمة واحدة مخرجاتية بطبيعتها: الترسيخ السياقي. قاعدةgrounding تسجّل إجابة النموذج مقابل المصادر المسترجعة على الطلب
(سياق RAG الخاص بك) وتُطلق عندما تهبط الأمانة تحت عتبة (الافتراضي
0.7). اقرنها بـ block لرفض الإجابات غير الأمينة، أو flag لقياس
الانحراف قبل أن تفرض. تُفوتر كسطر فرعي للـ judge، كأي قاعدة مدعومة
بنموذج. الحقول الكاملة في
حواجز الحماية.
6. PII Shield في مرحلة المخرجات
الإعداد المسبق PII Shield هو قاعدةpii واحدة، إجراء mask،
المرحلة both. في مرحلة المدخلات هو حي بالكامل — يعيد كتابة الطلب
قبل النموذج، بثاً وغير بث على حدٍ سواء. وفي مرحلة المخرجات يخفي
الإكمالات غير المبثوثة، كما في
§4؛ وعلى الاستجابة المبثوثة لا ينقّح
إخفاء المخرجات الرد اليوم (إخفاء المخرجات ضمن التدفق على خارطة الطريق).
ففي مرحلة المخرجات، استدعِ غير مبثوث إذا احتجت PII Shield أن ينقّح
الرد فعلاً. انظر
PII Shield و
صيغ الإخفاء.
7. رؤية ما أُطلق
كل قاعدة مخرجات تُطلق تسجّل مطابقة — نوع قاعدتها وإجراءها ومرحلتها (output) وسلسلة تفصيل — في تغذية Matches لمساحة العمل
(GET /api/guardrail/match، مفتوحة لأي Member).
السلسلة الفرعية المطابقة تُسجَّل فقط عند تفعيل مفتاح Log raw
content لحاجز الحماية؛ وهو مُطفأ افتراضياً (الموقف المحافظ على
الخصوصية)، فافتراضياً ترى أن قاعدة مخرجات أُطلقت، لا النص الحساس الذي
اصطادته. تُوسَم الإيجابية الكاذبة بـ
POST /api/guardrail/match/:id/mark-fp (Admin) — عاملها كإشارة ضبط،
لا سبباً لتعطيل القاعدة.
8. إلى أين تذهب بعد ذلك
مرحلة المدخلات
الصورة المرآتية — افحص الطلب قبل أن يراه النموذج. إخفاء المدخلات حي
بالكامل، بما في ذلك البث.
الإجراءات
block وmask وflag بعمق — متى يكون كل واحد الخيار الصحيح.
تغطية البث
المصفوفة الكاملة لما يُفرض على البث مقابل غير البث.
خطأ guardrail_blocked
الـ HTTP 400، وردّ الحصة، وسلوك skip-retry.
مفاهيم ذات صلة
مفاهيم ذات صلة
التهديدات التي يعالجها هذا
التهديدات التي يعالجها هذا
المرجع الكامل للمحرك
المرجع الكامل للمحرك
حواجز الحماية — كل نوع قاعدة، وحقل، ومسار،
بما في ذلك الترسيخ وLLM judge.
