הערכת סוכנים שנוצרו באמצעות Managed Agents API ב-Agent Platform

בדף הזה מוסבר איך להעריך סוכנים שנוצרו באמצעות Managed Agents API ב-Agent Platform באמצעות שירות ההערכה של AI גנרטיבי. אתם יכולים ליצור תרחישי בדיקה סינתטיים, להריץ את הנציג מול התרחישים האלה ולתת ציון לתוצאות של עקבות השיחה באמצעות מדדים מוכנים מראש.

לפני שמתחילים

  1. פועלים לפי השלבים במאמר יצירה וניהול של סוכנים כדי ליצור משאב של סוכן מנוהל.

  2. מתקינים את Agent Platform SDK עם תוסף ההערכה:

    pip install google-cloud-aiplatform[evaluation]
    
  3. מגדירים אימות ומגדירים את הפרויקט:

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS .
    import agentplatform
    
    client = agentplatform.Client(
        project="PROJECT_ID",
        location="global",
    )
    

תהליך העבודה של ההערכה

הערכה של סוכן מנוהל מתבצעת בשלושה שלבים:

  1. יצירת תרחישים: יצירת תרחישי בדיקה מגוונים ורב-שלביים באופן אוטומטי, על סמך ההוראות והגדרות הכלים של הסוכן.
  2. הפעלת הסקה: הפעלת הסוכן מול התרחישים שנוצרו כדי לתעד את עקבות השיחה.
  3. הערכה: מתן ציון למעקב אחר השיחות באמצעות מדדים מובנים מראש.

שלב 1: יצירת תרחישי שיחה

אפשר להשתמש ב-generate_conversation_scenarios כדי ליצור באופן אוטומטי תרחישי בדיקה על סמך ההגדרות של הסוכן. השיטה קוראת את ההוראות למערכת ואת הכלים של הנציג כדי ליצור הנחיות ריאליסטיות למשתמשים.

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS .
  • ‫AGENT_ID: המזהה של משאב הסוכן. במאמר רשימת סוכנים מוסבר איך לאחזר או לרשום סוכנים בהתאמה אישית כדי למצוא את המזהים שלהם.
AGENT_RESOURCE = f"projects/PROJECT_ID/locations/global/agents/AGENT_ID"

scenarios = client.evals.generate_conversation_scenarios(
    agent=AGENT_RESOURCE,
    config={
        "count": 5,
        "generation_instruction": "Generate scenarios where a user asks for a refund.",
    },
)

scenarios.show()

כל תרחיש שנוצר כולל starting_prompt שמייצג את ההודעה הראשונית של המשתמש בשיחה.

שלב 2: הפעלת הסקה

משתמשים ב-run_inference כדי להריץ את הסוכן מול התרחישים שנוצרו. הסוכן מריץ כל תרחיש ומפיק מעקב שיחה שמתעד את האינטראקציה המלאה, כולל קריאות לכלים, שלבים ביניים והתשובה הסופית.

inference_results = client.evals.run_inference(
    agent=AGENT_RESOURCE,
    src=scenarios,
    config={"user_simulator_config": {"max_turn": 5}}
)

inference_results.show()

שלב 3: הערכה

אפשר להשתמש ב-evaluate כדי לתת ציון למעקב אחר השיחות באמצעות מדדים מוכנים מראש. המדדים הבאים זמינים להערכת נציגים:

מדד תיאור
final_response_quality_v1 הערכה אם הסוכן השלים בהצלחה את המשימה של המשתמש.
safety_v1 הפונקציה בודקת אם התשובות של הסוכן בטוחות.
multi_turn_task_success_v1 הערכה אם הסוכן השלים בהצלחה את המשימה הרב-שלבית של המשתמש.
from agentplatform import types

eval_result = client.evals.evaluate(
    dataset=inference_results,
    metrics=[
        types.RubricMetric.MULTI_TURN_TASK_SUCCESS,
    ],
    agent=AGENT_RESOURCE,
)

eval_result.show()

בשיטה show() מוצג דוח אינטראקטיבי עם ציונים מצטברים, נימוקים לכל מקרה ועקבות השיחה של הסוכן, כולל טופולוגיית המערכת (הוראות וכלי הסוכן).

הערכת אינטראקציות קיימות

אפשר גם להעריך אינטראקציות שכבר הוקלטו עם הנציג. הנתון הזה שימושי להערכת האיכות של שיחות עם Gemini. במאמר שליחת אינטראקציה לנציג מותאם אישית מוסבר איך שולחים אינטראקציה לנציג ואיך מאחזרים את מזהה האינטראקציה (interaction_id).

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS .
  • ‫INTERACTION_ID: המזהה של אינטראקציה מוקלטת.
  • AGENT_RESOURCE: שם המשאב המלא של הסוכן, בפורמט projects/PROJECT_ID/locations/global/agents/AGENT_ID.
interactions_dataset = types.EvaluationDataset(
    eval_cases=[
        types.EvalCase(
            interactions_data_source=types.InteractionsDataSource(
                interaction=f"projects/PROJECT_ID/locations/global/interactions/INTERACTION_ID",
                gemini_agent_config=types.GeminiAgentConfig(
                    gemini_agent=AGENT_RESOURCE,
                ),
            ),
        ),
    ]
)

eval_result = client.evals.evaluate(
    dataset=interactions_dataset,
    metrics=[
        types.RubricMetric.MULTI_TURN_TASK_SUCCESS,
    ],
    agent=AGENT_RESOURCE,
)

eval_result.show()

המאמרים הבאים

מדריך

במאמר הזה מוסבר איך ליצור, לעדכן, להציג, לקבל ולמחוק סוכנים באמצעות API בארכיטקטורת REST.

מדריך

איך מתקשרים עם סוכנים בזמן ריצה, מנהלים את מצב הסשן ומבטלים באופן דינמי את ההגדרות

סקירה כללית

מידע נוסף על הערכת תפקוד הסוכנים ב-Google Agent Platform

מדריך

כאן אפשר לקרוא איך לנהל מדדי הערכה ב-Google Agent Platform.