Cómo realizar una validación integral de LLM a gran escala

y las evaluaciones son críticas para garantizar aplicaciones LLM robustas y de alto rendimiento. Sin embargo, tales temas a menudo se pasan por alto en el esquema mayor de LLM.

Imagine este escenario: tiene una consulta LLM que responde correctamente 999/1000 veces cuando se le solicite. Sin embargo, debe ejecutar un relleno en 1,5 millones de elementos para llenar la base de datos. En este escenario (muy realista), experimentarás 1500 errores Para este aviso de LLM solo. Ahora escala esto hasta 10s, si no 100 de diferentes indicaciones, y tiene un problema de escalabilidad real.

La solución es validar su salida de LLM y garantizar un alto rendimiento utilizando evaluaciones, que son temas que discutiré en este artículo.

Esta infografía destaca el contenido principal de este artículo. Discutiré la validación y la evaluación de los resultados de LLM, la puntuación cuantitativa cualitativa versus y el tratamiento de aplicaciones LLM a gran escala. Imagen de Chatgpt.

Tabla de contenido

¿Qué es la validación y evaluación de LLM?

Creo que es esencial comenzar definiendo cuáles son la validación y la evaluación de LLM, y por qué son importantes para su aplicación.

La validación de LLM se trata de validar la calidad de sus salidas. Un ejemplo común de esto es ejecutar un código que verifica si la respuesta LLM respondió a la pregunta del usuario. La validación es importante porque asegura que esté proporcionando respuestas de alta calidad, y su LLM está funcionando como se esperaba. La validación puede verse como algo que haces en tiempo real, en respuestas individuales. Por ejemplo, antes de devolver la respuesta al usuario, verifica que la respuesta sea realmente de alta calidad.

La evaluación de LLM es similar; Sin embargo, generalmente no ocurre en tiempo real. La evaluación de su salida de LLM podría, por ejemplo, implicar mirar todas las consultas de los usuarios de los últimos 30 días y evaluar cuantitativamente qué tan bien se desempeñó su LLM.

Validar y evaluar el rendimiento de su LLM es importante porque experimentará problemas con la salida de LLM. Podría, por ejemplo, ser

  • Problemas con los datos de entrada (datos faltantes)
  • Un estuche de borde que su mensaje no está equipado para manejar
  • Los datos están fuera de distribución
  • Etc.

Por lo tanto, necesita una solución robusta para manejar problemas de salida de LLM. Debe asegurarse de evitarlos con la mayor frecuencia posible y manejarlos en los casos restantes.

La ley de Murphy se adaptó a este escenario:

A gran escala, todo lo que puede salir mal, saldrá mal

Evaluaciones cualitativas vs cuantitativas

Antes de pasar a las secciones individuales sobre la realización de validación y evaluaciones, también quiero comentar sobre evaluaciones cuantitativas cualitativas vs de LLM. Cuando se trabaja con LLMS, a menudo es tentador evaluar manualmente el rendimiento de la LLM para diferentes indicaciones. Sin embargo, tales evaluaciones manuales (cualitativas) están muy sujetas a prejuicios. Por ejemplo, puede centrar la mayor parte de su atención en los casos en los que el LLM tuvo éxito y, por lo tanto, sobreestimar el rendimiento de su LLM. Tener los sesgos potenciales en mente cuando se trabaja con LLM es importante para mitigar el riesgo de sesgos que influyen en su capacidad para mejorar el modelo.

Validación de salida de LLM a gran escala

Después de ejecutar millones de llamadas de LLM, he visto muchos resultados diferentes, como el regreso de GPT-4O … o Qwen2.5 respondiendo con caracteres chinos inesperados en

Estos errores son increíblemente difíciles de detectar con la inspección manual porque generalmente ocurren en menos de 1 de 1000 llamadas de API al LLM. Sin embargo, necesita un mecanismo para atrapar estos problemas cuando ocurren en tiempo real, a gran escala. Por lo tanto, discutiré algunos enfoques para manejar estos temas.

Declaración simple if-else

La solución más simple para la validación es tener algún código que use una instrucción SIMPLE IP, que verifica la salida de LLM. Por ejemplo, si desea generar resúmenes para documentos, es posible que desee asegurarse de que la salida de LLM esté al menos por encima de alguna longitud mínima

# LLM summay validation

# first generate summary through an LLM client such as OpenAI, Anthropic, Mistral, etc. 
summary = llm_client.chat(f"Make a summary of this document {document}")

# validate the summary
def validate_summary(summary: str) -> bool:
    if len(summary) < 20:
        return False
    return True

Entonces puedes ejecutar la validación.

  • Si pasa la validación, puede continuar como de costumbre
  • Si falla, puede elegir Ignorar la solicitud o utilizar un mecanismo de reintento

Puede, por supuesto, hacer que la función Validate_Summary sea más elaborada, por ejemplo:

  • Utilización de Regex para la coincidencia de cadenas complejas
  • Usando un Biblioteca como tiktoken Para contar el número de tokens en la solicitud
  • Asegúrese de que estén presentes palabras específicas/no presentes en la respuesta
  • etc.

LLM como validador

Este diagrama resalta el flujo de una aplicación LLM que utiliza un LLM como validador. Primero ingresa el mensaje, que aquí es crear un resumen de un documento. El LLM crea un resumen de un documento y lo envía a un validador de LLM. Si el resumen es válido, devolvemos la solicitud. Sin embargo, si el resumen no es válido, podemos ignorar la solicitud o volver a intentarlo. Imagen del autor.

