¿Qué es InstructLab?

Hombre sentado frente a varios monitores de ordenador

Autores

Mesh Flinders

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

¿Qué es InstructLab?

InstructLab es un método para entrenar modelos de IA que pretende mejorar significativamente los LLM utilizados en el desarrollo de aplicaciones de IA generativa.

Instruct Lab fue desarrollado por IBM investigación y RedHat, es un proyecto de código abierto, lo que significa que depende de una comunidad global de desarrolladores (conocida como la comunidad InstructLab) para construirlo y mantenerlo.

El Proyecto InstructLab se creó para dirección problemas que limitan el desarrollo de grandes modelos de lenguaje (LLMs), especialmente el coste y la complejidad de la formación y la recopilación de datos, así como la dificultad de aportar habilidades y conocimientos.

Según Forbes, InstructLab ha incrementado el rendimiento de los LLM y ha resuelto varios retos de escalado de la formación tradicional en LLM, eliminando la necesidad de que las empresas construyan y mantengan múltiples LLMs. Esto es posible en gran medida gracias a un método de entrenamiento LLM conocido como Alineación a gran escala para chatBots, o LAB, desarrollado por IBM.

¿Qué es la alineación a gran escala para chatbots (LAB)?

Los chatbots más potentes de la actualidad, como Siri, Alexa y ChatGPT, dependen de LLM preentrenados, lo que les permite aprender tareas rápidamente durante el proceso de alineación de la IA . Pero llevar la inteligencia artificial a ese nivel puede ser costoso y llevar mucho tiempo, y los modelos que surgen a menudo carecen de la profundidad necesaria para superar situaciones complejas, matizadas y similares a las humanas. Según el Instituto de Valor Empresarial de IBM, los ejecutivos esperaban que el coste medio de la informática subiera casi un 90% debido principalmente a la demanda de crear LLM para aplicación de IA generativa.

La alineación a gran escala para chatbots (LAB) es un método para generar datos de forma sintética para tareas específicas que una organización necesita que realice un chatbot. A diferencia de los métodos de entrenamiento tradicionales, permite a los chatbots asimilar rápidamente nueva información y aprender nuevas habilidades sin sobrescribir lo que ya han aprendido.  

Diseño 3D de bolas rodando por un circuito

Las últimas noticias + conocimientos de IA 


Descubra ideas y noticias de expertos sobre IA, nube y mucho más en el boletín semanal Think. 

¿Cómo funciona InstructLab?

El enfoque de InstructLab para el desarrollo y mantenimiento de modelos de lenguaje de gran tamaño (LLM) se diferencia de otros modelos en que pone el proceso firmemente en manos de una comunidad mundial de desarrolladores, un proceso conocido como IA de código abierto. Al igual que el software de código abierto permite a los desarrolladores contribuir al desarrollo del código y las características, la IA de código abierto les permite añadir nuevas habilidades y capacidades e iterar rápidamente sobre los modelos existentes.

Respaldado por el método LAB, el enfoque de InstructLab para construir LLMs se diferencia de otros en tres aspectos críticos:

  • Conservación de datos basada en taxonomía
  • Generación de datos sintéticos a gran escala
  • Ajuste de alineación a gran escala

Conservación de datos basada en taxonomía

En la formación de un LLM, la taxonomía es una estructura jerárquica que categoriza las habilidades y áreas de conocimiento crítico para la aplicación prevista de un LLM. Por ejemplo, la taxonomía de un LLM que se va a aplicar a un vehículo autónomo diferiría significativamente de uno que se aplica a la investigación médica de la misma manera que un controlador de carreras tendría que aprender habilidades diferentes a las de un médico.

Los datos de InstructLab están estructurados de tal manera que facilitan la comprensión de las habilidades y conocimientos existentes del modelo. La simplicidad de la estructura de InstructLab facilita a los desarrolladores identificar lagunas y completar conocimientos y habilidades cuando sea necesario. Esta conservación de datos basada en la taxonomía también permite orientar los modelos específicamente a nuevos casos de uso, como la investigación o una aplicación específica del Internet de las cosas (IoT), y dotarlos de las competencias adecuadas.

Con este fin, el enfoque de InstructLab se basa en gran medida en YAML ("YAML Ain't No Markup Language" o "Yet Another Markup Language"), un formato estandarizado para representar datos de una manera fácil de interpretar tanto para humanos como para máquinas. El enfoque YAML allana el camino para el siguiente paso clave en el proceso de InstructLab: la generación de datos sintéticos a gran escala.

Generación de datos sintéticos a gran escala

Una vez que se han seleccionado los datos para entrenar un modelo específico, el propio modelo está listo para generar sus propios datos a partir de los datos de entrenamiento, un proceso conocido como generación de datos sintéticos. Lo que distingue el enfoque de InstructLab en este paso en el entrenamiento de un LLM es la escala en la que se realiza y la precisión de los datos que puede generar. Basándose una vez más en el método de alineación a gran escala para chatBots (LAB), el enfoque de InstructLab añade un paso automatizado, refinando aún más las respuestas que genera el LLM para garantizar su precisión.

