View a markdown version of this page

Crear una evaluación en línea - Base amazónica AgentCore

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

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 asincrónica indica al servicio que evalúe los rastros de los agentes a medida que se generan durante el funcionamiento normal.

Para crear una evaluación en línea, proporcione un nombre de configuración único, elija qué desea supervisar, seleccione hasta 10 evaluadores y proporcione un ARN para la función de servicio de IAM para su ejecución. La fuente de datos puede ser los CloudWatch registros, seleccionados por los nombres exactos de los grupos de registros o prefijos de los nombres de los grupos de registros, o un punto final de agente. El enableOnCreate parámetro obligatorio controla la inicialexecutionStatus: true inicia la configuración en ENABLED y la false inicia enDISABLED.

Control del estado de ejecución

El executionStatus parámetro determina si el trabajo de evaluación procesa los rastros de forma activa:

  • HABILITADO: el trabajo de evaluación se ejecuta de forma continua, procesa los seguimientos 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 seguimiento.

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"

Seleccione los grupos de registros de entrada

Si su fuente de datos es CloudWatch Logs, dataSourceConfig.cloudWatchLogs configúrela exactamente de una de estas maneras:

  • logGroupNames— Proporcione una lista explícita de los nombres de los grupos de registros.

  • logGroupNamePrefixes— Proporcione de 1 a 5 prefijos para los nombres de los grupos de registros. El servicio evalúa los rastros de cualquier grupo de registros cuyo nombre comience por uno de esos prefijos, incluidos los grupos de registros coincidentes que se crean más adelante.

En cualquier caso, configúralo de serviceNames forma que el servicio pueda identificar los rastros de tu agente en los grupos de registros seleccionados.

Si suele logGroupNamePrefixes hacer coincidir los grupos de registros de Amazon Bedrock AgentCore Runtime, asegúrese de que su tiempo de ejecución envíe intervalos al propio grupo de registros del agente. En el caso de los agentes que aún utilizan el grupo de aws/spans registros compartido, defina el tiempo UNIFIED_TRACES_DESTINATION_ENABLED=true de ejecución. Para obtener más información, consulte Span destination para los agentes alojados en Amazon Bedrock AgentCore Runtime.

# Match input log groups by prefix instead of exact names dataSourceConfig={ "cloudWatchLogs": { "logGroupNamePrefixes": ["/aws/agentcore/my-agent-"], "serviceNames": ["my_agent.DEFAULT"] } }

Para obtener más información sobre dónde se escriben los resultados y las métricas de puntuación, incluidos los grupos de registros dedicados, personalizados y de origen, consulte Resultados y resultados.

Protección del evaluador

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

  • No se permiten modificaciones: no puede actualizar la configuración, las solicitudes o los ajustes del evaluador. Clona un evaluador nuevo si necesitas hacer cambios.

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

Ejemplos de código para la AgentCore CLI, el 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 sus preferencias y entorno de desarrollo.

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 localagentcore.json. Ejecute agentcore deploy para crearla en su AWS cuenta.

    nota

    Ejecútelo desde el directorio de un 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 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.

    Habilite 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 de Amazon Bedrock. Este método proporciona formularios guiados y validaciones para ayudarlo a configurar los ajustes de evaluación.

Para crear una evaluación AgentCore en línea

  1. Abra la AgentCore consola de Amazon Bedrock.

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

  3. Seleccione 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) Para ver 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 ver el tiempo de espera de inactividad de la sesión, introduzca una duración de 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 punto final 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. En el caso de 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:

    nota

    Si la función de administrador de funciones está habilitada en su cuenta, AgentCore la asignará automáticamente y el paso de selección de funciones que se describe aquí se sustituirá por una opción de personalización. Para usar un rol diferente, elija Personalizar. Para obtener más información, consulte Creación de roles de IAM en la Guía del usuario de IAM.

    1. Usar un rol existente: selecciona un rol de servicio de IAM que ya tenga los permisos necesarios.

    2. Crear una nueva función: cree una nueva función de servicio de IAM.

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