View a markdown version of this page

Entendendo os resultados e a produção - Amazon Bedrock AgentCore

Entendendo os resultados e a produção

Os resultados da avaliação em lote vêm em duas camadas: resumos agregados na resposta da API e detalhes por sessão nos registros. CloudWatch

Resultados agregados

Quando uma avaliação em lote é concluída, a GetBatchEvaluation resposta inclui um evaluationResults objeto com resumos agregados.

Contagens de sessões

Campo Description

numberOfSessionsCompleted

Número de sessões avaliadas com sucesso por todos os avaliadores.

numberOfSessionsFailed

Número de sessões em que pelo menos um avaliador falhou.

numberOfSessionsInProgress

Número de sessões ainda sendo avaliadas (0 quando o trabalho estiver concluído).

totalNumberOfSessions

Número total de sessões descobertas na origem da sessão.

numberOfSessionsIgnored

Número de sessões ignoradas para avaliação. O serviço avalia até 500 sessões por trabalho. Se mais de 500 sessões forem descobertas, o serviço selecionará as 500 sessões mais recentes e ignorará o restante.

Per-evaluator resumos

Cada entrada evaluatorSummaries fornece métricas agregadas para um avaliador:

Campo Description

evaluatorId

ID abreviado (por exemplo,Builtin.GoalSuccessRate).

statistics.averageScore

Pontuação média em todas as sessões avaliadas. O intervalo depende do avaliador (normalmente 0—1).

totalEvaluated

Número de sessões que esse avaliador pontuou com sucesso.

totalFailed

Número de sessões em que esse avaliador retornou um erro.

Exemplo de resposta

{ "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 detalhe em CloudWatch Logs

O outputConfig campo na GetBatchEvaluation resposta especifica um local de CloudWatch registros em que os resultados por sessão e por avaliador são gravados como eventos. OpenTelemetry

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

Cada evento no fluxo de registros contém detalhes por turno e por avaliador:

Campo Description

gen_ai.evaluation.score.value

Pontuação numérica para este turno.

gen_ai.evaluation.score.label

Rótulo categórico (por exemplo,PASS,Very Helpful).

gen_ai.evaluation.explanation

LLM-generated raciocínio para a pontuação.

Para ler esses eventos, use a 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"])

Interpretando pontuações

As pontuações da avaliação em lote seguem as mesmas convenções da avaliação sob demanda:

  • Pontuações numéricas (value): o intervalo depende do avaliador. A maioria dos avaliadores integrados pontuam de 0 a 1, onde quanto maior, melhor.

  • Rótulos (label): descrições categóricas da pontuação. Por exemplo, Builtin.Helpfulness retorna rótulos comoVery Helpful,Somewhat Helpful,Not Helpful.

Tratamento de erros

Job-level erros

Se o trabalho de avaliação em lote falhar completamente, ele status é FAILED e errorDetails contém uma ou mais mensagens de erro descrevendo o que deu errado. Causas comuns:

  • Nenhuma sessão foi encontrada na fonte especificada.

  • Grupo de CloudWatch registros ou nome de serviço inválido.

Session-level erros

Sessões individuais podem falhar enquanto o trabalho geral é bem-sucedido. A numberOfSessionsFailed contagem evaluationResults indica quantas sessões tiveram erros. Per-session os erros são registrados na saída de CloudWatch registros.

Evaluator-level erros

Em uma sessão avaliada com sucesso, avaliadores individuais podem falhar. A totalFailed contagem no resumo de cada avaliador indica quantas sessões esse avaliador não conseguiu pontuar. As causas comuns incluem extensões malformadas ou atributos obrigatórios ausentes.

Comparando os resultados entre as execuções

Um fluxo de trabalho comum é executar a avaliação em lote antes e depois de uma alteração (atualização imediata, troca de modelo, modificação da ferramenta) e comparar as pontuações agregadas:

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

Visualizando resultados da CLI

Além da GetBatchEvaluation API, a AgentCore CLI apresenta os mesmos resultados:

  • agentcore view batch-evaluation <batch-evaluation-id>— visualize um único trabalho e seus resultados (adicione --json para a saída bruta).

  • agentcore batch-evaluations history— listar trabalhos de avaliação em lote (os trabalhos em execução são atualizados a partir do serviço; adicionar--json).

  • agentcore run batch-evaluation …​ --json— retorna o mesmo evaluatorSummaries objeto batchEvaluationIdevaluationResults//mostrado no exemplo JSON acima.

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

O sinalizador de comando run para selecionar avaliadores é -e, --evaluator <ids…​> (ou--evaluator-arn <arns…​>).