crew.py.
مقدمة
تُستخدم التعليقات التوضيحية في إطار عمل CrewAI لتزيين الفئات والطرق، مما يوفر بيانات وصفية ووظائف للمكونات المختلفة في طاقمك. تساعد هذه التعليقات التوضيحية في تنظيم وهيكلة الكود الخاص بك، مما يجعله أكثر قابلية للقراءة والصيانة.التعليقات التوضيحية المتاحة
يوفر إطار عمل CrewAI التعليقات التوضيحية التالية:@CrewBase: تُستخدم لتزيين فئة الطاقم الرئيسية.@agent: تزين الطرق التي تعرّف وتُرجع كائنات Agent.@task: تزين الطرق التي تعرّف وتُرجع كائنات Task.@crew: تزين الطريقة التي تنشئ وتُرجع كائن Crew.@llm: تزين الطرق التي تهيئ وتُرجع كائنات نماذج اللغة.@tool: تزين الطرق التي تهيئ وتُرجع كائنات الأدوات.@callback: تُستخدم لتعريف طرق الاستدعاء الراجع.@output_json: تُستخدم للطرق التي تُخرج بيانات JSON.@output_pydantic: تُستخدم للطرق التي تُخرج نماذج Pydantic.@cache_handler: تُستخدم لتعريف طرق معالجة التخزين المؤقت.
أمثلة الاستخدام
لنمر عبر أمثلة لكيفية استخدام هذه التعليقات التوضيحية:1. فئة الطاقم الأساسية
@CrewBase لتزيين فئة الطاقم الرئيسية. تحتوي هذه الفئة عادةً على الإعدادات والطرق لإنشاء الوكلاء والمهام والطاقم نفسه.
2. تعريف الأداة
@tool لتزيين الطرق التي تُرجع كائنات أدوات. يمكن للوكلاء استخدام هذه الأدوات لأداء مهام محددة.
3. تعريف LLM
@llm لتزيين الطرق التي تهيئ وتُرجع كائنات نماذج اللغة. تستخدم هذه النماذج من قبل الوكلاء لمهام معالجة اللغة الطبيعية.
4. تعريف الوكيل
@agent لتزيين الطرق التي تعرّف وتُرجع كائنات Agent.
5. تعريف المهمة
@task لتزيين الطرق التي تعرّف وتُرجع كائنات Task. تحدد هذه الطرق إعداد المهمة والوكيل المسؤول عنها.
6. إنشاء الطاقم
@crew لتزيين الطريقة التي تنشئ وتُرجع كائن Crew. تجمع هذه الطريقة جميع المكونات (الوكلاء والمهام) في طاقم وظيفي.
إعداد YAML
تُخزن إعدادات الوكلاء عادةً في ملف YAML. إليك مثالاً على كيفية ظهور ملفagents.yaml لوكيل الباحث:
LinkedinProfileCrew. يحدد الإعداد دور الوكيل وهدفه وخلفيته وخصائص أخرى مثل LLM والأدوات التي يستخدمها.
لاحظ كيف يتوافق llm و tools في ملف YAML مع الطرق المزينة بـ @llm و @tool في فئة Python.
أفضل الممارسات
- تسمية متسقة: استخدم اصطلاحات تسمية واضحة ومتسقة لطرقك. على سبيل المثال، يمكن تسمية طرق الوكلاء بأسماء أدوارهم (مثل researcher، reporting_analyst).
- متغيرات البيئة: استخدم متغيرات البيئة للمعلومات الحساسة مثل مفاتيح API.
- المرونة: صمم طاقمك ليكون مرناً بالسماح بإضافة أو إزالة الوكلاء والمهام بسهولة.
- توافق YAML-الكود: تأكد من أن الأسماء والهياكل في ملفات YAML تتوافق بشكل صحيح مع الطرق المزينة في كود Python الخاص بك.
