הערכת סוכנים שנוצרו באמצעות 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: מזהה הפרויקט ב- Google Cloud .
    import agentplatform
    
    client = agentplatform.Client(
        project="PROJECT_ID",
        location="global",
    )
    

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

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

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

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

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

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • 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: מזהה הפרויקט ב- Google Cloud .
  • 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.