Editor’s note: Este artículo forma parte de la serie AI Decoded, que desmitifica la IA al hacer la tecnología más accesible y presenta nuevo hardware, software, herramientas y aceleraciones para usuarios de PC RTX.
Modelos de Lenguaje Grandes y sus Aplicaciones
Los modelos de lenguaje grandes (LLM) están impulsando algunos de los desarrollos más emocionantes en IA gracias a su capacidad para entender, resumir y generar contenido textual de manera rápida. Estas capacidades alimentan una variedad de casos de uso, que incluyen herramientas de productividad, asistentes digitales, personajes no jugables en videojuegos y más. Sin embargo, no son una solución única para todos, y los desarrolladores a menudo deben personalizar los LLM para adaptarse a las necesidades de sus aplicaciones.
Facilitando la Personalización con NVIDIA RTX AI Toolkit
El NVIDIA RTX AI Toolkit facilita la personalización y el despliegue de modelos de IA en PCs y estaciones de trabajo RTX mediante una técnica llamada adaptación de bajo rango o LoRA. Una nueva actualización permite, a partir de ahora, el uso de múltiples adaptadores LoRA simultáneamente dentro de la biblioteca de aceleración de IA NVIDIA TensorRT-LLM, mejorando el rendimiento de los modelos personalizados hasta en 6 veces.
Personalización para un Rendimiento Superior
Los LLM necesitan ser cuidadosamente ajustados para lograr un mayor rendimiento y satisfacer las crecientes demandas de los usuarios. Estos modelos fundamentales son entrenados con enormes cantidades de datos, pero a menudo carecen del contexto necesario para el caso de uso específico de un desarrollador. Por ejemplo, un LLM genérico puede generar diálogos de videojuegos, pero probablemente no captará la nuance y sutileza requeridas para escribir en el estilo de un elfo del bosque con un pasado oscuro y un desdén apenas disimulado por la autoridad.
Para lograr resultados más específicos, los desarrolladores pueden ajustar el modelo con información relacionada al uso de la aplicación. Tomemos el ejemplo de desarrollar una aplicación para generar diálogos dentro de un juego utilizando un LLM. El proceso de ajuste comienza utilizando los pesos de un modelo previamente entrenado, como información sobre lo que un personaje podría decir en el juego. Para obtener diálogos en el estilo correcto, un desarrollador puede ajustar el modelo en un conjunto de datos más pequeño de ejemplos, como diálogos escritos con un tono más espeluznante o villanesco.
Operación con Múltiples Procesos de Ajuste
En algunos casos, los desarrolladores pueden querer ejecutar todos estos diferentes procesos de ajuste simultáneamente. Por ejemplo, podrían querer generar copias de marketing escritas en diferentes voces para varios canales de contenido. Al mismo tiempo, podrían querer resumir un documento, hacer sugerencias estilísticas y redactar una descripción de una escena de videojuego junto con un píxel de imagen para un generador de texto a imagen.
No es práctico ejecutar múltiples modelos al mismo tiempo, ya que no todos cabrán en la memoria GPU simultáneamente. Incluso si lo hicieran, su tiempo de inferencia se vería afectado por el ancho de banda de memoria: qué tan rápido se pueden leer los datos de la memoria a las GPU.
Lo(RA) y su Aplicación Práctica
Una forma popular de resolver estos problemas es utilizar técnicas de ajuste como la adaptación de bajo rango. Se puede pensar en ello como un archivo de parche que contiene las personalizaciones del proceso de ajuste. Una vez entrenados, los adaptadores LoRA personalizados pueden integrarse sin problemas con el modelo base durante la inferencia, añadiendo una sobrecarga mínima. Los desarrolladores pueden adjuntar los adaptadores a un solo modelo para atender múltiples casos de uso, manteniendo así el consumo de memoria bajo mientras proporcionan los detalles adicionales necesarios para cada caso específico.
En la práctica, esto significa que una aplicación puede mantener solo una copia del modelo base en memoria, junto con muchas personalizaciones utilizando múltiples adaptadores LoRA. Este proceso se llama servicio multi-LoRA. Cuando se realizan múltiples llamadas al modelo, la GPU puede procesar todas las llamadas en paralelo, maximizando el uso de sus núcleos Tensor y minimizando las demandas de memoria y ancho de banda, lo que permite a los desarrolladores utilizar modelos de IA de manera eficiente en sus flujos de trabajo. Los modelos ajustados que utilizan adaptadores multi-LoRA funcionan hasta 6 veces más rápido.
Expansión de Capacidades de Aplicaciones
En el ejemplo de la aplicación de diálogo dentro del juego mencionado anteriormente, el alcance de la aplicación podría ampliarse, utilizando el servicio multi-LoRA, para generar tanto elementos de la historia como ilustraciones — impulsadas por un solo prompt.
El usuario podría ingresar una idea básica para la historia, y el LLM desarrollaría el concepto, ampliándolo para proporcionar una base detallada. La aplicación podría luego usar el mismo modelo, mejorado con dos adaptadores LoRA distintos, para refinar la historia y generar imágenes correspondientes. Un adaptador LoRA genera un prompt de Stable Diffusion para crear visuales utilizando un modelo Stable Diffusion XL desplegado localmente. Mientras tanto, otro adaptador LoRA, ajustado para la escritura de historias, podría elaborar una narrativa bien estructurada y atractiva.
En este caso, se utiliza el mismo modelo para ambos pases de inferencia, asegurando que el espacio requerido por el proceso no aumente significativamente. El segundo pase, que involucra tanto la generación de texto como de imágenes, se realiza utilizando inferencia por lotes, haciendo que el proceso sea excepcionalmente rápido y eficiente en las GPU de NVIDIA. Esto permite a los usuarios iterar rápidamente a través de diferentes versiones de sus historias, refinando la narrativa y las ilustraciones con facilidad.
El Futuro de los LLMs en la IA Moderna
Los LLM están convirtiéndose en uno de los componentes más importantes de la IA moderna. A medida que la adopción e integración crecen, la demanda de LLM poderosos y rápidos con personalizaciones específicas de aplicaciones sólo aumentará. El soporte multi-LoRA añadido al RTX AI Toolkit proporciona a los desarrolladores una nueva forma poderosa de acelerar estas capacidades.