Cómo entrenar modelos de IA con millones de palabras de contexto sin quedarte sin memoria
Hugging Face presenta Ulysses, una técnica que permite a modelos de lenguaje procesar textos larguísimos repartiendo el trabajo entre varias GPUs de forma más eficiente.

Hugging Face (una plataforma donde desarrolladores comparten y descargan modelos de IA ya entrenados) ha publicado una nueva técnica llamada Ulysses Sequence Parallelism que permite entrenar modelos de lenguaje con contextos de hasta un millón de tokens (unidades de texto que equivalen más o menos a palabras o fragmentos de palabras). Para ponerlo en perspectiva: un millón de tokens es aproximadamente el tamaño de tres novelas largas juntas, algo que hasta ahora resultaba extremadamente difícil de procesar sin quedarse sin memoria RAM en las GPUs (las tarjetas gráficas especializadas que se usan para entrenar estos modelos).
El problema que resuelve Ulysses es técnico pero importante: cuando un modelo de IA procesa un texto muy largo, debe calcular qué palabras están relacionadas entre sí mediante un mecanismo llamado atención (attention), que consume cantidades brutales de memoria. La técnica tradicional para manejar textos largos es dividir el trabajo entre varias GPUs, pero esto creaba un cuello de botella al transferir datos entre ellas. Ulysses reorganiza ese reparto de forma más inteligente: en lugar de dividir el texto en bloques consecutivos, distribuye las operaciones de cálculo de manera que cada GPU tenga que transferir menos información.
Según los experimentos de Hugging Face, Ulysses reduce el tiempo de entrenamiento hasta un 47% comparado con métodos anteriores cuando se usan 32 GPUs trabajando en paralelo. Además, se integra bien con otras técnicas de paralelización (formas de repartir el trabajo entre procesadores) como DeepSpeed ZeRO (un sistema de Microsoft para entrenar modelos gigantes de forma eficiente) y el tensor parallelism (otra técnica que divide las operaciones matemáticas del modelo), lo que permite combinar varias estrategias a la vez para exprimir al máximo el hardware disponible.
La técnica ya está disponible en el framework Transformers de Hugging Face (la librería de código abierto más usada para trabajar con modelos de lenguaje) y puede activarse con una sola línea de configuración. Aunque Ulysses no resuelve todos los problemas del entrenamiento con contextos largos —todavía hace falta mucha memoria y muchas GPUs—, representa un paso relevante para hacer viable entrenar modelos que puedan procesar documentos largos, bases de código completas o conversaciones extensas sin perder el hilo.


