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

1. لماذا الفحص بحثاً عن مخرجات ذكاء اصطناعي غير آمنة في مرحلة الإخراج

يلتقط فحص الإدخال مطالبة سيئة. لكنه لا يستطيع التقاط إجابة سيئة: نموذج استُدرج خارج السياسة، أو ضبط دقيق بحواجز مدمجة أضعف، أو مطالبة معقولة تماماً أنتجت إكمالاً غير معقول. مرحلة الإخراج هي حيث تؤكّد “بغض النظر عن السبب، هذا النص لا يغادر البوابة”. تُطلق قاعدة البوابة حتمياً وتنطبق بالتساوي على كل نموذج خلف مفتاحك. وكل قاعدة تُطلق تنتهي في تغذية Matches لمساحة العمل — نوع القاعدة، والإجراء، والمرحلة — فيكون لديك مسار تدقيق لما التُقط وما سُمح بمروره.
الدفاع يعيش في البوابة، لا في تطبيقك. حرّر حاجز الحماية فيسري التغيير في الاستدعاء التالي لكل مفتاح مربوط به — بلا إعادة نشر، بلا تغيير SDK. يبقى تطبيقك يستدعي /v1/chat/completions تماماً كما من قبل.

2. الطريقتان لالتقاطها

اقرن قائمة رفض حتمية بقاضٍ دلالي للدفاع المتعمّق.
قاعدة keyword هي مطابقة سلسلة فرعية غير حساسة للحالة؛ وقاعدة regex هي نمط RE2 (زمن خطي، بلا مراجع خلفية). كلاهما يعمل على المسار الساخن بلا استدعاء شبكة — مثالي لقائمة كلمات محظورة معروفة، أو قائمة رفض منافسين، أو نمط بنيوي (رمز قالب محادثة مسرَّب، أو عبارة قاطعة “أنت مستحقّ للتعويضات”).
تقيّم قاعدة llm_judge الاستجابة مقابل معيار تكتبه أنت باستخدام نموذج في مساحة عملك — السميّة، والنبرة خارج هوية العلامة، والنصيحة خارج السياسة التي لا تلتقطها أي قائمة حرفية. تحمل judge_timeout_ms، وهي fail-open افتراضياً (خطأ القاضي يُسجَّل وتستمر الاستجابة)، وتُفوتَر رموزها كسطر فرعي للقاضي. انظر مرجع قاضي LLM.

3. مثال ملموس واحد — احجب السام، أخفِ خارج هوية العلامة

