View a markdown version of this page

Ergebnisse und Ergebnisse verstehen - Amazon Grundgestein AgentCore

Ergebnisse und Ergebnisse verstehen

Die Ergebnisse der Batch-Auswertung bestehen aus zwei Ebenen: aggregierte Zusammenfassungen in der API-Antwort und Sitzungsdetails in CloudWatch den Protokollen.

Ergebnisse zusammenfassen

Wenn eine Batch-Auswertung abgeschlossen ist, enthält die GetBatchEvaluation Antwort ein evaluationResults Objekt mit zusammengefassten Zusammenfassungen.

Die Sitzung zählt

Feld Description

numberOfSessionsCompleted

Anzahl der Sitzungen, die von allen Gutachtern erfolgreich bewertet wurden.

numberOfSessionsFailed

Anzahl der Sitzungen, bei denen mindestens ein Evaluator ausgefallen ist.

numberOfSessionsInProgress

Anzahl der Sitzungen, die noch ausgewertet werden (0, wenn der Job abgeschlossen ist).

totalNumberOfSessions

Gesamtzahl der von der Sitzungsquelle erkannten Sitzungen.

numberOfSessionsIgnored

Anzahl der Sitzungen, die bei der Auswertung ignoriert wurden. Der Service bewertet bis zu 500 Sitzungen pro Job. Wenn mehr als 500 Sitzungen erkannt werden, wählt der Dienst die 500 letzten Sitzungen aus und ignoriert den Rest.

Per-evaluator Zusammenfassungen

Jeder Eintrag evaluatorSummaries enthält aggregierte Kennzahlen für einen Evaluator:

Feld Description

evaluatorId

Kurze ID (zum BeispielBuiltin.GoalSuccessRate).

statistics.averageScore

Durchschnittswert aller bewerteten Sitzungen. Der Bereich hängt vom Evaluator ab (normalerweise 0—1).

totalEvaluated

Anzahl der Sitzungen, die dieser Prüfer erfolgreich bewertet hat.

totalFailed

Anzahl der Sitzungen, bei denen dieser Evaluator einen Fehler zurückgegeben hat.

Beispielantwort

{ "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 Einzelheiten in den Protokollen CloudWatch

Das outputConfig Feld in der GetBatchEvaluation Antwort gibt einen Speicherort für CloudWatch Protokolle an, in den die Ergebnisse pro Sitzung und pro Evaluator als Ereignisse geschrieben werden. OpenTelemetry

{ "outputConfig": { "cloudWatchConfig": { "logGroupName": "/aws/bedrock-agentcore/evaluations/batch", "logStreamName": "12345678-1234-1234-1234-123456789012" } } }

Jedes Ereignis im Protokollstream enthält Details pro Spielzug und pro Evaluator:

Feld Description

gen_ai.evaluation.score.value

Numerische Punktzahl für diesen Spielzug.

gen_ai.evaluation.score.label

Kategorisches Etikett (zum BeispielPASS,Very Helpful).

gen_ai.evaluation.explanation

LLM-generated Begründung für die Punktzahl.

Verwenden Sie die CloudWatch Logs-API, um diese Ereignisse zu lesen:

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"])

Ergebnisse interpretieren

Die Ergebnisse der Batch-Bewertung folgen den gleichen Konventionen wie die Bewertung auf Abruf:

  • Numerische Ergebnisse (value): Der Umfang hängt vom Evaluator ab. Die meisten integrierten Evaluatoren erzielen Werte zwischen 0 und 1, wobei höher besser ist.

  • Labels (label): Kategorische Beschreibungen der Punktzahl. Builtin.HelpfulnessGibt beispielsweise Beschriftungen wieVery Helpful,Somewhat Helpful, Not Helpful zurück.

Fehlerbehandlung

Job-level Fehler

Wenn der Batch-Evaluierungsjob vollständig fehlschlägt, errorDetails enthält der status eine FAILED oder mehrere Fehlermeldungen, die beschreiben, was schief gelaufen ist. Häufige Ursachen:

  • In der angegebenen Quelle wurden keine Sitzungen gefunden.

  • Ungültiger CloudWatch Protokollgruppen- oder Dienstname.

Session-level Fehler

Einzelne Sitzungen können fehlschlagen, während der gesamte Job erfolgreich ist. Die numberOfSessionsFailed Anzahl in evaluationResults gibt an, wie viele Sitzungen Fehler aufwiesen. Per-session Fehler werden in der CloudWatch Protokollausgabe aufgezeichnet.

Evaluator-level Fehler

Innerhalb einer erfolgreich evaluierten Sitzung können einzelne Gutachter scheitern. Die totalFailed Anzahl in der Zusammenfassung der einzelnen Prüfer gibt an, wie viele Sitzungen der Prüfer nicht bewerten konnte. Zu den häufigsten Ursachen gehören falsch formatierte Bereiche oder fehlende erforderliche Attribute.

Vergleich der Ergebnisse verschiedener Läufe

Ein gängiger Arbeitsablauf besteht darin, vor und nach einer Änderung (sofortige Aktualisierung, Modellwechsel, Werkzeugänderung) eine Batch-Auswertung durchzuführen und die Gesamtwerte zu vergleichen:

# 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}")

Ergebnisse über die CLI anzeigen

Zusätzlich zur GetBatchEvaluation API liefert die AgentCore CLI dieselben Ergebnisse:

  • agentcore view batch-evaluation <batch-evaluation-id>— einen einzelnen Job und seine Ergebnisse anzeigen (--jsonfür die Rohausgabe hinzufügen).

  • agentcore batch-evaluations history— listet Batch-Evaluierungsjobs auf (laufende Jobs werden vom Service aktualisiert; hinzufügen--json).

  • agentcore run batch-evaluation …​ --json— gibt dasselbebatchEvaluationId//evaluationResults//evaluatorSummariesObjekt zurück, das im obigen JSON-Beispiel gezeigt wurde.

# 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
Anmerkung

Das Run-Befehlsflag für die Auswahl von Evaluatoren ist -e, --evaluator <ids…​> (oder--evaluator-arn <arns…​>).