لماذا نخصص المطالبات؟
على الرغم من أن مطالبات CrewAI الافتراضية تعمل بشكل جيد في كثير من السيناريوهات، إلا أن التخصيص على المستوى المنخفض يفتح الباب أمام سلوك أكثر مرونة وقوة للـ Agent. إليك لماذا قد ترغب في الاستفادة من هذا التحكم العميق:- التحسين لنماذج LLM محددة – تزدهر النماذج المختلفة (مثل GPT-4 وClaude وLlama) مع تنسيقات مطالبات مصممة لبنيتها الفريدة.
- تغيير اللغة – بناء Agents تعمل حصريًا بلغات غير الإنجليزية مع التعامل مع الفروق الدقيقة بدقة.
- التخصص في مجالات معقدة – تكييف المطالبات لصناعات متخصصة للغاية مثل الرعاية الصحية والمالية والقانون.
- ضبط النبرة والأسلوب – جعل الـ Agents أكثر رسمية أو عفوية أو إبداعية أو تحليلية.
- دعم حالات استخدام مخصصة للغاية – استخدام هياكل وتنسيقات مطالبات متقدمة لتلبية متطلبات معقدة خاصة بالمشروع.
فهم نظام المطالبات في CrewAI
تحت الغطاء، يستخدم CrewAI نظام مطالبات معياري يمكنك تخصيصه على نطاق واسع:- قوالب الـ Agent – تحكم في نهج كل Agent تجاه دوره المعيّن.
- شرائح المطالبات – تتحكم في السلوكيات المتخصصة مثل المهام واستخدام الأدوات وهيكل المخرجات.
- معالجة الأخطاء – توجيه كيفية استجابة الـ Agents للإخفاقات والاستثناءات وحالات انتهاء المهلة.
- مطالبات خاصة بالأدوات – تعريف تعليمات مفصلة لكيفية استدعاء الأدوات أو استخدامها.
فهم تعليمات النظام الافتراضية
عندما تعرّف Agent بـrole وgoal وbackstory، يضيف CrewAI تلقائيًا تعليمات نظام إضافية تتحكم في التنسيق والسلوك. فهم هذه الحقن الافتراضية أمر بالغ الأهمية لأنظمة الإنتاج التي تحتاج شفافية كاملة في المطالبات.
ما يحقنه CrewAI تلقائيًا
بناءً على تهيئة الـ Agent، يضيف CrewAI تعليمات افتراضية مختلفة:للـ Agents بدون أدوات
للـ Agents مع أدوات
للمخرجات المنظمة (JSON/Pydantic)
عرض مطالبة النظام الكاملة
لمعرفة المطالبة المرسلة بالضبط إلى LLM، يمكنك فحص المطالبة المولّدة:تجاوز التعليمات الافتراضية
لديك عدة خيارات للحصول على تحكم كامل في المطالبات:الخيار 1: القوالب المخصصة (مُوصى به)
الخيار 2: ملف مطالبات مخصص
أنشئ ملفcustom_prompts.json لتجاوز شرائح مطالبات محددة:
يُحتفظ بـ
agent.i18n للتوافق مع الإصدارات السابقة فقط، وقد تم إهماله. لتخصيص المطالبات أثناء التشغيل، مرّر prompt_file إلى Crew. وللوصول البرمجي المباشر إلى شرائح المطالبات، استخدم أداة i18n مباشرة:الخيار 3: تعطيل مطالبات النظام لنماذج o1
التصحيح باستخدام أدوات المراقبة
لشفافية الإنتاج، استخدم منصات المراقبة لمتابعة جميع المطالبات وتفاعلات LLM. يتيح لك ذلك رؤية المطالبات المرسلة بالضبط (بما في ذلك التعليمات الافتراضية) إلى نماذج LLM. راجع توثيق المراقبة للحصول على أدلة تكامل مفصلة مع منصات متعددة بما في ذلك Langfuse وMLflow وWeights & Biases وحلول التسجيل المخصصة.أفضل الممارسات للإنتاج
- افحص المطالبات المولّدة دائمًا قبل النشر في الإنتاج
- استخدم قوالب مخصصة عندما تحتاج تحكمًا كاملاً في محتوى المطالبات
- دمج أدوات المراقبة للمتابعة المستمرة للمطالبات (راجع توثيق المراقبة)
- اختبر مع نماذج LLM مختلفة حيث قد تعمل التعليمات الافتراضية بشكل مختلف عبر النماذج
- وثّق تخصيصات المطالبات لشفافية الفريق
أفضل الممارسات لإدارة ملفات المطالبات
عند الانخراط في تخصيص المطالبات على المستوى المنخفض، اتبع هذه الإرشادات للحفاظ على التنظيم وسهولة الصيانة:- احتفظ بالملفات منفصلة – خزّن المطالبات المخصصة في ملفات JSON مخصصة خارج قاعدة الكود الرئيسية.
- التحكم في الإصدارات – تتبع التغييرات داخل المستودع مع ضمان توثيق واضح لتعديلات المطالبات بمرور الوقت.
- التنظيم حسب النموذج أو اللغة – استخدم تسميات مثل
prompts_llama.jsonأوprompts_es.jsonلتحديد التهيئات المتخصصة بسرعة. - توثيق التغييرات – قدم تعليقات أو حافظ على ملف يوضح غرض ونطاق تخصيصاتك.
- قلل التعديلات – تجاوز فقط الشرائح المحددة التي تحتاج حقًا لتعديلها مع الحفاظ على الوظائف الافتراضية لكل شيء آخر.
أبسط طريقة لتخصيص المطالبات
إحدى الطرق المباشرة هي إنشاء ملف JSON للمطالبات التي تريد تجاوزها ثم توجيه Crew إلى ذلك الملف:- أنشئ ملف JSON بشرائح المطالبات المحدّثة.
- أشر إلى ذلك الملف عبر معامل
prompt_fileفي Crew.
crewai.utilities.i18n.get_i18n() مع ملف المطالبات نفسه بدلًا من قراءة agent.i18n.
مثال: تخصيص أساسي للمطالبات
أنشئ ملفcustom_prompts.json بالمطالبات التي تريد تعديلها. تأكد من إدراج جميع المطالبات عالية المستوى التي يجب أن يحتويها، وليس فقط تغييراتك:
التحسين لنماذج محددة
تزدهر النماذج المختلفة مع مطالبات منظمة بطرق مختلفة. إجراء تعديلات أعمق يمكن أن يعزز الأداء بشكل كبير من خلال مواءمة مطالباتك مع خصائص النموذج.مثال: قالب مطالبات Llama 3.3
على سبيل المثال، عند التعامل مع Llama 3.3 من Meta، قد يعكس التخصيص على المستوى الأعمق الهيكل الموصى به الموضح في: https://www.llama.com/docs/model-cards-and-prompt-formats/llama3_1/#prompt-template إليك مثالاً يوضح كيف يمكنك ضبط Agent للاستفادة من Llama 3.3 في الكود:الخلاصة
يفتح تخصيص المطالبات على المستوى المنخفض في CrewAI الباب أمام حالات استخدام مخصصة ومعقدة للغاية. من خلال إنشاء ملفات مطالبات منظمة (أو قوالب مضمّنة مباشرة)، يمكنك استيعاب نماذج ولغات ومجالات متخصصة متنوعة. يضمن هذا المستوى من المرونة أنك تستطيع صياغة سلوك الذكاء الاصطناعي الذي تحتاجه بالضبط، مع العلم أن CrewAI لا يزال يوفر إعدادات افتراضية موثوقة عندما لا تتجاوزها.لديك الآن الأساس لتخصيصات المطالبات المتقدمة في CrewAI. سواء كنت تتكيف مع هياكل خاصة بالنموذج أو قيود خاصة بالمجال، يتيح لك هذا النهج المنخفض المستوى تشكيل تفاعلات الـ Agent بطرق متخصصة للغاية.
