View a markdown version of this page

Crear una evaluación en línea - Amazon Bedrock AgentCore

Crear una evaluación en línea

La CreateOnlineEvaluationConfig API crea una nueva configuración de evaluación en línea que monitorea continuamente el desempeño de su agente mediante el tráfico en vivo. Esta operación asíncrona configura el servicio para evaluar las trazas de los agentes a medida que se generan durante el funcionamiento normal.

Al crear una evaluación en línea, se especifica un nombre de configuración único, la fuente de datos que se va a supervisar (ya sea una lista de grupos de CloudWatch registros o un punto final de agente) y una lista de evaluadores que se van a aplicar (hasta 10, combinando evaluadores integrados y personalizados). También proporciona un ARN de rol de servicio de IAM para su ejecución. El enableOnCreate parámetro es obligatorio y determina si la evaluación comienza a ejecutarse inmediatamente después de su creación (executionStatus= true) o permanece deshabilitada hasta que se habilite explícitamente (executionStatus= false).

Control del estado de ejecución

El executionStatus parámetro determina si el trabajo de evaluación procesa activamente las trazas:

  • ACTIVADO: el trabajo de evaluación se ejecuta de forma continua, procesa las trazas entrantes y genera los resultados de la evaluación.

  • DESACTIVADO: la configuración de evaluación existe, pero el trabajo está en pausa. No se procesa ni evalúa ningún rastro.

Puede controlar el estado de ejecución mediante la CLI:

# Pause a running online evaluation agentcore pause online-eval "your_config_name" # Resume a paused online evaluation agentcore resume online-eval "your_config_name"

Protección del evaluador

Al crear una configuración de evaluación con el valor executionStatus establecido enENABLED, el sistema bloquea automáticamente los evaluadores personalizados que haya seleccionado. Una vez bloqueado:

  • No se permiten modificaciones: no puede actualizar la configuración, las solicitudes ni los ajustes del evaluador. Clone un evaluador nuevo si necesita realizar cambios.

  • No se permite la eliminación: no se puede eliminar el evaluador mientras algún trabajo de evaluación lo esté utilizando (en ejecución).

Ejemplos de código para AgentCore CLI, AgentCore SDK y AWS SDK

Los siguientes ejemplos de código muestran cómo crear configuraciones de evaluación en línea utilizando diferentes enfoques de desarrollo. Elija el método que mejor se adapte a su entorno de desarrollo y a sus preferencias.

ejemplo
AgentCore CLI
  1. # Create online evaluation configuration agentcore add online-eval \ --name "your_config_name" \ --runtime "your_runtime_name" \ --evaluator "Builtin.GoalSuccessRate" "Builtin.Helpfulness" \ --sampling-rate 1.0 \ --enable-on-create

    Este comando agrega la configuración de evaluación en línea a su configuración localagentcore.json. Ejecute agentcore deploy para crearla en su AWS cuenta.

    nota

    Ejecuta esto desde el interior de un directorio de AgentCore proyecto (creado conagentcore create).

Interactive
  1. Introduzca un nombre para la configuración de evaluación en línea.

    Entrada del nombre de la configuración de evaluación en línea
  2. Seleccione los evaluadores que desee incluir. Puede elegir entre los evaluadores integrados y cualquier evaluador personalizado que haya creado.

    Lista de selección múltiple de evaluadores
  3. Establezca la frecuencia de muestreo: el porcentaje de solicitudes de los agentes que se evaluarán.

    Entrada de frecuencia de muestreo
  4. Elija si desea habilitar la evaluación automáticamente después de la implementación.

    Activar la selección al momento de la implementación
  5. Revise la configuración y pulse Entrar para confirmar.

    Revise la configuración de evaluación en línea
AgentCore SDK
  1. from bedrock_agentcore_starter_toolkit import Evaluation # Initialize the evaluation client eval_client = Evaluation() # Replace these with your actual values config_name = "YOUR_CONFIG_NAME" agent_id = "YOUR_AGENT_ID" # e.g., agent_myagent-ABC123xyz # Create online evaluation configuration config = eval_client.create_online_config( config_name=config_name, # Must use underscores, not hyphens agent_id=agent_id, # Agent ID (e.g., agent_myagent-ABC123xyz) sampling_rate=1.0, # Percentage to evaluate (0-100). 1.0 = evaluate 1% of interactions evaluator_list=["Builtin.GoalSuccessRate", "Builtin.Helpfulness"], # List of evaluator IDs config_description="Online Evaluation Config", # Optional description auto_create_execution_role=True, # Automatically creates IAM role (default: True) enable_on_create=True # Enable immediately after creation (default: True) ) print("✅ Online evaluation configuration created!") print(f"Config ID: {config['onlineEvaluationConfigId']}") print(f"Status: {config['status']}") # Save the config ID for later operations config_id = config['onlineEvaluationConfigId'] print(f"\nSaved config_id: {config_id}")
