Evaluaciones
Introducción
¿Qué es una evaluación?
Las evaluaciones son una técnica fundamental para garantizar que tus flujos de trabajo de IA sean fiables y estables. Determinan si tu producto de IA se queda en una frágil prueba de concepto o se convierte en un flujo de trabajo listo para producción capaz de funcionar de forma consistente. Son esenciales tanto durante la fase de construcción como después del despliegue en entornos productivos.
En esencia, una evaluación consiste en pasar un conjunto de datos de prueba a tu flujo de trabajo. Este conjunto contiene múltiples casos de prueba, cada uno con entradas de ejemplo para el flujo de trabajo y, normalmente, también con salidas esperadas.
Mediante las evaluaciones puedes:
- Probar tu flujo de trabajo con entradas diversas para comprender su comportamiento en situaciones límite.
- Realizar cambios con confianza, evitando introducir errores no intencionados en otras partes del sistema.
- Comparar el rendimiento entre distintos modelos o prompts.
El siguiente vídeo explica qué es una evaluación, por qué es útil y cómo funciona:
¿Por qué necesitas evaluaciones?
Los modelos de IA son fundamentalmente distintos al código tradicional. El código es determinista y podemos razonar sobre él. En cambio, los modelos de lenguaje grandes (LLM, por sus siglas en inglés) son "cajas negras", lo que dificulta su análisis. Por eso, debes medir su rendimiento introduciendo datos y observando sus salidas.
Solo tras probar el modelo con una variedad de entradas que reflejen fielmente todos los casos límite que podrían surgir en producción podrás tener confianza en su estabilidad.
Dos tipos de evaluación
Evaluación ligera (antes del despliegue)
Crear un conjunto de datos limpio y exhaustivo es difícil. Durante las primeras fases de desarrollo, suele ser suficiente generar solo unos pocos ejemplos. Estos te permiten iterar rápidamente en tu flujo de trabajo hasta alcanzar un estado publicable (o al menos de prueba de concepto). Puedes comparar visualmente los resultados y hacerte una idea inicial sobre la calidad del flujo sin necesidad de métricas formales.
Evaluación basada en métricas (después del despliegue)
Una vez desplegado el flujo de trabajo, resulta más fácil construir conjuntos de datos más ricos y representativos a partir de los registros reales de ejecución en producción. Cuando descubres un error, puedes añadir la entrada que lo provocó a tu conjunto de datos. Al corregir ese error, resulta fundamental volver a ejecutar todo el conjunto de datos: esto constituye una prueba de regresión, que verifica que la corrección no haya afectado negativamente otras funcionalidades.
Dado que el número de casos de prueba puede ser muy elevado, no es viable revisarlos uno por uno. Por eso, las evaluaciones utilizan métricas (valores numéricos que representan características específicas) para medir la calidad de las salidas y permitirte hacer un seguimiento de cómo cambia esa calidad entre distintas ejecuciones.
Comparación entre ambos tipos de evaluación
| Evaluación ligera (antes del despliegue) | Evaluación basada en métricas (después del despliegue) | |
|---|---|---|
| Magnitud de la mejora por iteración | Grande | Pequeña |
| Tamaño del conjunto de datos | Pequeño | Grande |
| Origen del conjunto de datos | Generado manualmente / Generado por IA / Otros | Registros de ejecución en producción / Generado por IA / Otros |
| Salida obtenida | Obligatoria | Obligatoria |
| Salida esperada | Opcional | Normalmente obligatoria |
| Métricas de evaluación | Opcional | Obligatoria |
Más información
- Evaluación ligera: ideal durante el desarrollo para evaluar tu flujo de trabajo de IA con casos de prueba seleccionados manualmente.
- Evaluación basada en métricas: adecuada para evaluaciones avanzadas en entornos productivos, donde se utilizan puntuaciones y métricas sobre grandes conjuntos de datos para mantener el rendimiento y la corrección.
- Consejos y problemas comunes: aprende a configurar casos de evaluación específicos y a evitar errores frecuentes.