View a markdown version of this page

Comprendre les résultats et les résultats - Amazon Bedrock AgentCore

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

numberOfSessionsCompleted

Nombre de sessions évaluées avec succès par tous les évaluateurs.

numberOfSessionsFailed

Nombre de sessions où au moins un évaluateur a échoué.

numberOfSessionsInProgress

Nombre de sessions toujours en cours d'évaluation (0 lorsque le travail est terminé).

totalNumberOfSessions

Nombre total de sessions découvertes à partir de la source de session.

numberOfSessionsIgnored

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

evaluatorId

ID court (par exemple,Builtin.GoalSuccessRate).

statistics.averageScore

Score moyen pour toutes les sessions évaluées. La plage dépend de l'évaluateur (généralement de 0 à 1).

totalEvaluated

Nombre de sessions que cet évaluateur a notées avec succès.

totalFailed

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

gen_ai.evaluation.score.value

Score numérique pour ce tour.

gen_ai.evaluation.score.label

Libellé catégorique (par exemple,PASS,Very Helpful).

gen_ai.evaluation.explanation

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.Helpfulness renvoie 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 --json pour 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ême evaluatorSummaries objet batchEvaluationIdevaluationResults//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…​>).