الانتقال إلى المحتوى الرئيسي
حاجز الحماية هو طبقة سياسة المحتوى في بوابة OrcaRouter. تؤلّف سياسة مسمّاة واحدة في مساحة عملك، وتربطها بمفتاح API، فيُفحص كل استدعاء /v1/* يصدره ذلك المفتاح — قبل أن يرى النموذج المطالبة وبعد أن يجيب النموذج — بدون إعادة نشر وبدون تغيير في SDK. هذه الصفحة هي المحور لقسم حواجز الحماية: ما هو حاجز الحماية، وأنواع القواعد، والمراحل والإجراءات، وكيف تُربط السياسة بمفتاح. كل صفحة فرعية تتعمق أكثر. للمرجع الكامل للمحرك، انظر حواجز الحماية.

1. ما الذي تفعله حواجز حماية الذكاء الاصطناعي على البوابة

معظم الفرق تلجأ إلى حواجز الحماية لإبقاء البيانات الحساسة خارج المطالبات (PII، الأسرار)، أو لتبويب المحتوى غير الآمن (jailbreak، نية حقن المطالبات)، أو لتلبية ضابط امتثال. حاجز الحماية هو جواب البوابة: سياسة مسمّاة ضمن نطاق مساحة العمل — قائمة مرتبة من القواعد تشغّلها البوابة على مدخلات الطلب ومخرجات النموذج. ولأن الربط يعيش على مفتاح API في البوابة — وليس في تطبيقك — فإن تعديل حاجز حماية يحدث أثره على كل مفتاح مرتبط في الاستدعاء التالي. يبقى كودك يستدعي /v1/chat/completions تماماً كما كان.
حواجز الحماية هي سياسة محتوى (نص داخل، نص خارج). الرفيق جدار الحماية للوكيل هو سياسة أدوات — يحكم أي استدعاءات أدوات يجوز للوكيل إجراؤها. الاثنان يتكاملان؛ انظر حواجز الحماية مقابل جدار الحماية.

2. مثال واحد ملموس

أنشئ حاجز حماية باسم pii-shield في وحدة التحكم (/console/guardrails)، أضف قاعدة PII واحدة — المرحلة input، الإجراء mask، الكيانات email، ssn — واربطها بمفتاح. من تلك اللحظة:
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": "Reply to jane@acme.com please"}
    ]
  }'
تعيد البوابة كتابة المطالبة إلى Reply to [EMAIL] please قبل إعادة التوجيه — لا يرى النموذج الأعلى العنوان أبداً. اقلب كيان ssn ذاك إلى block ويُرفض الطلب التالي الذي يحمل SSN بـ HTTP 400. بدون أي تغيير في التطبيق.
التأليف هو إجراء وحدة تحكم / API إداري على جلستك — مفتاح الترحيل sk-orca-... مخصص لحركة /v1/* فقط، وليس أبداً لتحرير السياسة. إنشاء أو تحرير حاجز حماية يتطلب دور Developer+.

3. القواعد: النوع، المرحلة، الإجراء

كل قاعدة تجيب على ثلاثة أسئلة. يشغّل المحرك كل القواعد المنطبقة ويطويها في قرار واحد.
سبعة أنواع من القواعد. المدمجة حتمية (مطابقة سلاسل/regex نقية، بدون شبكة)؛ والمتقدمة تستدعي نموذجاً أو مزوداً وتعمل بالتزامن.
  • keyword — قائمة حظر حرفية، مطابقة جزئية غير حساسة لحالة الأحرف.
  • regex — نمط RE2 (زمن خطي، بدون مراجع خلفية).
  • pii — كواشف الكيانات المدمجة بالإضافة إلى كياناتك. انظر §5.
  • max_chars — يحدّ عدد الأحرف في مرحلة ما.
  • external — يفوّض إلى مزود متصل (Aporia أو Averta أو webhook خاص بك).
  • llm_judge — فحص دلالي مقابل نموذج في مساحة عملك.
  • grounding — يسجّل مدى أمانة الإجابة مقابل المصادر المسترجعة على الطلب (RAG).
input (الطلب)، أو output (استجابة النموذج)، أو both. تعمل قواعد المدخلات قبل الاستدعاء الأعلى؛ وتعمل قواعد المخرجات بعد أن يستجيب النموذج. انظر مرحلة المدخلات ومرحلة المخرجات.
خمسة إجراءات تظهر في باني القواعد:
  • block — رفض الاستدعاء بـ HTTP 400.
  • mask — تنقيح المطابقة وتمرير النص المُنقّى.
  • flag — لا تغيّر شيئاً في حركة المرور؛ تسجّل المطابقة فقط.
  • annotate — تترك النص كما هو لكنها تحقن ملاحظة أمنية للأعلى (مثل تنبيه CVE قبل أن يجيب النموذج).
  • spotlight — تغلّف النص غير الموثوق المطابق بفواصل وتخبر النموذج بمعاملته كبيانات، لا كتعليمات.
انظر الإجراءات. استخدم flag لقياس قاعدة على حركة المرور الحية قبل أن تفرضها.

4. كيف يُربط حاجز الحماية ويُحَل

يُربط حاجز حماية بمفتاح عبر guardrail_id، أو يمكن لمساحة عمل أن تعلّم حاجز حماية واحداً كافتراضي لها. لأي طلب تحل البوابة بهذا الترتيب:
  1. الربط الصريح — إذا كان guardrail_id للمفتاح يشير إلى حاجز حماية موجود ومفعّل، فإن ذلك ينطبق. الربط الصريح لا يتراجع أبداً: تعطيله هو مفتاح الإيقاف.
  2. افتراضي مساحة العمل — إذا لم يكن للمفتاح ربط، ينطبق حاجز الحماية الافتراضي المفعّل.
  3. لا هذا ولا ذاك — لا تطبيق؛ الطلب متطابق بايت ببايت مع مساحة عمل لم تفعّل الميزة أبداً.
يختلف هذا عن جدار الحماية. سياسة جدار الحماية المربوطة المعطّلة تتراجع إلى افتراضي مساحة العمل؛ أما حاجز الحماية المربوط المعطّل فيؤول إلى لا شيء. مفتاح الإيقاف حرفي لحواجز الحماية.
شروحات تفصيلية: أنشئ حاجز حمايتك الأول، اربطه بمفتاح، اضبط افتراضي حساب.

5. كواشف PII

تشحن قاعدة pii مجموعة مغلقة من الكواشف المدمجة: email، phone، credit_card، ssn، ip، iban، mac_address، jwt، aws_access_key، api_key_openai، bitcoin_address — بالإضافة إلى الكيانات الإقليمية jp_mynumber، kr_rrn، وcn_resident_id. عند إجراء mask تصبح كل مطابقة وسماً مُصنّفاً — يُصيّر البريد الإلكتروني [EMAIL]، وSSN [SSN]. يمكنك تركيب حتى 25 كياناً مخصصاً لكل قاعدة (regex بمجموع تحقّق Luhn اختياري)، وتوجيه كيانات مختلفة إلى إجراءات مختلفة في قاعدة واحدة عبر تجاوزات لكل كيان.
نقطة الانطلاق الجاهزة هي الإعداد المسبق PII Shield — قاعدة pii واحدة، mask، المرحلة both. إخفاء مرحلة المدخلات يعيد كتابة الطلب قبل النموذج (بثاً أو لا)؛ وإخفاء المخرجات يعيد كتابة الاستجابة على الاستجابات غير المبثوثة فقط — إعادة كتابة المخرجات ضمن التدفق على خارطة الطريق. انظر PII Shield، الكيانات المخصصة، و صيغ الإخفاء.

6. منتقي الإعدادات المسبقة

New guardrail يفتح في قالب. الإعدادات المسبقة مكتوبة من جانب الخادم، لذا تصف وحدة التحكم والـ sandbox وهذه المستندات السلوك نفسه. يجمّعها المنتقي في فئات:
الفئةإعدادات مسبقة مثالالصفحة الفرعية
pii / secretsPII Shield، حواجز اعتماد الأسرارحجب الأسرار
safetyحقن المطالبات، jailbreak، إيذاء النفسحقن المطالبات
complianceGDPR، PCI، HIPAA، مُسجّل الامتثالمُسجّل الامتثال
brand / costالألفاظ النابية، ذكر المنافسين، سقوف الحجمسلامة العلامة التجارية · التكلفة
agentمرشحات URL / أداة shell / SQL-في-المخرجاتالوكيل
code_securityحجب ملفات الأسرار، مراجعة رخص copyleftأمان الكود
الإعداد المسبق بذرة، لا قفل — طبّقه، ثم حرّر بحرية. مزيد من نقاط الانطلاق تحت القوالب.

7. عندما يحجب حاجز الحماية

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

8. بعد أن يصبح حياً

تغذية المطابقات

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

التسجيل والخصوصية

السلسلة الفرعية المطابقة تُسجَّل فقط عند تفعيل Log raw content — مُطفأ افتراضياً، الموقف المحافظ على الخصوصية.

إصدارات

كل تغيير يكتب صف تاريخ. قارن أي إصدارين بـ diff وتراجع كإصدار جديد — لا يُعدَّل التاريخ أبداً.

الاختبار والتقييم

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

9. إلى أين تذهب بعد ذلك

حواجز الحماية — كل حقل، كل مسار، وقواعد LLM-judge والترسيخ السياقي، والمزودون الخارجيون بعمق.