Comprendre les résultats et les résultats
Les résultats des évaluations par lots se répartissent en deux couches : des résumés agrégés dans la réponse de l'API et des informations détaillées par session dans les CloudWatch journaux.
Résultats agrégés
Lorsqu'une évaluation par lots est terminée, la GetBatchEvaluation réponse inclut un evaluationResults objet avec des résumés agrégés.
Nombre de sessions
| Champ | Description |
|---|---|
|
|
Nombre de sessions évaluées avec succès par tous les évaluateurs. |
|
|
Nombre de sessions où au moins un évaluateur a échoué. |
|
|
Nombre de sessions toujours en cours d'évaluation (0 lorsque le travail est terminé). |
|
|
Nombre total de sessions découvertes à partir de la source de session. |
|
|
Nombre de sessions ignorées pour évaluation. Le service évalue jusqu'à 500 sessions par tâche. Si plus de 500 sessions sont découvertes, le service sélectionne les 500 sessions les plus récentes et ignore les autres. |
Per-evaluator résumés
Chaque entrée evaluatorSummaries fournit des mesures agrégées pour un évaluateur :
| Champ | Description |
|---|---|
|
|
ID court (par exemple, |
|
|
Score moyen pour toutes les sessions évaluées. La plage dépend de l'évaluateur (généralement de 0 à 1). |
|
|
Nombre de sessions que cet évaluateur a notées avec succès. |
|
|
Nombre de sessions où cet évaluateur a renvoyé une erreur. |
Exemple de réponse
{ "batchEvaluationId": "12345678-1234-1234-1234-123456789012", "status": "COMPLETED", "evaluationResults": { "numberOfSessionsCompleted": 47, "numberOfSessionsFailed": 3, "numberOfSessionsIgnored": 0, "totalNumberOfSessions": 50, "evaluatorSummaries": [ { "evaluatorId": "Builtin.GoalSuccessRate", "statistics": { "averageScore": 0.72 }, "totalEvaluated": 47, "totalFailed": 0 }, { "evaluatorId": "Builtin.Helpfulness", "statistics": { "averageScore": 0.81 }, "totalEvaluated": 47, "totalFailed": 0 } ] } }
Per-session détails dans les CloudWatch journaux
Le outputConfig champ de la GetBatchEvaluation réponse indique un emplacement CloudWatch des journaux où les résultats par session et par évaluateur sont écrits sous forme d'événements. OpenTelemetry
{ "outputConfig": { "cloudWatchConfig": { "logGroupName": "/aws/bedrock-agentcore/evaluations/batch", "logStreamName": "12345678-1234-1234-1234-123456789012" } } }
Chaque événement du flux de log contient des informations détaillées par tour et par évaluateur :
| Champ | Description |
|---|---|
|
|
Score numérique pour ce tour. |
|
|
Libellé catégorique (par exemple, |
|
|
LLM-generated raisonnement à l'origine du score. |
Pour lire ces événements, utilisez l'API CloudWatch Logs :
import boto3 logs_client = boto3.client("logs", region_name="us-west-2") response = logs_client.get_log_events( logGroupName="/aws/bedrock-agentcore/evaluations/batch", logStreamName="12345678-1234-1234-1234-123456789012", ) for event in response["events"]: print(event["message"])
Interprétation des partitions
Les scores d'évaluation par lots suivent les mêmes conventions que les évaluations à la demande :
-
Scores numériques (
value) : La plage dépend de l'évaluateur. La plupart des évaluateurs intégrés obtiennent un score de 0 à 1, la valeur la plus élevée étant la meilleure. -
Labels (
label) : Descriptions catégoriques de la partition. Par exemple,Builtin.Helpfulnessrenvoie des libellés tels queVery Helpful,Somewhat Helpful,Not Helpful.
Gestion des erreurs
Job-level erreurs
Si la tâche d'évaluation par lots échoue complètement, status il existe FAILED et errorDetails contient un ou plusieurs messages d'erreur décrivant le problème. Causes courantes :
-
Aucune session n'a été trouvée dans la source spécifiée.
-
Nom de groupe de CloudWatch journaux ou de service non valide.
Session-level erreurs
Les sessions individuelles peuvent échouer alors que l'ensemble de la tâche est couronné de succès. Le numberOfSessionsFailed décompte evaluationResults indique le nombre de sessions comportant des erreurs. Per-session les erreurs sont enregistrées dans la sortie CloudWatch des journaux.
Evaluator-level erreurs
Au cours d'une session évaluée avec succès, les évaluateurs individuels peuvent échouer. Le totalFailed décompte sur le résumé de chaque évaluateur indique le nombre de sessions que l'évaluateur n'a pas pu noter. Les causes courantes incluent des travées mal formées ou l'absence d'attributs requis.
Comparaison des résultats entre les essais
Un flux de travail courant consiste à exécuter une évaluation par lots avant et après une modification (mise à jour rapide, échange de modèle, modification d'outil) et à comparer les scores agrégés :
# After running two batch evaluations baseline = client.get_batch_evaluation(batchEvaluationId=baseline_id) treatment = client.get_batch_evaluation(batchEvaluationId=treatment_id) baseline_summaries = { s["evaluatorId"]: s["statistics"]["averageScore"] for s in baseline["evaluationResults"]["evaluatorSummaries"] } treatment_summaries = { s["evaluatorId"]: s["statistics"]["averageScore"] for s in treatment["evaluationResults"]["evaluatorSummaries"] } print(f"{'Evaluator':<35} {'Baseline':>10} {'Treatment':>10} {'Delta':>10}") print("=" * 67) for eid in baseline_summaries: b = baseline_summaries[eid] t = treatment_summaries.get(eid, 0) delta = t - b print(f"{eid:<35} {b:>10.4f} {t:>10.4f} {delta:>+10.4f}")
Affichage des résultats depuis la CLI
Outre l'GetBatchEvaluationAPI, la AgentCore CLI affiche les mêmes résultats :
-
agentcore view batch-evaluation <batch-evaluation-id>— afficher une seule tâche et ses résultats (ajouter--jsonpour la sortie brute). -
agentcore batch-evaluations history— liste les tâches d'évaluation par lots (les tâches en cours sont actualisées depuis le service ; ajoutez--json). -
agentcore run batch-evaluation … --json— renvoie le mêmeevaluatorSummariesobjetbatchEvaluationIdevaluationResults//indiqué dans l'exemple JSON ci-dessus.
# View a single batch evaluation job and its results agentcore view batch-evaluation 12345678-1234-1234-1234-123456789012 --json # List batch evaluation jobs (running jobs are refreshed from the service) agentcore batch-evaluations history --json
Note
L'indicateur de commande d'exécution pour sélectionner les évaluateurs est -e, --evaluator <ids…> (ou--evaluator-arn <arns…>).