En este documento, se describe cómo usar la evaluación de agentes para medir y mejorar el rendimiento, la seguridad y la calidad de tus agentes.
Para obtener más información sobre la evaluación de modelos, consulta Descripción general del servicio de evaluación de IA generativa.
Resumen del procedimiento
| Fase | Actividad | Objetivo |
|---|---|---|
| Diseño | Define casos de evaluación | Especifica las tareas del agente y los resultados esperados. |
| Ejecución | Ejecuta inferencias | Genera seguimientos de conversaciones simuladas o del mundo real. |
| Puntuación | Calcula métricas | Califica los seguimientos con evaluadores automatizados (éxito de la tarea, seguridad). |
| Define mejor tus redes | Optimiza el agente | Propón y verifica mejoras en las instrucciones o herramientas. |
Proceso de evaluación
La evaluación sigue un flujo de trabajo estructurado e iterativo:
- Define casos de evaluación: Un caso de evaluación es una especificación que define la tarea de un agente. Un caso de evaluación puede incluir uno o varios pasos de conversación, el contexto de la conversación (el estado del agente) y una especificación para simular respuestas del usuario durante la inferencia.
- Ejecuta inferencias: La inferencia es la ejecución de un caso de evaluación. Si un caso de evaluación contiene un plan de conversación, las respuestas del usuario se simulan durante la inferencia.
- Genera seguimientos: Cada ejecución de inferencia captura el comportamiento del agente en un seguimiento. Un seguimiento es un registro inmutable y factual del comportamiento del agente, incluidas las entradas del modelo, las respuestas y las llamadas a herramientas.
- Calcula métricas: Las métricas son puntuaciones calculadas para cada seguimiento con evaluadores integrados o personalizados. Algunas métricas, como Coincidencia exacta, se basan en referencias y requieren un caso de evaluación con una respuesta de referencia. Otras, como Utilidad, no tienen referencias y evalúan el seguimiento por sí solas. Esta evaluación automatizada te permite calificar los seguimientos capturados del tráfico de producción o los registros externos, independientemente de un entorno de prueba administrado.
- Realiza análisis: Analiza métricas, rúbricas y veredictos para identificar problemas clave del agente, vincular los problemas del agente a los casos de prueba y generar estadísticas para mejorar.
- Optimiza el agente: Usa la optimización para administrar todo el ciclo de evaluación. Este proceso automatizado analiza los resultados, propone mejoras al agente y vuelve a ejecutar el proceso de forma iterativa para verificar las ganancias de rendimiento.
Flujo de trabajo de evaluación
Puedes integrar la evaluación en dos etapas principales de tu flujo de trabajo:
- Iteración de desarrollo local: Evalúa un agente basado en el Kit de desarrollo de agentes (ADK) de forma local para iterar rápidamente en la ingeniería de instrucciones y las configuraciones de herramientas.
- Evaluación de agentes implementados: Mide la calidad de los agentes implementados analizando seguimientos históricos o ejecutando comparativas sintéticas en comparación con los extremos del agente.
Capacidades principales
La evaluación de agentes te ayuda a crear un conjunto de evaluación inicial, incluso sin datos de prueba existentes. Las siguientes funciones ayudan a automatizar el proceso de generación de casos de prueba y a definir mejor tus sistemas de agentes:
Generación de situaciones y simulación de usuarios: Genera automáticamente situaciones de prueba sintéticas diversas y de varios turnos en función de las instrucciones y las definiciones de herramientas de tu agente. Esta automatización te permite comenzar a realizar pruebas de inmediato, ya que elimina la necesidad de crear casos de prueba iniciales de forma manual.
Simulación de entorno: Intercepta llamadas a herramientas específicas para insertar comportamientos personalizados, datos simulados o errores simulados (como errores HTTP 503 errores o picos de latencia). Esta simulación te permite validar la resiliencia del agente sin afectar los backends de producción.
Evaluación de varios turnos: Evalúa automáticamente historiales de conversaciones completos con evaluadores automáticos de varios turnos. Estos evaluadores analizan la extracción de intents, generan rúbricas de forma dinámica y proporcionan veredictos de validación objetivos para garantizar el cumplimiento de las instrucciones.
Optimización de instrucciones: Genera y valida de forma programática instrucciones del sistema definidas con la optimización de instrucciones. El framework de optimización identifica los puntos de falla y propone de forma iterativa actualizaciones segmentadas.