Los nuevos datos generados durante este paso, críticos para el entrenamiento de todos los LLM, no solo de InstructLab, se basan en lo que se conoce como modelo "maestro", un modelo más grande que genera etiquetas y datos para un modelo "estudiante" más pequeño y eficiente para aprender de.

Con el método LAB, los LLM de InstructLab en realidad no utilizan datos almacenados por el modelo del profesor, sino instrucciones específicas que aumentan exponencialmente el conjunto de datos y, al mismo tiempo, garantizan que los ejemplos generados por el modelo "estudiante" permanezcan en línea con el propósito previsto de los LLM.

Según IBM Investigación, este enfoque “genera sistemáticamente datos sintéticos para las tareas que desea que realice su chatbot, y para asimilar nuevos conocimientos y capacidades en el modelo fundacional, sin sobrescribir lo que el modelo ya ha aprendido.”

Ajuste de alineación a gran escala

En el paso final del proceso InstructLab/LAB, el LLM se vuelve a entrenar en los datos sintéticos de los que ha estado aprendiendo, refinando sus habilidades y mejorando la precisión de sus respuestas. Este último paso se divide en dos fases:

  • Ajuste del conocimiento: el ajuste del conocimiento es una formación que se centra en mejorar el conocimiento básico del LLM sobre las habilidades esenciales mediante la introducción de nuevos hechos que requieren respuestas cortas y largas y la evaluación de la precisión de esas respuestas.
  • Ajuste de habilidades: una vez completado el entrenamiento de conocimientos, el modelo se somete a un ajuste de habilidades como parte de su preparación final antes de implementarse. Durante la afinación de habilidades, el modelo entrena con muestras de datos relacionadas con habilidades específicas que le exigen (dependiendo de su propósito previsto). Por ejemplo, durante esta fase de formación, un chatbot de atención al cliente probablemente se entrenaría con miles de horas de transcripciones de consultas de clientes.
Red Hat

Habilite las capacidades de IA con Red Hat Openshift on IBM Cloud

Descubra cómo puede utilizar Red Hat OpenShift on IBM Cloud para habilitar la plataforma de operaciones de machine learning flexible y escalable con herramientas para construir, implementar y gestionar aplicaciones habilitadas para IA.

En qué se diferencia InstructLab del RAG tradicional

Los LLM formados con métodos más tradicionales suelen utilizar un proceso llamado generación aumentada por recuperación (RAG) para complementar sus conocimientos con una formación más centrada y específica del dominio. RAG es una herramienta útil para las organizaciones que necesitan agregar datos propietarios a un modelo base existente para un propósito específico sin renunciar al control de sus datos propietarios.

El método InstructLab/LAB se puede utilizar para el mismo propósito que un proceso RAG más tradicional, pero en lugar de agregar conocimientos específicos existentes, se centra más en las contribuciones de los usuarios finales de su comunidad para desarrollar conocimientos y habilidades relevantes. Las organizaciones que buscan afinar los LLM para un propósito específico pueden utilizar tanto RAG como InstructLab/LAB para lograr resultados ideales.

Infraestructura de entrenamiento de modelos de InstructLab

A medida que las aplicaciones de IA se vuelven más exigentes, los LLM que las respaldan son cada vez más grandes y complejos, y, en consecuencia, imponen exigencias más rigurosas a la infraestructura de IA subyacente. InstructLab/LAB, como todos los demás métodos avanzados de entrenamiento de modelos, depende de una infraestructura intensiva en GPUcapaz de cumplir con los puntos de referencia de rendimiento necesarios para volver a entrenar constantemente los modelos de IA de acuerdo con las contribuciones de su comunidad global de código abierto en github.com/instructlab.

Afortunadamente, IBM se dedica a proporcionar todo el almacenamiento de datos, la gestión, los flujos de trabajo y las prácticas necesarios para el éxito de los proyectos de LLM.

¿Por qué es importante InstructLab?

Hoy en día, los LLM sustentan los casos de uso de IA más interesantes, desde chatbots de IA generativa y asistentes de codificación hasta edge computing, aplicaciones de Internet de las cosas (IoT) y mucho más. Pueden ser modelos propietarios, como OpenAI y Claude, o modelos que se basen en principios de código abierto en lo que respecta a los datos de preentrenamiento que utilizan, como Mistral, Llama-2 y los modelos Granite de IBM.

InstructLab destaca por su capacidad para igualar e incluso superar el rendimiento de los modelos propietarios utilizando los disponibles públicamente. IBM watsonx, una plataforma de IA y datos diseñada para ayudar a las empresas a escalar y acelerar el impacto de la IA, confía ampliamente en ella. Por ejemplo, Merlinite-7B, un modelo reciente entrenado en LAB, superó a varios modelos propios en áreas clave, según un artículo de investigación de IBM.

Las limitaciones de modificar los LLM existentes

