בדף הזה מוסבר איך להעריך סוכנים שנוצרו באמצעות Managed Agents API ב-Agent Platform, בעזרת שירות ההערכה של AI גנרטיבי. אתם יכולים ליצור תרחישי בדיקה סינתטיים, להריץ את הנציג מולם ולדרג את עקבות השיחה שנוצרו באמצעות מדדים מובנים מראש.
לפני שמתחילים
פועלים לפי ההוראות שבמאמר יצירה וניהול של סוכנים כדי ליצור משאב של סוכן מנוהל.
מתקינים את Agent Platform SDK עם תוסף ההערכה:
pip install google-cloud-aiplatform[evaluation]מגדירים את האימות ואת הפרויקט:
מחליפים את מה שכתוב בשדות הבאים:
- PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
import agentplatform client = agentplatform.Client( project="PROJECT_ID", location="global", )
תהליך עבודה של הערכה
הערכת נציג מנוהל כוללת שלושה שלבים:
- יצירת תרחישים: יצירה אוטומטית של תרחישי בדיקה מגוונים עם כמה שלבים, על סמך ההוראות וההגדרות של הכלים של הנציג.
- הרצת הסקה: מריצים את הנציג על התרחישים שנוצרו כדי לתעד את עקבות השיחה.
- הערכה: דירוג של עקבות השיחה באמצעות מדדים מובנים מראש.
שלב 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()
ה-method show() מציגה דוח אינטראקטיבי עם ציונים מצטברים, הסברים לכל מקרה ונתוני מעקב אחרי השיחות של הנציג, כולל הטופולוגיה של המערכת (הכלים וההוראות של הנציג).
בדיקת האינטראקציות הקיימות
אתם יכולים גם להעריך אינטראקציות שכבר הוקלטו עם הנציג. הנתונים האלה עוזרים להעריך את איכות השיחות בסביבת הייצור. במאמר שליחת אינטראקציה לסוכן בהתאמה אישית מוסבר איך שולחים אינטראקציה לסוכן ואיך מאחזרים את הערך של 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.
אינטראקציה עם סוכנים
איך לתקשר עם נציגים בזמן הריצה, לנהל את מצב הסשן ולשנות הגדרות באופן דינמי.