حاجز حماية واحد في مرحلة الإخراج يحجب استجابة سامة دلالياً ويخفي مصطلحات علامة محظورة في كل ما تبقّى:
{
  "name": "safe-output",
  "rules": [
    {
      "type": "llm_judge",
      "stage": "output",
      "action": "block",
      "judge_model": "openai/gpt-4o-mini",
      "judge_format": "yes_no",
      "judge_rubric": "Does this response contain toxic, harassing, hateful, or otherwise unsafe content? Answer yes or no.",
      "judge_fail_open": true
    },
    {
      "type": "keyword",
      "stage": "output",
      "action": "mask",
      "keywords": ["competitor-name", "internal-codename"]
    }
  ]
}
ألّف هذا في وحدة التحكم — افتح /console/guardrailsNew guardrail، أضف القاعدتين، واربطه بمفتاح من محرّر Token (يعيش الربط على المفتاح كـ guardrail_id). يعمل الضبط على جلسة وحدة التحكم لديك، لا على مفتاح الترحيل؛ ووحدها مكالمة /v1/* أدناه تستخدم مفتاح sk-orca-....
curl https://api.orcarouter.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-orca-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [{"role": "user", "content": "Draft a reply to this angry customer"}]
  }'
إن أعاد النموذج مسوّدة سامة، تُحجب الاستجابة بـ HTTP 400 guardrail_blocked. وإن كانت نظيفة لكنها تذكر مصطلحاً محظوراً، يُعرَض ذلك المقطع كحجب مكتوب وتتدفّق البقية.
كرّر قبل أن تربط. يشغّل تبويب Test داخل المحرّر السياسة الحالية على استجابة عينة في مرحلة output — بلا استدعاء أعلى، بلا حصة — ويشغّل تبويب Eval السياسة مقابل مجموعة بيانات لتثبت معدل الالتقاط ومعدل الإيجابيات الكاذبة قبل الإنتاج. انظر أداة التقييم.

4. ابدأ من إعداد مسبق

تطرح مكتبة قوالب New guardrail نقاط انطلاق جاهزة في الفئات Safety وBrand وCompliance. الإعداد المسبق بذرة — طبّقه، ثم حرّر بحرية.
الفئةإعداد مرحلة الإخراج المسبق للانطلاق منه
SafetySystem-Prompt Leak Detector (output)، وStrong System Prompt Leak — علّم/احجب الاستجابات التي تردّد رموز مطالبة النظام أو قالب المحادثة.
BrandProfanity Filter (mask) — يعمل على المرحلتين ويخفي الكلمات في قائمة الرفض داخل الاستجابة. (إعدادات Profanity / Brand Safety وCompetitor Mentions بنمط الحجب هي بذور مرحلة إدخال؛ أعد توجيه نسخة إلى output إن أردتها أن تفحص الإجابة.)
ComplianceLegal Disclaimer Enforce — علّم الاستجابات التي تقدّم نصيحة قانونية/مالية قاطعة لمراجعة الفريق.
تُغلّف فئة Compliance أيضاً سياسات متوائمة مع الأطر؛ وللطروحات المدقَّقة المدفوعة بإطار، ثبّت حزمة امتثال واقرن مسار التدقيق بـمسار التدقيق.

5. التدفّق: التحذير المهمّ

ما إذا كانت قاعدة الإخراج تُفرَض حيّاً يعتمد على الإجراء وعلى ما إذا كنت تتدفّق.
الإجراءغير متدفّقمتدفّق
blockالاستجابة محجوبة؛ HTTP 400 guardrail_blockedيقطع ماسحٌ التدفّق في منتصف الطيران ويُصدر رسالة بديلة — لا يصل المحتوى المحجوب إلى العميل أبداً
maskالمطابقة محجوبة في النص المُعادغير متدفّق فقط اليوم؛ إعادة كتابة التدفّق داخل النطاق على خارطة الطريق
flagيسجّل مطابقة، لا يغيّر شيئاًيسجّل مطابقة، لا يغيّر شيئاً
mask الإخراج ليس حيّاً بعد على الاستجابات المتدفّقة. إن كنت تتدفّق وتعتمد على الإخفاء لحجب مقاطع خارج هوية العلامة، تمرّ الكتلة الأصلية دون إخفاء. إما اطلب غير متدفّق عند إخفاء الاستجابة، أو استخدم قاعدة block (تُفرَض على المتدفّق وغير المتدفّق) للمحتوى الذي يجب ألا يغادر البوابة أبداً. ينطبق نفس التحذير على الإعداد المسبق PII Shield، الذي إخفاؤه الحيّ في مرحلة الإدخال اليوم.
الاستجابة المحجوبة لا تكلّف أي حصة — يردّ حجب مرحلة الإخراج الحصة المُستهلَكة مسبقاً بعد رفض الاستجابة — وتُعلَّم skip-retry، إذ إن إعادة تشغيل نفس المطالبة ستحجب مجدداً فحسب.

6. شكل السياسة الموصى به

طبّق ثلاث قواعد في حاجز حماية واحد

  1. keyword / regex في output — التقاط بلا زمن انتظار للمصطلحات المحظورة المعروفة والأنماط البنيوية.
  2. llm_judge في output — التقاط السميّة / خارج هوية العلامة / خارج السياسة دلالياً لما تفوّته القائمة الحرفية.
  3. اطرح عبر flag أولاً، راقب تغذية Matches، ثم رقِّ إلى block بمجرد أن يصبح معدل الإيجابيات الكاذبة مقبولاً. انظر أوضاع الفرض.
ولفحص الطلب أيضاً — محاولات الكسر والحقن التي تنتج مخرجات غير آمنة من الأساس — شغّل حاجز حماية في مرحلة الإدخال إلى جانب هذا. انظر الكسور الأمنية وحقن المطالبة.

مرجع حواجز الحماية

مرجع كامل لأنواع القواعد، والإجراءات، والمراحل، وقاضي LLM، والإعدادات المسبقة، وأداة التقييم، وتغذية Matches.

تسريب البيانات

إيقاف خروج البيانات الحساسة في استجابة نموذج أو استدعاء أداة.