Para cumplir con los requisitos de las aplicaciones avanzadas de IA generativa, los desarrolladores suelen confiar en un LLM existente que adaptan para satisfacer una necesidad empresarial específica. Tomemos, por ejemplo, una compañía de seguros que busca crear una aplicación de IA generativa que ayude a los empleados a obtener conocimiento a partir de datos propietarios de los clientes. Hoy en día, probablemente comprarían un LLM existente creado para chatbots y lo modificarían según sus necesidades. Pero este enfoque tiene varias limitaciones importantes:

  • Ajustar un LLM existente para comprender el área única de experiencia que requiere su organización puede ser costoso y requerir muchos recursos.
  • Es difícil que el modelo mejore continuamente una vez que se ha ajustado para adaptarse a un determinado conjunto de necesidades, lo que significa que no puede iterar o evolucionar con los requisitos de la organización.
  • Refinar un LLM para que se ajuste a un propósito empresarial específico requiere una gran cantidad de datos generados por humanos para que el modelo se entrene, lo que lleva mucho tiempo y es costoso de adquirir.

InstructLab mejora los LLM con menos entrada humana y menos Recursos

El método InstructLab puede entrenar LLM utilizando menos entradas generadas por humanos y muchos menos recursos informáticos. La base del método de entrenamiento de la mayoría de los LLM modernos, especialmente los que sustentan los potentes chatbots, es un extenso entrenamiento previo en grandes conjuntos de datos de texto no estructurado. Aunque este enfoque formativo permite a los LLM adquirir nuevas habilidades relativamente rápido en la fase de alineación, es costoso y requiere una amplia intervención humana.

El enfoque LAB, desarrollado por IBM investigación, utiliza la generación de datos sintéticos guiada por taxonomía para reducir los costes y la necesidad de entrada humana. Junto con el enfoque de desarrollo de código abierto e impulsado por la comunidad de InstructLab, este enfoque democratiza de manera efectiva el desarrollo de los LLM necesarios para las aplicaciones de IA generativa.

La interfaz de línea de comandos (CLI) de InstructLab, los conjuntos de instrucciones que los desarrolladores utilizan para gestionarla, incluso está diseñada para funcionar en dispositivos muy utilizados, como ordenadores portátiles personales, y se anima a los desarrolladores a aportar nuevos conocimientos o habilidades a través de la comunidad de IA Hugging Face.

Casos de uso de InstructLab

InstructLab adopta un enfoque de código abierto y basado en la comunidad para afinar los LLMs para una amplia variedad de casos de uso. Estos son algunos de los más comunes.

Atención médica

Los LLM desarrollados con el enfoque InstructLab pueden entrenarse para adquirir nuevas habilidades y conocimientos para muchas aplicaciones en el sector sanitario, desde la exploración de volúmenes de datos clínicos para ayudar a los científicos a lograr avances en la investigación médica hasta la evaluación del riesgo del paciente a partir del historial médico y mucho más.

Banca

En la banca, el enfoque de InstructLab puede crear LLM con énfasis en el análisis comercial y la proyección de modelos para ayudar a detectar tendencias y prever el riesgo asociado con las estrategias comerciales. También se puede utilizar para entrenar a los LLM para aplicaciones de IA generativa en finanzas personales, como el ahorro para la jubilación, la elaboración de presupuestos y más.

Servicio de atención al cliente

Los LLM formados con el enfoque de InstructLab pueden impulsar chatbots inteligentes formados en áreas específicas del servicio de atención al cliente, como la devolución de un artículo o la solicitud de un producto específico. Además, el método LAB puede ayudar a afinar los LLMs para que sean asistentes virtuales con un conjunto complejo de habilidades, como programar citas, reservar viajes, presentar la declaración de la renta y más.

Marketing

El método InstructLab ayuda a afinar los LLM detrás de las aplicaciones de IA generativa en marketing para una variedad de propósitos. Pueden aprender a examinar los datos de los clientes para obtener conocimientos sobre el comportamiento, la preferencia del producto e incluso el diseño futuro del producto. También pueden adquirir las habilidades necesarias para ofrecer consejos personalizados sobre productos, como tallas de calzado o ropa, preferencia de color y más.

DevOps

La aplicación del método InstructLab para entrenar LLM para ayudar a mejorar el ciclo de vida de DevOps puede beneficiar a los desarrolladores de varias maneras importantes. Los LLMs entrenados con el método InstructLab pueden generar código y crear scripts, automatizar la provisión de infraestructura (aplicaciones Infrastructure as Code (IaC)) y acortar y mejorar la resolución rutinaria de problemas, la resolución de problemas e incluso el análisis y revisión de código.  

Soluciones relacionadas
IBM Red Hat OpenShift

Red Hat OpenShift on IBM Cloud es una plataforma de contenedores OpenShift (OCP) totalmente gestionada.

Explore IBM Red Hat OpenShift
Soluciones Red Hat

Desbloquee Red Hat IA e InstructLab como servicio en IBM® Cloud.

Explore las soluciones de Red Hat AI
Servicios de consultoría de Red Hat

Transforme su negocio con las tecnologías de Red Hat e IBM Consulting, ahorre costes y acelere su viaje hacia la nube híbrida.

Explore los servicios de Red Hat
Dé el siguiente paso

Desbloquee Red Hat IA e InstructLab como servicio en IBM® Cloud.

Explore las soluciones de Red Hat AI Más información