تقنية

حارس مسار الوكيل: هل يفحص كل خطوة داخلية؟

رسم ثلاثة عناصر وحارس على الجواب وحده دون علامة فحص للأداة
رسم تحريري لحد فحص معلن؛ ليس اختبار حماية.

نطاق فحص حارس الوكيل لا يثبت من كلمة «حماية» وحدها. يلزم معرفة موضع الفحص والمادة التي تشملها قاعدته. نقرأ حدود الحراس في دليل Agents SDK، ثم نؤلف مسارا من مدخل ونتيجة أداة ورد نهائي. لا نختبر حارسا أو نعد نتيجة تصنيف وعدا بالحماية.

الخلاصة السريعة

لا؛ وجود حارس عند المدخل أو النهاية لا يعني أنه راجع كل خطوة. عين حد الفحص وقاعدته وتوقيته، ثم راجع ما غطاه فعلا.

  • يحصر الدليل حارس المدخل في أول وكيل بالسلسلة وحارس الناتج في صاحب الناتج النهائي، وحارس الأداة في الدوال المرتبط بها. [1]
  • في مسارنا المعلن توجد رسالة ثم نتيجة أداة ثم جواب؛ حارس النهاية وحده لا يمثل ثلاثة فحوص لهذه العناصر.
  • إذا منعت قاعدتنا إظهار رمز ب 6 في الجواب، فجواب يخلو منه يحقق هذا الشرط فقط؛ لا يثبت أن نتيجة الأداة خلت منه.
  • يفرق الدليل بين حارس مدخل يحجب البدء وآخر متواز قد يسمح بعمل استباقي؛ اختر الحد والتوقيت الملائمين، ولا تعتبر فحص النهاية تراجعا عن أثر سابق. [1]

أين تقع حدود الحراس الموثقة؟

يحدد دليل Agents SDK حارس المدخل لأول وكيل بالسلسلة، وحارس الناتج للوكيل الذي ينتج الجواب النهائي، وحراس الأدوات للدوال التي ترتبط بها. وللفحص عند كل استدعاء مخصص لا يكفي الاعتماد على حارسي المدخل والناتج وحدهما. [1]

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

السؤال الدقيق هو أي مادة فحصت في أي موضع. علامة قبول بلا وصف للقيمة والقاعدة لا تخبرنا عن جميع العناصر التي مرت قبلها.

كم موضعا لدينا في مسار الورقة؟

نؤلف ثلاثة عناصر مرتبة: رسالة المستخدم «صف البطاقة»، ونتيجة أداة تحمل عنوانا ورمز ب 6، وجواب نهائي يحمل العنوان فقط. ونعلن أن تطبيقنا التعليمي يضع فحصا واحدا على الجواب النهائي.

لا نضع علامة فحص مستقلة على الرسالة أو نتيجة الأداة في هذا التصور. يوجد فحص نهاية واحد، لا ثلاثة فحوص لمجرد أن لدينا ثلاثة عناصر. هذه ورقة لتعيين الحدود وليست سجل تشغيل حارس.

وقد تكون نتيجة الأداة متاحة للرد في فرضنا دون أن تكون مشمولة بقاعدة فحص مستقلة. لا نخلط وصول المادة بمراجعتها عند موضع آخر.

ما الذي تثبته قاعدة ضيقة للجواب؟

نحدد قاعدة المثال: ألا يظهر الرمز ب 6 في الجواب النهائي. بحسب الجواب المعلن الذي يحمل العنوان فقط، تحقق هذا الشرط في الورقة. لم نعلن فحص صحة العنوان أو جودة الوصف.

وجود الرمز في نتيجة الأداة لا يتناقض مع خلو الجواب منه. لذلك لا نكتب «لم يمر الرمز بأي خطوة» بعد قبول الجواب؛ الدليل المعلن يغطي النهاية وقاعدة واحدة فحسب.

ولو ظهرت عبارة خاطئة لا تحتوي ب 6، فقد تحقق شرط الرمز وتظل العبارة خاطئة. اسم الحارس لا يوسع قاعدته إلى صدق كل محتوى الرد أو إلى كل مهمة داخلية.

لماذا يهم توقيت الفحص أيضا؟

يفرق الدليل بين تنفيذ حارس المدخل بصورة حاجبة للبدء وتنفيذه متوازيا؛ الخيار المتوازي لا يتجنب كل عمل استباقي كما يفعل انتظار الحارس قبل البدء. [1]

في تصميم مقترح نكتب متى يلزم انتظار الفحص وأين يراجع استدعاء يحدث أثرا. لا ننسب لفحص جواب جاء لاحقا إلغاء أثر سابق؛ تمريننا لا ينفذ آثارا أو اختبارات رفض.

احفظ نطاق القاعدة والموضع والتوقيت ونتيجته المعلومة. وإذا غاب وصف فحص مرحلة داخلية، يبقى فحصها غير متحقق لنا؛ لا نخمن نجاحه ولا نقرر أنه لم يوجد في نظام لم نقرأ سجله.

المصادر ومتابعة القراءة

  1. OpenAI: Guardrails and human review، الحدود والتنفيذ الحاجب والمتوازي (يفتح في نافذة جديدة)developers.openai.com

أُعدّ هذا المقال بصياغة عربية أصلية بالاستناد إلى المصادر أعلاه، وهو مدخل تمهيدي إلى الموضوع. اقرأ منهجية المحتوى وحدوده.