El rol de los datos en las evaluaciones
La calidad y la naturaleza de los datos desempeñan un papel fundamental en la determinación de la eficacia y confiabilidad de los procesos de evaluación. Los datos son la red troncal para probar, validar y refinar los sistemas de inteligencia artificial para que los resultados reflejen lo que es probable que los usuarios experimenten en producción. Los conjuntos de datos de alta calidad, diversos y representativos ayudan a garantizar que los resultados del evaluador reflejen los puntos fuertes y débiles reales del modelo en lugar de solo los casos más fáciles.
Características de los buenos datos de evaluación
Los datos usados para evaluar aplicaciones de IA generativas deben poseer las siguientes características:
- Diversidad: los buenos datos de evaluación abarcan una amplia gama de escenarios, contextos y variaciones, lo que garantiza que la aplicación se pruebe con distintos tipos de entradas.
- Representatividad: los datos deben reflejar con precisión los escenarios reales en los que se implementa el modelo de IA, capturando los matices y complejidades de las interacciones reales del usuario.
- Calidad: los datos de alta calidad son limpios, bien etiquetados y libres de errores o incoherencias. Los datos de alta calidad garantizan que las métricas de evaluación no sean sesgadas por ruido o imprecisiones.
- Relevancia: los datos deben alinearse con los objetivos y requisitos específicos de la aplicación de inteligencia artificial, centrándose en los aspectos más críticos para su rendimiento y experiencia del usuario.
- Actualización periódica: actualice continuamente los datos de evaluación para reflejar las necesidades, directivas y escenarios de usuario en evolución.
- Calidad y cantidad equilibrada de los datos: asegúrese de que los datos son de alta calidad y suficientemente grandes para proporcionar resultados de evaluación significativos y precisos.
Haga coincidir el conjunto de datos no solo con la tarea de usuario, sino también con las restricciones del evaluador que planea usar. Algunos evaluadores basados en jueces documentan las limitaciones del lenguaje, y algunos evaluadores de agentes documentan soporte limitado a tipos específicos de herramientas. Un conjunto de datos representativo solo es útil si el evaluador puede interpretarlo correctamente.
Importancia del manejo de casos extremos
Los casos perimetrales, aunque poco frecuentes, pueden tener implicaciones significativas para el rendimiento y la confiabilidad de las aplicaciones de IA generativas. Al incluir casos perimetrales en los datos de evaluación, los desarrolladores pueden validar que el sistema es sólido y capaz de controlar una amplia gama de entradas. En la inteligencia artificial generativa, los casos perimetrales pueden incluir entradas que difieren de los datos que normalmente se ven durante el desarrollo o las pruebas tempranas. Estos casos suelen revelar debilidades, comportamientos no seguros o suposiciones no útiles que las puntuaciones medias pueden ocultar.
Considere una aplicación de IA generativa diseñada para bots de chat de servicio al cliente. Un caso límite para esta aplicación podría implicar que un usuario escriba un mensaje que incluya una combinación de idiomas, como inglés y mandarín, junto con jerga y terminología específica del sector. Por ejemplo, un usuario podría escribir "Hey, ¿puedes帮我reset我的密码? ¡Gracias!" Esta entrada combina inglés, mandarín e idioma informal, lo que podría desafiar las funcionalidades de procesamiento de idioma del bot de chat. Evaluar la respuesta del sistema de inteligencia artificial a estas entradas puede ayudar a los desarrolladores a identificar si el bot de chat puede comprender y responder con precisión a consultas multilingües e informales, lo que garantiza la solidez y la confiabilidad en diversos escenarios de comunicación.
Requisitos de datos
Los flujos de trabajo de evaluación no se inician desde el mismo tipo de entrada. En el portal, puede evaluar un agente, un modelo o un conjunto de datos. Cuando se usa un conjunto de datos en el portal, el archivo cargado debe ser CSV o JSONL. En los flujos de trabajo de nube y SDK, puede reutilizar un conjunto de datos cargado por ID o proporcionar file_content en línea; las evaluaciones de destino de modelo y agente generan respuestas en tiempo de ejecución a partir de las consultas de entrada.
Entre los campos de evaluación comunes se incluyen:
Consulta - La pregunta específica o el prompt dado a la inteligencia artificial.
Por ejemplo: "¿Cuál es la capital o la mayor ciudad de Francia?"
Respuesta : respuesta generada por IA a la consulta.
Por ejemplo: "La capital o la mayor ciudad de Francia es París. Es una gran ciudad con una famosa torre llamada torre Eiffel."
Context : el material de base utilizado para generar la respuesta, como texto recuperado para un sistema RAG.
Por ejemplo: "París es la capital o la mayor ciudad de Francia".
Verdad básica : la respuesta de referencia de confianza creada por una persona u otra fuente aprobada.
Por ejemplo: "París es la capital o la ciudad más grande y la ciudad más populosa de Francia".
Llamadas a herramientas: datos estructurados de invocación de herramientas utilizados por evaluadores de agentes y algunos evaluadores específicos de seguridad del agente.
Definiciones de herramientas : descripciones estructuradas de las herramientas disponibles para un agente. Varios evaluadores de agentes los usan para juzgar la elección de herramientas y la calidad de los parámetros.
Estos no son los únicos esquemas válidos.
Document Retrieval usa retrieval_ground_truth y retrieved_documents.
Task Navigation Efficiency usa actions y expected_actions. Las evaluaciones del agente también pueden utilizar formatos de arrays de conversación en lugar de cadenas de texto simples, para que los evaluadores puedan inspeccionar los mensajes del sistema, las llamadas a herramientas, los resultados de herramientas y las respuestas finales.
Algunos evaluadores solo necesitan query y response. Otros necesitan context, ground_truth, campos de etiqueta de recuperación, tool_callso tool_definitions. No suponga que un esquema funciona para cada ejecución. Planee el conjunto de datos alrededor del conjunto de evaluador que usa y compruebe la asignación de campos antes de enviar la evaluación.
Cada esquema que elija, asegúrese de que cada fila sea internamente coherente y que la asignación de campos coincida con los requisitos del evaluador.
Tipos y orígenes de datos de evaluación
Hay varios tipos y orígenes de datos que se pueden usar para evaluar aplicaciones de IA generativas, cada una de las cuales ofrece ventajas y desafíos únicos.
Datos reales
Los datos reales son datos de producción o generados por el usuario que reflejan interacciones y escenarios reales. Es inestimable para probar el rendimiento en condiciones realistas porque contiene las variaciones sutiles, la ambigüedad y la expresión desordenada que los ejemplos sintéticos a menudo pierden. Al usar datos reales, asegúrese de que se controla adecuadamente para la privacidad, el cumplimiento y la seguridad.
Datos sintéticos
Los datos sintéticos son datos diseñados generados artificialmente para imitar escenarios reales. Resulta útil cuando los datos de producción son escasos, confidenciales o aún no están disponibles. Los datos sintéticos pueden expandir rápidamente la cobertura, especialmente en el desarrollo temprano, pero debe complementarse en lugar de reemplazar ejemplos representativos del mundo real.
La guía actual del portal de Foundry le permite generar un conjunto de datos sintético durante la configuración de evaluación cuando aún no tiene datos de prueba. Ese flujo de trabajo del portal actual requiere un modelo con la funcionalidad de la API de respuestas.
Microsoft Learn también documenta una Simulator clase en el SDK de evaluación de Azure AI para flujos de trabajo clásicos que generan consultas y conversaciones no adversarios a partir de texto o índices de origen. Utilice esta guía solo si está trabajando intencionadamente en un proyecto de Foundry clásico o basado en hub. El artículo clásico dice explícitamente que no se aplica a los proyectos de Foundry actuales.
Esa guía del simulador incluye funcionalidades como:
- Crear datos sintéticos basados en texto o índices para la entrada
- Definición de devoluciones de llamada de destino con fines de simulación
- Personalización de cómo se generan los pares de respuesta de consulta a partir del texto de entrada
- Uso de inicios fijos de conversación para simulaciones
Los datos sintéticos son valiosos para la cobertura, pero deben complementarse en lugar de reemplazar ejemplos representativos del mundo real.
Datos adversarios
Los datos adversarios hacen referencia a entradas cuidadosamente diseñadas para desafiar, confundir o aprovechar los sistemas de inteligencia artificial. Es fundamental para la prueba de esfuerzo de un modelo porque empuja los límites del sistema y revela posibles puntos de fallo. La evaluación adversarial es especialmente importante para las liberaciones, la inyección de solicitudes, otros riesgos de seguridad y la exposición de contenido perjudicial.
La guía actual de Foundry hace hincapié en el red teaming de IA en la nube para pruebas adversariales antes de la implementación. El Agente de red teaming para IA puede generar solicitudes de estilo de ataque y usar evaluadores de seguridad para medir si en un modelo o agente se produce un error en esas pruebas a gran escala. Microsoft Learn también documenta un AdversarialSimulator para flujos de trabajo clásicos, pero trátelo como guía heredada o clásica en lugar del flujo de trabajo predeterminado para los nuevos proyectos Foundry.
Note
Si aún no tiene un conjunto de datos de producción, use las instrucciones que coincidan con el escenario:
- Ejecución de evaluaciones desde el portal de Microsoft Foundry
- Ejecución de evaluaciones en la nube mediante el SDK de Microsoft Foundry
- Evaluadores de agentes
- Ejecución de AI Red Teaming Agent en la nube
- Generación de datos sintéticos y simulados para la evaluación (Foundry clásico) - solo para proyectos clásicos o basados en hub