AWS SDK
  1. import boto3 # Your input log group that contains agent traces LOG_GROUP_NAME = "/aws/agentcore/test-agent-traces" # The service.name attribute from Otel SERVICE_NAME = "strands_healthcare_single_agent.DEFAULT" # The role created earlier with the required permissions for eval role_arn = f"arn:aws:iam::{ACCOUNT_ID}:role/AgentCoreEvaluationRole" client = boto3.client('bedrock-agentcore-control') create_config_response = client.create_online_evaluation_config( onlineEvaluationConfigName="strands_healthcare_agent_1", description="Continuous evaluation of a healthcare agent", rule={ "samplingConfig": {"samplingPercentage": 80.0} }, dataSourceConfig={ "cloudWatchLogs": { "logGroupNames": [LOG_GROUP_NAME], "serviceNames": [SERVICE_NAME] } }, evaluators=[{"evaluatorId":"Builtin.Helpfulness"}], evaluationExecutionRoleArn=role_arn, enableOnCreate=True )
AWS CLI
  1. aws bedrock-agentcore-control create-online-evaluation-config \ --online-evaluation-config-name "strands_healthcare_agent_1" \ --description "Continuous evaluation of a healthcare agent" \ --rule '{"samplingConfig": {"samplingPercentage": 80.0}}' \ --data-source-config '{"cloudWatchLogs": {"logGroupNames": ["/aws/agentcore/test-agent-traces"], "serviceNames": ["strands_healthcare_single_agent.DEFAULT"]}}' \ --evaluators '[{"evaluatorId": "Builtin.Helpfulness"}]' \ --evaluation-execution-role-arn "arn:aws:iam::{YOUR_ACCOUNT_ID}:role/AgentCoreEvaluationRole" \ --enable-on-create

Consola

Puede crear configuraciones de evaluación en línea mediante la interfaz visual de la AgentCore consola Amazon Bedrock. Este método proporciona formularios guiados y validaciones para ayudarle a configurar los ajustes de la evaluación.

Para crear una evaluación AgentCore en línea

  1. Abre la AgentCore consola Amazon Bedrock.

  2. En el panel de navegación izquierdo, elija Evaluación.

  3. Elija Crear configuración de evaluación.

    1. (Opcional) En Nombre de la evaluación, introduzca un nombre para la configuración de evaluación en línea.

    2. (Opcional) Para habilitar la configuración de evaluación una vez creada, seleccione la casilla de verificación situada debajo del nombre de la evaluación.

    3. (Opcional) En la descripción de la configuración de evaluación, introduzca una descripción para la configuración AgentCore de evaluación.

    4. (Opcional) Para el tiempo de espera de la sesión inactiva, introduzca una duración entre 1 y 60 minutos. El valor predeterminado es 15 minutos.

  4. En Fuente de datos, elija una de las siguientes opciones:

    1. Defina con un terminal de agente: elija un agente que haya creado anteriormente en AgentCore Runtime o cree un agente nuevo seleccionando Agentes. A continuación, elija un punto final del agente.

    2. Seleccione un grupo de CloudWatch registros: seleccione hasta 5 grupos de registros. Introduzca el nombre del servicio que utiliza su agente para la observabilidad. <agent-runtime-name>En el caso de los agentes alojados en AgentCore Runtime, el nombre del servicio sigue el formato. <agent-runtime-endpoint-name>. Para los agentes que se ejecutan fuera AgentCore de Runtime, el nombre del servicio se configura en la variable de entorno OTEL_RESOURCE_ATTRIBUTES.

  5. Para los evaluadores, seleccione hasta 10 evaluadores por configuración de evaluación, incluidos los evaluadores integrados y personalizados.

  6. (Opcional) En el caso de los filtros, añada hasta 5 filtros para identificar qué sesiones evaluar.

  7. (Opcional) Para el muestreo, elija un porcentaje entre el 0,01% y el 100% para controlar el porcentaje de sesiones que se evalúan. El valor predeterminado es el 10%.

  8. Para el rol de IAM de Amazon Bedrock, elija una de las siguientes opciones:

    1. Utilice un rol existente: seleccione un rol de servicio de IAM que ya tenga los permisos necesarios.

    2. Crear un nuevo rol: cree un nuevo rol de servicio de IAM.

  9. Elija Crear configuración de evaluación para crear la configuración de evaluación AgentCore en línea.