View a markdown version of this page

Memahami hasil dan output - Batuan Dasar Amazon AgentCore

Memahami hasil dan output

Hasil evaluasi Batch hadir dalam dua lapisan: ringkasan agregat dalam respons API, dan detail per sesi di Log. CloudWatch

Hasil agregat

Ketika evaluasi batch selesai, GetBatchEvaluation respons mencakup evaluationResults objek dengan ringkasan agregat.

Jumlah sesi

Bidang Deskripsi

numberOfSessionsCompleted

Jumlah sesi yang berhasil dievaluasi oleh semua evaluator.

numberOfSessionsFailed

Jumlah sesi di mana setidaknya satu evaluator gagal.

numberOfSessionsInProgress

Jumlah sesi yang masih dievaluasi (0 saat pekerjaan selesai).

totalNumberOfSessions

Jumlah total sesi yang ditemukan dari sumber sesi.

numberOfSessionsIgnored

Jumlah sesi yang diabaikan untuk evaluasi. Layanan ini mengevaluasi hingga 500 sesi per pekerjaan. Jika lebih dari 500 sesi ditemukan, layanan memilih 500 sesi terbaru dan mengabaikan sisanya.

Per-evaluator ringkasan

Setiap entri evaluatorSummaries menyediakan metrik agregat untuk satu evaluator:

Bidang Deskripsi

evaluatorId

ID pendek (misalnya,Builtin.GoalSuccessRate).

statistics.averageScore

Skor rata-rata di semua sesi yang dievaluasi. Rentang tergantung pada evaluator (biasanya 0-1).

totalEvaluated

Jumlah sesi yang berhasil dinilai oleh evaluator ini.

totalFailed

Jumlah sesi di mana evaluator ini mengembalikan kesalahan.

Contoh tanggapan

{ "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 detail dalam CloudWatch Log

outputConfigBidang dalam GetBatchEvaluation respons menentukan lokasi CloudWatch Log di mana per-sesi, hasil per-evaluator ditulis sebagai peristiwa. OpenTelemetry

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

Setiap peristiwa dalam aliran log berisi detail per-putaran, per-evaluator:

Bidang Deskripsi

gen_ai.evaluation.score.value

Skor numerik untuk giliran ini.

gen_ai.evaluation.score.label

Label kategoris (misalnya,PASS,Very Helpful).

gen_ai.evaluation.explanation

LLM-generated penalaran untuk skor.

Untuk membaca peristiwa ini, gunakan API CloudWatch Log:

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

Menafsirkan skor

Skor evaluasi Batch mengikuti konvensi yang sama dengan evaluasi berdasarkan permintaan:

  • Skor numerik (value): Rentang tergantung pada evaluator. Sebagian besar evaluator bawaan mendapat skor dari 0 hingga 1, di mana lebih tinggi lebih baik.

  • Label (label): Deskripsi kategoris skor. Misalnya, Builtin.Helpfulness mengembalikan label sepertiVery Helpful,Somewhat Helpful,Not Helpful.

Penanganan kesalahan

Job-level kesalahan

Jika pekerjaan evaluasi batch gagal sepenuhnya, status is FAILED dan errorDetails berisi satu atau lebih pesan kesalahan yang menjelaskan apa yang salah. Penyebab umum:

  • Tidak ada sesi yang ditemukan di sumber yang ditentukan.

  • Grup CloudWatch log atau nama layanan tidak valid.

Session-level kesalahan

Sesi individu bisa gagal sementara pekerjaan keseluruhan berhasil. numberOfSessionsFailedHitungan dalam evaluationResults menunjukkan berapa banyak sesi memiliki kesalahan. Per-session kesalahan dicatat dalam output CloudWatch Log.

Evaluator-level kesalahan

Dalam sesi yang berhasil dievaluasi, evaluator individu dapat gagal. totalFailedHitungan pada setiap ringkasan evaluator menunjukkan berapa banyak sesi yang tidak dapat dinilai oleh evaluator. Penyebab umum termasuk bentang yang salah bentuk atau atribut yang diperlukan yang hilang.

Membandingkan hasil di seluruh proses

Alur kerja yang umum adalah menjalankan evaluasi batch sebelum dan sesudah perubahan (pembaruan cepat, pertukaran model, modifikasi alat) dan membandingkan skor agregat:

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

Melihat hasil dari CLI

Selain GetBatchEvaluation API, AgentCore CLI menampilkan hasil yang sama:

  • agentcore view batch-evaluation <batch-evaluation-id>— lihat satu pekerjaan dan hasilnya (tambahkan --json untuk output mentah).

  • agentcore batch-evaluations history— daftar pekerjaan evaluasi batch (pekerjaan yang sedang berjalan disegarkan dari layanan; tambahkan--json).

  • agentcore run batch-evaluation …​ --json— mengembalikan evaluatorSummaries objekbatchEvaluationId/evaluationResults/yang sama yang ditunjukkan pada contoh JSON di atas.

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

Bendera perintah run untuk memilih evaluator adalah -e, --evaluator <ids…​> (atau--evaluator-arn <arns…​>).