¿Qué es InstructLab?
Con InstructLab, es más fácil personalizar los modelos de lenguaje de gran tamaño (LLM) con datos privados.
Los LLM sirven de base para la inteligencia artificial generativa, al igual que los chatbots y los asistentes de codificación. Pueden ser propietarios, como los modelos GPT de OpenAI y los modelos Claude de Anthropic, u ofrecer diversos grados de apertura respecto de los datos de preentrenamiento y las restricciones de uso, como los modelos Llama de Meta, Mistral de Mistral AI y los modelos Granite de IBM.
A menudo, los especialistas en inteligencia artificial deben adaptar los LLM preentrenados a propósitos empresariales particulares. Sin embargo, las formas de modificar un LLM tienen sus límites:
- El perfeccionamiento de un LLM para un área específica de conocimiento o habilidades suele requerir un entrenamiento costoso que utiliza muchos recursos.
- Es imposible incorporar mejoras en los LLM y, por lo tanto, no se pueden aprovechar las contribuciones de los usuarios para optimizar los modelos de forma constante.
- El perfeccionamiento de los LLM suele requerir grandes cantidades de datos generados por las personas, cuya obtención puede resultar lenta y costosa.
El enfoque de InstructLab acaba con todas esas limitaciones. Este proyecto mejora los LLM utilizando mucha menos información generada por las personas y muchos menos recursos informáticos que los que se suelen utilizar para volver a entrenar a un modelo.
Tanto el proyecto como su nombre se basan en el trabajo de IBM Research sobre el ajuste a gran escala de los chatbots, o Large-scale Alignment for chatBots (LAB). Los miembros del instituto de investigación MIT-IBM Watson AI Lab e IBM Research describen este método en un artículo de investigación que publicaron en 2024.
El proyecto InstructLab no es específico para un solo modelo, por lo que te permite ajustar el LLM que elijas con habilidades y conocimientos adicionales. Este árbol de habilidades y conocimientos se perfecciona constantemente gracias a las contribuciones, y se puede aplicar para respaldar las compilaciones regulares de los LLM mejorados.
El proyecto InstructLab prioriza las repeticiones rápidas de los procesos, y su objetivo es volver a entrenar los modelos con regularidad. Las empresas también pueden usar las herramientas de ajuste de modelos del proyecto para entrenar sus LLM privados con sus propias habilidades y conocimientos.
Funcionamiento de InstructLab
El método LAB consta de tres fases:
- Selección de datos centrada en taxonomías. El término taxonomía hace referencia a un conjunto diverso de datos de entrenamiento seleccionados por especialistas que sirven de ejemplo de las habilidades y los conocimientos nuevos que debe adquirir el modelo.
- Generación de datos sintéticos a gran escala. Luego, el modelo se usa para generar nuevos ejemplos a partir de los datos de entrenamiento originales. El método LAB reconoce que la calidad de los datos sintéticos puede variar, por lo que agrega un paso automatizado para perfeccionar las respuestas de ejemplo y garantizar que sean seguras y estén fundamentadas.
- Ajuste constante a gran escala. Por último, el modelo se vuelve a entrenar con el conjunto de datos sintéticos. El método LAB incluye dos etapas de perfeccionamiento: la de los conocimientos y la de las habilidades.
El conjunto de datos crece a través de las contribuciones de habilidades y conocimientos. Con cada incorporación, mejora la calidad del modelo que se ajusta.
Recursos de Red Hat
Diferencias entre InstructLab y otros métodos de entrenamiento de los modelos de lenguaje de gran tamaño
Comparemos InstructLab con otras formas de personalizar un LLM para que se adapte a los casos prácticos específicos de tu área.
Preentrenamiento
El preentrenamiento representa el nivel más profundo de personalización de los modelos. Permite que las empresas seleccionen los datos de entrenamiento que definirán cómo entienden ideas básicas los modelos.
Durante este paso, el LLM se entrena con billones de tokens de datos sin etiquetar para predecir el siguiente token. Este proceso es bastante lento y costoso y, a veces, requiere miles de unidades de procesamiento gráfico (GPU). El preentrenamiento de un LLM altamente funcional solo es posible para las empresas que cuentan con muchos recursos.
Ajuste
Después del preentrenamiento, los LLM se ajustan para que las respuestas sean lo más precisas y útiles que sea posible. El primer paso suele ser el ajuste de instrucciones, en el cual el modelo se entrena directamente para tareas de interés específicas.
Luego, sigue el ajuste de preferencias, que puede incluir el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF). En este paso, las personas prueban el modelo, califican sus resultados y señalan si las respuestas son las adecuadas o no. Para optimizar un modelo, el proceso de RLHF puede incluir varias rondas de retroalimentación y perfeccionamiento.
Según los investigadores, en la etapa de ajuste puede utilizarse una cantidad de datos de retroalimentación mucho menor que la del conjunto de datos de entrenamiento inicial (decenas de miles de anotaciones de personas, en comparación con los billones de tokens de datos que se necesitan para el preentrenamiento) y, aun así, habilitar las funciones latentes del modelo.
InstructLab
El método LAB surgió de la idea de que debería ser posible obtener las ventajas del ajuste de modelos a partir de conjuntos mucho más pequeños de datos generados por las personas. Un modelo de inteligencia artificial puede utilizar algunos ejemplos de las personas para generar una gran cantidad de datos sintéticos, perfeccionar esa lista para mejorar la calidad, y usar ese conjunto de datos de alta calidad para realizar más ajustes y entrenamientos. En contraste con el ajuste de instrucciones, en el que se suelen necesitar miles de ejemplos de retroalimentación humana, el LAB puede mejorar un modelo notablemente utilizando bastante menos ejemplos.
Diferencia entre InstructLab y la generación aumentada por recuperación
En pocas palabras, la diferencia radica en que InstructLab y la generación aumentada por recuperación (RAG) solucionan problemas distintos.
La RAG es un método rentable para complementar un LLM con conocimiento específico de un área que no estaba incluida en su preentrenamiento. Gracias a ella, un chatbot puede generar respuestas precisas relacionadas con un campo o sector en particular, sin necesidad de volver a entrenar el modelo.
Con RAG, los documentos de conocimiento se almacenan en una base de datos vectorial; luego, se recuperan en fragmentos y se envían al modelo como parte de las consultas de los usuarios. Esto es útil para cualquier persona que desee agregar datos propios a un LLM sin ceder el control de su información, o que necesite que el modelo acceda a la información oportuna.
Por el contrario, el método de InstructLab se basa en las contribuciones de los usuarios finales para respaldar las compilaciones regulares de la versión mejorada de un LLM. InstructLab permite agregar más conocimientos a un modelo y habilitar funciones nuevas en él.
Es posible potenciar un proceso de RAG implementando esta técnica en un modelo perfeccionado con InstructLab.
Presentación de Red Hat AI InstructLab en IBM Cloud
Red Hat AI InstructLab en IBM Cloud permite realizar contribuciones a un LLM sin necesidad de poseer ni de operar una infraestructura de hardware.
Por su cuenta, Red Hat InstructLab es un proyecto open source que simplifica el desarrollo de los LLM y permite aplicar un enfoque rentable para adaptar los modelos con menos datos y recursos.
IBM Cloud es una plataforma de nube empresarial diseñada incluso para los sectores más regulados que ofrece una nube muy resistente, segura, eficiente y que cumple con las normas.
Al combinarse, Red Hat AI InstructLab en IBM Cloud ofrece una solución flexible y rentable para simplificar, ajustar y garantizar la adaptación de los LLM a los casos prácticos únicos de tu empresa.
Introducción a la inteligencia artificial para las empresas: Guía para principiantes
Acelera tu proceso de adopción de la inteligencia artificial con Red Hat OpenShift AI y Red Hat Enterprise Linux AI. Obtén más información al respecto en esta guía para principiantes.