Requisitos previos
Antes de poder ejecutar las evaluaciones por lotes, asegúrese de que se cuenta con lo siguiente.
Requisitos del agente
-
Un agente implementado en AgentCore Runtime con la observabilidad habilitada o un agente creado con un marco compatible configurado con AgentCore Observabilidad. Marcos compatibles:
-
Strands Agents
-
LangGraph con
opentelemetry-instrumentation-langchainoopeninference-instrumentation-langchain
-
-
La búsqueda de transacciones está habilitada en CloudWatch (obligatoria cuando se usa CloudWatch como fuente de sesión).
-
Sesiones de agente con datos de telemetría en CloudWatch los registros. Llame a su agente y espere de 2 a 5 minutos CloudWatch a que ingiera la telemetría antes de iniciar una evaluación por lotes.
AWS credenciales y permisos
La evaluación por lotes se realiza con las credenciales de la persona que llama. A diferencia de la evaluación en línea, la evaluación por lotes no requiere una función de ejecución de servicios independiente. El servicio utiliza su identidad de IAM para acceder a CloudWatch los registros para detectar las sesiones y escribir los resultados de las evaluaciones.
AWS credenciales configuradas con permisos para los siguientes servicios:
-
bedrock-agentcore— para iniciar, obtener, enumerar, detener y eliminar las evaluaciones por lotes -
logs(CloudWatch Registros): para leer los intervalos de sesión y escribir los resultados de las evaluaciones
Permisos de IAM necesarios
La siguiente política de IAM otorga los permisos mínimos necesarios para ejecutar evaluaciones por lotes:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock-agentcore:StartBatchEvaluation", "bedrock-agentcore:GetBatchEvaluation", "bedrock-agentcore:ListBatchEvaluations", "bedrock-agentcore:StopBatchEvaluation", "bedrock-agentcore:DeleteBatchEvaluation" ], "Resource": "arn:aws:bedrock-agentcore:*:*:batch-evaluate/*" }, { "Sid": "ReadAgentLogs", "Effect": "Allow", "Action": [ "logs:GetLogEvents", "logs:FilterLogEvents", "logs:StartQuery", "logs:GetQueryResults" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/bedrock-agentcore/runtimes/*", "arn:aws:logs:*:*:log-group:/aws/bedrock-agentcore/evaluations/*" ] }, { "Sid": "BedrockInvokeForCustomEvaluators", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*", "arn:aws:bedrock:*:*:inference-profile/*" ] } ] }
nota
La BedrockInvokeForCustomEvaluators declaración solo es obligatoria si utiliza un evaluador personalizado que invoca los modelos de Amazon Bedrock. Puede omitirlo cuando utilice únicamente los evaluadores integrados.
Requisitos de SDK y CLI
-
AWS SDK (boto3): Python 3.10 o posterior.
-
AgentCore CLI: ejecute
agentcore --versionpara comprobar su versión.
nota
La superficie CLI de evaluación por lotes consta de los siguientes comandos:
-
agentcore run batch-evaluation— iniciar una evaluación de lotes -
agentcore stop batch-evaluation -i <id>— detener una evaluación de lotes en ejecución -
agentcore view batch-evaluation [id]yagentcore batch-evaluations history— ver un trabajo o enumerar los trabajos -
agentcore archive batch-evaluation -i <id>— archivar un registro de trabajos de evaluación de lotes en el servicio y borrar el historial local
La acción de bedrock-agentcore:DeleteBatchEvaluation IAM está respaldada por el archive batch-evaluation comando de la CLI; no hay ningún verbo delete CLI literal.