Un validador más avanzado y costoso está utilizando un LLM. En estos casos, utiliza otro LLM para evaluar si la salida es válida. Esto funciona porque validar la corrección suele ser una tarea más directa que generar una respuesta correcta. Usar un validador de LLM es esencialmente Utilizando a LLM como juez, un tema sobre el que he escrito otro para el artículo de Data Science aquí.

A menudo utilizo LLM más pequeños para realizar esta tarea de validación porque tienen tiempos de respuesta más rápidos, cuestan menos y aún funcionan bien, considerando que la tarea de validar es más simple que generar una respuesta correcta. Por ejemplo, si utilizo GPT-4.1 Para generar un resumen, consideraría GPT-4.1-Mini o GPT-4.1-Nano para evaluar la validez del resumen generado.

Nuevamente, si la validación tiene éxito, continúa el flujo de su aplicación, y si falla, puede ignorar la solicitud o elegir volver a intentarlo.

En el caso de validar el resumen, solicitaría que la LLM validante busque resúmenes que:

  • Son demasiado cortos
  • No se adhiera al formato de respuesta esperado (por ejemplo, Markdown)
  • Y otras reglas que pueda tener para los resúmenes generados

Evaluaciones cuantitativas de LLM

También es muy importante realizar evaluaciones a gran escala de las salidas LLM. Recomiendo ejecutar esto continuamente o en intervalos regulares. Las evaluaciones cuantitativas de LLM también son más efectivas cuando se combinan con evaluaciones cualitativas de muestras de datos. Por ejemplo, suponga que las métricas de evaluación destacan que sus resúmenes generados son más largos de lo que los usuarios prefieren. En ese caso, debe analizar manualmente los resúmenes generados y los documentos en los que se basan. Esto le ayuda a comprender el problema subyacente, lo que nuevamente hace que resolver el problema sea más fácil.

LLM como juez

Igual que con la validación, puede utilizar LLM como juez para la evaluación. La diferencia es que, si bien la validación usa LLM como juez para predicciones binarias (la salida es válida o no es válida), la evaluación lo usa para comentarios más detallados. Por ejemplo, puede recibir comentarios del juez de LLM sobre la calidad de un resumen de 1-10, lo que facilita la distinción de resúmenes de calidad media (alrededor de 4-6), de resumen de alta calidad (7+).

Nuevamente, debe considerar los costos al usar LLM como juez. Aunque puede estar utilizando modelos más pequeños, esencialmente está duplicando el número de llamadas de LLM cuando usa LLM como juez. Por lo tanto, puede considerar los siguientes cambios para ahorrar en costos:

  • Muestreo de puntos de datos, por lo que solo ejecuta LLM como juez en un subconjunto de puntos de datos
  • Agrupar varios puntos de datos en un LLM como mensaje de juez, para guardar en tokens de entrada y salida

Recomiendo detallar los criterios de evaluación al juez de LLM. Por ejemplo, debe indicar qué constituye una puntuación de 1, una puntuación de 5 y una puntuación de 10. Usar ejemplos es a menudo una excelente manera de instruir a LLMS, como se discutió en Mi artículo sobre la utilización de LLM como juez. A menudo pienso en cuán útiles son los ejemplos para mí cuando alguien está explicando un tema, y ​​por lo tanto puede imaginar lo útil que es para un LLM.

Comentarios de los usuarios

Los comentarios de los usuarios son una excelente manera de recibir métricas cuantitativas en las salidas de su LLM. Los comentarios de los usuarios pueden, por ejemplo, ser un botón de pulgar o pulgar hacia abajo, indicando si el resumen generado es satisfactorio. Si combina dichos comentarios de cientos o miles de usuarios, ¡tiene un mecanismo de retroalimentación confiable que puede utilizar para mejorar enormemente el rendimiento de su generador de resumen de LLM!

Estos usuarios pueden ser sus clientes, por lo que debe facilitarles proporcionar comentarios y alentarlos a proporcionar tantos comentarios como sea posible. Sin embargo, estos usuarios pueden ser esencialmente cualquier persona que no utilice o desarrolle su aplicación en el día a día. Es importante recordar que cualquier retroalimentación será increíblemente valioso para mejorar el rendimiento de su LLM, y realmente no le cuesta (como desarrollador de la aplicación), en cualquier momento para recopilar estos comentarios.

Conclusión

En este artículo, he discutido cómo puede realizar validación y evaluación a gran escala en su aplicación LLM. Hacer esto es increíblemente importante para garantizar que su aplicación funcione como se esperaba y para mejorar su aplicación en función de los comentarios de los usuarios. Recomiendo incorporar dichos flujos de validación y evaluación en su aplicación lo antes posible, dada la importancia de garantizar que los LLM inherentemente impredecibles puedan proporcionar valor de manera confiable en su aplicación.

También puedes leer mis artículos en Cómo comparar LLM con ARC AGI 3 y Cómo extraer sin esfuerzo información de recibo con OCR y GPT-4O Mini

👉 Encuéntrame en Socials:

🧑‍💻 Ponerse en contacto

🔗 LinkedIn

🐦 X / Twitter

✍️ Medio