Por un momento, imagina un avión. ¿Qué me viene a la mente? Imaginemos ahora un Boeing 737 y un Águila pescadora V-22. Ambos son aviones diseñados para transportar carga y personas, pero tienen propósitos diferentes: uno más general (vuelos comerciales y carga), el otro muy específico (infiltración, exfiltración y misiones de reabastecimiento para fuerzas de operaciones especiales). Se ven muy diferentes porque están diseñados para diferentes actividades.
Con el auge de los LLM, hemos visto nuestros primeros modelos de ML verdaderamente de propósito general. Su generalidad nos ayuda de muchas maneras:
- El mismo equipo de ingeniería ahora puede realizar análisis de sentimiento y extracción de datos estructurados.
- Los profesionales de muchos ámbitos pueden compartir conocimientos, lo que hace posible que toda la industria se beneficie de la experiencia de los demás.
- Existe una amplia gama de industrias y trabajos en los que la misma experiencia es útil.
Pero como vemos con los aviones, la generalidad requiere una evaluación muy diferente a la de sobresalir en una tarea particular y, al final del día, el valor comercial a menudo proviene de la resolución de problemas particulares.
Esta es una buena analogía para la diferencia entre evaluaciones de modelos y tareas. Las evaluaciones de modelos se centran en la evaluación general, pero las evaluaciones de tareas se centran en evaluar el desempeño de una tarea en particular.
El término Evaluaciones de LLM se usa de manera bastante generalizada. OpenAI lanzó algunas herramientas para realizar evaluaciones LLM muy temprano, por ejemplo. La mayoría de los profesionales están más preocupados por las evaluaciones de tareas de LLM, pero esa distinción no siempre se hace claramente.
¿Cual es la diferencia?
Las evaluaciones del modelo analizan la “adaptitud general” del modelo. ¿Qué tan bien se desempeña en una variedad de tareas?
Las evaluaciones de tareas, por otro lado, están diseñadas específicamente para observar qué tan bien se adapta el modelo a su aplicación particular.
Alguien que hace ejercicio en general y está bastante en forma probablemente obtendría malos resultados contra un luchador de sumo profesional en una competencia real, y las evaluaciones de modelos no pueden compararse con las evaluaciones de tareas al evaluar sus necesidades particulares.
Las evaluaciones de modelos están diseñadas específicamente para construir y ajustar modelos generalizados. Se basan en un conjunto de preguntas que usted hace a un modelo y un conjunto de respuestas reales que utiliza para calificar las respuestas. Piense en tomar los SAT.
Si bien cada pregunta en una evaluación de modelo es diferente, generalmente existe un área general de prueba. Hay un tema o habilidad al que se dirige específicamente cada métrica. Por ejemplo, el rendimiento de HellaSwag se ha convertido en una forma popular de medir la calidad del LLM.
El HellaSwag El conjunto de datos consta de una colección de contextos y preguntas de opción múltiple donde cada pregunta tiene múltiples respuestas potenciales. Sólo una de las terminaciones es sensata o lógicamente coherente, mientras que las demás son plausibles pero incorrectas. Estas finalizaciones están diseñadas para ser un desafío para los modelos de IA, ya que requieren no solo comprensión lingüística sino también razonamiento de sentido común para elegir la opción correcta.
Aquí hay un ejemplo:
Se carga una bandeja de patatas en el horno y se retira. Se da vuelta una bandeja grande de pastel y se coloca sobre la encimera. una bandeja grande de carne
A. se coloca sobre una patata asada
B. ls, y los encurtidos se colocan en el horno.
C. se prepara y luego un ayudante lo saca del horno cuando esté listo.
Otro ejemplo es MMLU. MMLU presenta tareas que abarcan múltiples materias, incluidas ciencias, literatura, historia, ciencias sociales, matemáticas y dominios profesionales como derecho y medicina. Esta diversidad de temas tiene como objetivo imitar la amplitud de conocimiento y comprensión que requieren los estudiantes humanos, lo que la convierte en una buena prueba de la capacidad de un modelo para manejar desafíos multifacéticos de comprensión del lenguaje.
A continuación se muestran algunos ejemplos: ¿puedes resolverlos?
¿Para cuál de los siguientes procesos termodinámicos el aumento de la energía interna de un gas ideal es igual al calor añadido al gas?
A. Temperatura constante
B. Volumen constante
C. Presión constante
D. adiabático
El Tabla de clasificación de cara abrazada Es quizás el lugar más conocido para obtener este tipo de evaluaciones de modelos. La tabla de clasificación rastrea modelos de lenguajes grandes de código abierto y realiza un seguimiento de muchas métricas de evaluación de modelos. Este suele ser un excelente lugar para comenzar a comprender la diferencia entre los LLM de código abierto en términos de su desempeño en una variedad de tareas.
Los modelos multimodales requieren aún más evaluaciones. El papel geminis demuestra que la multimodalidad introduce una serie de otros puntos de referencia como VQAv2, que prueba la capacidad de comprender e integrar información visual. Esta información va más allá del simple reconocimiento de objetos para interpretar acciones y relaciones entre ellos.
De manera similar, existen métricas para información de audio y video y cómo integrarlas entre modalidades.
El objetivo de estas pruebas es diferenciar entre dos modelos o dos instantáneas diferentes de un mismo modelo. Elegir un modelo para su aplicación es importante, pero es algo que se hace una vez o, como mucho, con muy poca frecuencia.
El problema mucho más frecuente se resuelve mediante evaluaciones de tareas. El objetivo de las evaluaciones basadas en tareas es analizar el desempeño del modelo utilizando LLM como juez.
- ¿Su sistema de recuperación obtuvo los datos correctos?
- ¿Hay alucinaciones en tus respuestas?
- ¿El sistema respondió preguntas importantes con respuestas relevantes?
Algunos pueden sentirse un poco inseguros acerca de que un LLM evalúe otros LLM, pero tenemos humanos evaluando a otros humanos todo el tiempo.
La verdadera distinción entre evaluaciones de modelos y tareas es que para una evaluación de modelo hacemos muchas preguntas diferentes, pero para una evaluación de tarea la pregunta sigue siendo la misma y son los datos los que cambiamos. Por ejemplo, supongamos que está operando un chatbot. Podría utilizar su evaluación de tareas en cientos de interacciones con clientes y preguntar: “¿Hay una alucinación aquí? La pregunta sigue siendo la misma en todas las conversaciones.
Existen varias bibliotecas destinadas a ayudar a los profesionales a crear estas evaluaciones: ragas, Fénix (divulgación completa: el autor lidera el equipo que desarrolló Phoenix), AbiertoAI, LlamaIndex.
¿Cómo trabajan?
La evaluación de tareas califica el rendimiento de cada salida de la aplicación en su conjunto. Veamos lo que se necesita para armar uno.
Estableciendo un punto de referencia
La base se basa en establecer un punto de referencia sólido. Esto comienza con la creación de un conjunto de datos de oro que refleje con precisión los escenarios que encontrará el LLM. Este conjunto de datos debe incluir etiquetas de verdad sobre el terreno (a menudo derivadas de una revisión humana meticulosa) que sirvan como estándar de comparación. Sin embargo, no se preocupe, normalmente puede salirse con la suya con docenas o cientos de ejemplos aquí. Seleccionar el LLM adecuado para la evaluación también es fundamental. Si bien puede diferir del LLM principal de la aplicación, debe alinearse con los objetivos de rentabilidad y precisión.
Elaboración de la plantilla de evaluación
El corazón del proceso de evaluación de tareas es la plantilla de evaluación. Esta plantilla debe definir claramente la entrada (por ejemplo, consultas y documentos de los usuarios), la pregunta de evaluación (por ejemplo, la relevancia del documento para la consulta) y los formatos de salida esperados (relevancia binaria o multiclase). Es posible que sea necesario realizar ajustes en la plantilla para capturar matices específicos de su aplicación, garantizando que pueda evaluar con precisión el desempeño del LLM en comparación con el conjunto de datos de referencia.
A continuación se muestra un ejemplo de una plantilla para evaluar una tarea de preguntas y respuestas.
You are given a question, an answer and reference text. You must determine whether the given answer correctly answers the question based on the reference text. Here is the data:
[BEGIN DATA]
************
[QUESTION]: {input}
************
[REFERENCE]: {reference}
************
[ANSWER]: {output}
[END DATA]
Your response should be a single word, either "correct" or "incorrect", and should not contain any text or characters aside from that word.
"correct" means that the question is correctly and fully answered by the answer.
"incorrect" means that the question is not correctly or only partially answered by the answer.
Métricas e iteración
Ejecutar la evaluación en su conjunto de datos dorado le permite generar métricas clave como exactitud, precisión, recuperación y puntuación F1. Estos proporcionan información sobre la eficacia de la plantilla de evaluación y resaltan áreas de mejora. La iteración es crucial; Refinar la plantilla en función de estas métricas garantiza que el proceso de evaluación permanezca alineado con los objetivos de la aplicación sin sobreajustarse al conjunto de datos dorado.
En las evaluaciones de tareas, confiar únicamente en la precisión general es insuficiente, ya que siempre esperamos un desequilibrio de clases significativo. La precisión y el recuerdo ofrecen una visión más sólida del desempeño del LLM, enfatizando la importancia de identificar con precisión los resultados relevantes e irrelevantes. Un enfoque equilibrado de las métricas garantiza que las evaluaciones contribuyan significativamente a mejorar la solicitud de LLM.
Aplicación de evaluaciones LLM
Una vez que exista un marco de evaluación, el siguiente paso es aplicar estas evaluaciones directamente a su solicitud de LLM. Esto implica integrar el proceso de evaluación en el flujo de trabajo de la aplicación, lo que permite una evaluación en tiempo real de las respuestas del LLM a las aportaciones de los usuarios. Este circuito de retroalimentación continua es invaluable para mantener y mejorar la relevancia y precisión de la aplicación a lo largo del tiempo.
Evaluación a lo largo del ciclo de vida del sistema
Las evaluaciones de tareas efectivas no se limitan a una sola etapa, sino que son parte integral de todo el ciclo de vida del sistema LLM. Desde evaluaciones comparativas y pruebas de preproducción hasta evaluaciones continuas del desempeño en producción, Evaluación de maestría en Derecho garantiza que el sistema siga respondiendo a las necesidades del usuario.
Ejemplo: ¿la modelo está alucinando?
Veamos un ejemplo de alucinación con más detalle.
Dado que las alucinaciones son un problema común para la mayoría de los profesionales, existen algunos conjuntos de datos de referencia disponibles. Este es un excelente primer paso, pero a menudo necesitará tener un conjunto de datos personalizado dentro de su empresa.
El siguiente paso importante es desarrollar la plantilla de aviso. Una vez más, una buena biblioteca puede ayudarle a empezar. Anteriormente vimos una plantilla de aviso de ejemplo, aquí vemos otra específicamente para alucinaciones. Es posible que deba modificarlo para sus propósitos.
In this task, you will be presented with a query, a reference text and an answer. The answer is
generated to the question based on the reference text. The answer may contain false information, you
must use the reference text to determine if the answer to the question contains false information,
if the answer is a hallucination of facts. Your objective is to determine whether the reference text
contains factual information and is not a hallucination. A 'hallucination' in this context refers to
an answer that is not based on the reference text or assumes information that is not available in
the reference text. Your response should be a single word: either "factual" or "hallucinated", and
it should not include any other text or characters. "hallucinated" indicates that the answer
provides factually inaccurate information to the query based on the reference text. "factual"
indicates that the answer to the question is correct relative to the reference text, and does not
contain made up information. Please read the query and reference text carefully before determining
your response.[BEGIN DATA]
************
[Query]: {input}
************
[Reference text]: {reference}
************
[Answer]: {output}
************
[END DATA]
Is the answer above factual or hallucinated based on the query and reference text?
Your response should be a single word: either "factual" or "hallucinated", and it should not include any other text or characters.
"hallucinated" indicates that the answer provides factually inaccurate information to the query based on the reference text.
"factual" indicates that the answer to the question is correct relative to the reference text, and does not contain made up information.
Please read the query and reference text carefully before determining your response.
Ahora está listo para darle a su LLM de evaluación las consultas de su conjunto de datos dorado y hacer que etiquete alucinaciones. Cuando mires los resultados, recuerda que debería haber un desequilibrio de clases. Quiere realizar un seguimiento de la precisión y la recuperación en lugar de la precisión general.
Es muy útil construir una matriz de confusión y trazarla visualmente. Cuando tenga una trama de este tipo, podrá sentirse seguro sobre el desempeño de su LLM. Si el rendimiento no es de su agrado, siempre puede optimizar la plantilla de aviso.
Una vez creada la evaluación, ahora tiene una poderosa herramienta que puede etiquetar todos sus datos con precisión y recuperación conocidas. Puede usarlo para rastrear alucinaciones en su sistema tanto durante las fases de desarrollo como de producción.
Resumamos las diferencias entre evaluaciones de tareas y modelos.
En última instancia, tanto las evaluaciones de modelos como las evaluaciones de tareas son importantes para crear un sistema LLM funcional. Es importante entender cuándo y cómo aplicar cada uno. La mayoría de los profesionales dedican la mayor parte de su tiempo a evaluaciones de tareas, que proporcionan una medida del rendimiento del sistema en una tarea específica.