LLM: Ajuste, destilación e ingeniería de instrucciones

En la unidad anterior, se describieron los LLM de uso general, conocidos como los siguientes:

  • LLM de Foundation
  • LLMs base
  • LLMs previamente entrenados

Un LLM de base se entrena con suficiente lenguaje natural para “saber” una cantidad notable sobre gramática, palabras y modismos. Un modelo de lenguaje de base puede generar oraciones útiles sobre los temas en los que se entrena. Además, un LLM de base puede realizar ciertas tareas tradicionalmente llamadas "creativas", como escribir poesía. Sin embargo, el resultado de texto generativo de un LLM de base no es una solución para otros tipos de problemas comunes de AA, como la regresión o la clasificación. Para estos casos de uso, un LLM de base puede funcionar como una plataforma en lugar de una solución.

Para transformar un LLM de base en una solución que satisfaga las necesidades de una aplicación, se requiere un proceso llamado ajuste. Un proceso secundario llamado destilación genera una versión más pequeña (con menos parámetros) del modelo ajustado.

Ajuste

Las investigaciones muestran que las capacidades de reconocimiento de patrones de los modelos de lenguaje de base son tan potentes que a veces requieren relativamente poco entrenamiento adicional para aprender tareas específicas. Ese entrenamiento adicional ayuda al modelo a realizar mejores predicciones sobre una tarea específica. Este entrenamiento adicional, llamado ajuste fino, desbloquea el lado práctico de un LLM.

El ajuste fino se entrena con ejemplos específicos para la tarea que realizará tu aplicación. A veces, los ingenieros pueden ajustar un LLM de base en solo unos cien o unos pocos miles de ejemplos de entrenamiento.

A pesar de la cantidad relativamente pequeña de ejemplos de entrenamiento, el ajuste fino estándar suele ser costoso en términos de procesamiento. Esto se debe a que el ajuste fino estándar implica actualizar el peso y el sesgo de cada parámetro en cada iteración de backpropagation. Por suerte, un proceso más inteligente, llamado ajuste eficiente de parámetros, puede ajustar un LLM ajustando solo un subconjunto de parámetros en cada iteración de propagación inversa.

Por lo general, las predicciones de un modelo ajustado son mejores que las del LLM de base. Sin embargo, un modelo ajustado contiene la misma cantidad de parámetros que el LLM de base. Por lo tanto, si un LLM de base contiene diez mil millones de parámetros, la versión ajustada también contendrá diez mil millones de parámetros.

Extracción

La mayoría de los LLM ajustados contienen una enorme cantidad de parámetros. En consecuencia, los LLM de base requieren enormes recursos computacionales y ambientales para generar predicciones. Ten en cuenta que grandes porciones de esos parámetros suelen ser irrelevantes para una aplicación específica.

La destilación crea una versión más pequeña de un LLM. El LLM destilado genera predicciones mucho más rápido y requiere menos recursos computacionales y ambientales que el LLM completo. Sin embargo, las predicciones del modelo sintetizado, por lo general, no son tan buenas como las del LLM original. Recuerda que los LLM con más parámetros casi siempre generan mejores predicciones que los LLM con menos parámetros.

Ingeniería de instrucciones

La ingeniería de instrucciones permite que los usuarios finales de un LLM personalicen la salida del modelo. Es decir, los usuarios finales aclaran cómo debe responder el LLM a su instrucción.

Los humanos aprenden bien de los ejemplos. Los LLM también lo hacen. Mostrar un ejemplo a un LLM se llama instrucción con un solo ejemplo. Por ejemplo, supongamos que deseas que un modelo use el siguiente formato para mostrar la familia de una fruta:

El usuario ingresa el nombre de una fruta: el LLM muestra la clase de esa fruta.

Una instrucción con un solo ejemplo le muestra al LLM un solo ejemplo del formato anterior y, luego, le pide que complete una consulta basada en ese ejemplo. Por ejemplo:

peach: drupe
apple: ______

A veces, un solo ejemplo es suficiente. Si es así, el LLM genera una predicción útil. Por ejemplo:

apple: pome

En otras situaciones, un solo ejemplo no es suficiente. Es decir, el usuario debe mostrarle varios ejemplos al LLM. Por ejemplo, la siguiente instrucción contiene dos ejemplos:

plum: drupe
pear: pome
lemon: ____

Proporcionar varios ejemplos se denomina instrucciones con ejemplos limitados. Puedes pensar en las dos primeras líneas de la instrucción anterior como ejemplos de entrenamiento.

¿Puede un LLM proporcionar predicciones útiles sin ejemplos (instrucciones sin ejemplos)? A veces, pero los LLMs les gusta el contexto. Sin contexto, la siguiente instrucción sin ejemplos podría mostrar información sobre la empresa de tecnología en lugar de la fruta:

apple: _______

Inferencia sin conexión

En ocasiones, la cantidad de parámetros en un LLM es tan grande que la inferencia en línea es demasiado lenta para ser práctica en tareas del mundo real, como la regresión o la clasificación. En consecuencia, muchos equipos de ingeniería dependen de la inferencia sin conexión (también conocida como inferencia masiva o inferencia estática). En otras palabras, en lugar de responder a las consultas en el momento de la publicación, el modelo entrenado realiza predicciones con anticipación y, luego, almacena en caché esas predicciones.

No importa si un LLM tarda mucho tiempo en completar su tarea si solo tiene que realizarla una vez a la semana o una vez al mes.

Por ejemplo, la Búsqueda de Google usó un LLM para realizar inferencias sin conexión a fin de almacenar en caché una lista de más de 800 sinónimos de vacunas contra el COVID en más de 50 idiomas. Luego, la Búsqueda de Google usó la lista almacenada en caché para identificar consultas sobre vacunas en el tráfico en vivo.

Usa los LLM de manera responsable

Como cualquier tipo de aprendizaje automático, los LLM suelen compartir los siguientes sesgos:

  • Los datos con los que se entrenaron.
  • Los datos en los que se basaron.

Usa los LLM de forma justa y responsable de acuerdo con las lecciones que se presentaron antes en este curso.

Ejercicio: Comprueba tu comprensión

¿Cuál de las siguientes afirmaciones sobre los LLM es verdadera?
Un LLM destilado contiene menos parámetros que el modelo de lenguaje de base del que surgió.
Sí, la destilación reduce la cantidad de parámetros.
Un LLM ajustado contiene menos parámetros que el modelo de lenguaje básico en el que se entrenó.
Un modelo ajustado contiene la misma cantidad de parámetros que el modelo de lenguaje de base original.
A medida que los usuarios realizan más ingeniería de instrucciones, la cantidad de parámetros en un LLM aumenta.
La ingeniería de instrucciones no agrega (ni quita ni altera) parámetros de LLM.