تقييم Patronus AI
تقييم Patronus AI
Section titled “تقييم Patronus AI”نظرة عامة
Section titled “نظرة عامة”يوفر Patronus AI إمكانيات تقييم ومراقبة شاملة لوكلاء CrewAI، مما يمكّنك من تقييم مخرجات النماذج وسلوكيات الوكلاء والأداء العام للنظام. يتيح لك هذا التكامل تنفيذ سير عمل تقييم مستمر يساعد في الحفاظ على الجودة والموثوقية في بيئات الإنتاج.
الميزات الرئيسية
Section titled “الميزات الرئيسية”- التقييم الآلي: تقييم فوري لمخرجات وسلوكيات الوكلاء
- معايير مخصصة: حدد معايير تقييم محددة مصممة لحالات الاستخدام الخاصة بك
- مراقبة الأداء: تتبع مقاييس أداء الوكلاء بمرور الوقت
- ضمان الجودة: ضمان جودة مخرجات متسقة عبر سيناريوهات مختلفة
- السلامة والامتثال: مراقبة المشكلات المحتملة وانتهاكات السياسات
أدوات التقييم
Section titled “أدوات التقييم”يوفر Patronus ثلاث أدوات تقييم رئيسية لحالات استخدام مختلفة:
- PatronusEvalTool: يسمح للوكلاء باختيار المقيّم والمعايير الأنسب لمهمة التقييم.
- PatronusPredefinedCriteriaEvalTool: يستخدم مقيّماً ومعايير محددة مسبقاً من قبل المستخدم.
- PatronusLocalEvaluatorTool: يستخدم دوال تقييم مخصصة محددة من قبل المستخدم.
التثبيت
Section titled “التثبيت”لاستخدام هذه الأدوات، تحتاج إلى تثبيت حزمة Patronus:
uv add patronusستحتاج أيضاً إلى إعداد مفتاح API الخاص بـ Patronus كمتغير بيئة:
export PATRONUS_API_KEY="your_patronus_api_key"خطوات البدء
Section titled “خطوات البدء”لاستخدام أدوات تقييم Patronus بفعالية، اتبع الخطوات التالية:
- تثبيت Patronus: ثبّت حزمة Patronus باستخدام الأمر أعلاه.
- إعداد مفتاح API: عيّن مفتاح API الخاص بـ Patronus كمتغير بيئة.
- اختيار الأداة المناسبة: حدد أداة تقييم Patronus المناسبة بناءً على احتياجاتك.
- إعداد الأداة: هيئ الأداة بالمعاملات اللازمة.
استخدام PatronusEvalTool
Section titled “استخدام PatronusEvalTool”يوضح المثال التالي كيفية استخدام PatronusEvalTool، التي تسمح للوكلاء باختيار المقيّم والمعايير الأنسب:
from crewai import Agent, Task, Crewfrom crewai_tools import PatronusEvalTool
# Initialize the toolpatronus_eval_tool = PatronusEvalTool()
# Define an agent that uses the toolcoding_agent = Agent( role="Coding Agent", goal="Generate high quality code and verify that the output is code", backstory="An experienced coder who can generate high quality python code.", tools=[patronus_eval_tool], verbose=True,)
# Example task to generate and evaluate codegenerate_code_task = Task( description="Create a simple program to generate the first N numbers in the Fibonacci sequence. Select the most appropriate evaluator and criteria for evaluating your output.", expected_output="Program that generates the first N numbers in the Fibonacci sequence.", agent=coding_agent,)
# Create and run the crewcrew = Crew(agents=[coding_agent], tasks=[generate_code_task])result = crew.kickoff()استخدام PatronusPredefinedCriteriaEvalTool
Section titled “استخدام PatronusPredefinedCriteriaEvalTool”يوضح المثال التالي كيفية استخدام PatronusPredefinedCriteriaEvalTool، التي تستخدم مقيّماً ومعايير محددة مسبقاً:
from crewai import Agent, Task, Crewfrom crewai_tools import PatronusPredefinedCriteriaEvalTool
# Initialize the tool with predefined criteriapatronus_eval_tool = PatronusPredefinedCriteriaEvalTool( evaluators=[{"evaluator": "judge", "criteria": "contains-code"}])
# Define an agent that uses the toolcoding_agent = Agent( role="Coding Agent", goal="Generate high quality code", backstory="An experienced coder who can generate high quality python code.", tools=[patronus_eval_tool], verbose=True,)
# Example task to generate codegenerate_code_task = Task( description="Create a simple program to generate the first N numbers in the Fibonacci sequence.", expected_output="Program that generates the first N numbers in the Fibonacci sequence.", agent=coding_agent,)
# Create and run the crewcrew = Crew(agents=[coding_agent], tasks=[generate_code_task])result = crew.kickoff()استخدام PatronusLocalEvaluatorTool
Section titled “استخدام PatronusLocalEvaluatorTool”يوضح المثال التالي كيفية استخدام PatronusLocalEvaluatorTool، التي تستخدم دوال تقييم مخصصة:
from crewai import Agent, Task, Crewfrom crewai_tools import PatronusLocalEvaluatorToolfrom patronus import Client, EvaluationResultimport random
# Initialize the Patronus clientclient = Client()
# Register a custom evaluator@client.register_local_evaluator("random_evaluator")def random_evaluator(**kwargs): score = random.random() return EvaluationResult( score_raw=score, pass_=score >= 0.5, explanation="example explanation", )
# Initialize the tool with the custom evaluatorpatronus_eval_tool = PatronusLocalEvaluatorTool( patronus_client=client, evaluator="random_evaluator", evaluated_model_gold_answer="example label",)
# Define an agent that uses the toolcoding_agent = Agent( role="Coding Agent", goal="Generate high quality code", backstory="An experienced coder who can generate high quality python code.", tools=[patronus_eval_tool], verbose=True,)
# Example task to generate codegenerate_code_task = Task( description="Create a simple program to generate the first N numbers in the Fibonacci sequence.", expected_output="Program that generates the first N numbers in the Fibonacci sequence.", agent=coding_agent,)
# Create and run the crewcrew = Crew(agents=[coding_agent], tasks=[generate_code_task])result = crew.kickoff()المعاملات
Section titled “المعاملات”PatronusEvalTool
Section titled “PatronusEvalTool”لا تتطلب PatronusEvalTool أي معاملات أثناء التهيئة. تقوم تلقائياً بجلب المقيّمين والمعايير المتاحة من API الخاص بـ Patronus.
PatronusPredefinedCriteriaEvalTool
Section titled “PatronusPredefinedCriteriaEvalTool”تقبل PatronusPredefinedCriteriaEvalTool المعاملات التالية أثناء التهيئة:
- evaluators: مطلوب. قائمة من القواميس تحتوي على المقيّم والمعايير المراد استخدامها. مثال:
[{"evaluator": "judge", "criteria": "contains-code"}].
PatronusLocalEvaluatorTool
Section titled “PatronusLocalEvaluatorTool”تقبل PatronusLocalEvaluatorTool المعاملات التالية أثناء التهيئة:
- patronus_client: مطلوب. مثيل عميل Patronus.
- evaluator: اختياري. اسم المقيّم المحلي المسجل للاستخدام. القيمة الافتراضية هي سلسلة نصية فارغة.
- evaluated_model_gold_answer: اختياري. الإجابة المرجعية للاستخدام في التقييم. القيمة الافتراضية هي سلسلة نصية فارغة.
الاستخدام
Section titled “الاستخدام”عند استخدام أدوات تقييم Patronus، تقدم مدخلات النموذج ومخرجاته وسياقه، وتعيد الأداة نتائج التقييم من API الخاص بـ Patronus.
بالنسبة لـ PatronusEvalTool وPatronusPredefinedCriteriaEvalTool، المعاملات التالية مطلوبة عند استدعاء الأداة:
- evaluated_model_input: وصف مهمة الوكيل بنص بسيط.
- evaluated_model_output: مخرجات الوكيل للمهمة.
- evaluated_model_retrieved_context: سياق الوكيل.
بالنسبة لـ PatronusLocalEvaluatorTool، نفس المعاملات مطلوبة، لكن المقيّم والإجابة المرجعية يتم تحديدهما أثناء التهيئة.
الخلاصة
Section titled “الخلاصة”توفر أدوات تقييم Patronus طريقة قوية لتقييم وتسجيل درجات مدخلات ومخرجات النماذج باستخدام منصة Patronus AI. من خلال تمكين الوكلاء من تقييم مخرجاتهم أو مخرجات وكلاء آخرين، يمكن لهذه الأدوات المساعدة في تحسين جودة وموثوقية سير عمل CrewAI.