OPINIÓN

Los cimientos de la IA, un problema de infraestructura



Dirección copiada

Los modelos de inteligencia artificial (IA) más punteros han crecido exponencialmente en tamaño y complejidad

Publicado el 16 abr 2024

Adrián Vázquez Barrera

Software Developer en Solver IA




En las últimas tres décadas, hemos sido testigos de un cambio drástico en la forma en que consumimos software. Hace unos años, solíamos adquirir discos o descargar música en formato MP3 para disfrutarla en nuestros ordenadores o primitivos teléfonos móviles. Actualmente, la mayoría de las aplicaciones se ejecutan en servidores externos. Plataformas de música y video bajo demanda, inteligencia artificial y otros servicios requieren recursos computacionales significativos. Muchas empresas ofrecen acceso mediante suscripciones mensuales o de pago según el uso, algunas incluso proporcionan versiones gratuitas. A este modelo de negocio se le conoce como ‘Software como Servicio’ o SaaS (por sus siglas en inglés, software as a service).

Los modelos de inteligencia artificial (IA) más punteros han crecido exponencialmente en tamaño y complejidad. Los más vanguardistas, como ChatGPT, pueden llegar a tener miles de millones de parámetros. Esto significa que requieren enormes recursos para funcionar y ejecutarlos un ordenador promedio es impracticable por las limitaciones de RAM, CPU y GPU. Por este motivo, es necesario plantear una infraestructura acorde a las necesidades del negocio y las exigencias del modelo.

El desarrollo de modelos no es la única pieza del rompecabezas. La infraestructura que los soporta es igualmente vital para su implementación. ¿Por qué es esto tan crucial? Los usuarios y las aplicaciones demandan respuestas rápidas. Por lo tanto, esta ha de ofrecer tiempos de espera mínimos para la ejecución de los modelos. Además, debe ser escalable, capaz de adaptarse a cargas de trabajo variables sin comprometer el rendimiento. Por ejemplo, tenemos un nuevo producto basado en IA que se vuelve viral de la noche a la mañana, en este caso, la infraestructura debe ser escalable y estar lista para manejar picos inesperados de demanda sin colapsar.

La escalabilidad es un componente clave. Para llevarla a cabo, se emplea el concepto de réplica. De esta forma, cuando el número de usuarios aumenta, se agregan servidores adicionales en paralelo y todos ejecutan una copia del mismo modelo. (esto se conoce como escalado horizontal). Si en el sistema se ejecutan varias modelos, esta estrategia permite, utilizando mecanismos de balanceo de carga, ajustar los recursos del menos utilizado en favor del más intensivo. El resultado es un rendimiento optimizado, una respuesta ágil ante las fluctuaciones de carga y un menor coste de adquisición y mantenimiento de los equipos.

Adicionalmente se recomienda agregar una capa intermedia entre el modelo y la aplicación final, llamada middleware. Esta capa puede filtrar las solicitudes según los privilegios de acceso de los usuarios, aparte de gestionar la carga estableciendo una cola de trabajos para evitar la saturación de réplicas.

En contraste, el escalado vertical consiste en mejorar las prestaciones de una única máquina hasta su máximo potencial. Sin embargo, esta aproximación presenta graves inconvenientes. Existe un límite físico en cuanto a cuánto se puede mejorar una máquina individual. Es así como, a medida que se aumentan las capacidades nos enfrentaremos a inevitables restricciones como: la disipación de calor, la capacidad de almacenamiento y la velocidad de procesamiento, además de un coste de adquisición y mantenimiento mayor al utilizar hardware más caro.

Parte del éxito de la IA radica en la infraestructura que la soporta

En este contexto, se elija la modalidad que se elija para montar la infraestructura, no se puede negar que los precios de los componentes, especialmente las GPU, están por las nubes debido a la escasez generalizada de semiconductores y su alta demanda en áreas como la inteligencia artificial, videojuegos y minería de criptomonedas. Esta situación inevitablemente se reflejará en la factura final. Por lo tanto, es esencial que se desarrolle una estructura lo más eficiente posible para mitigar los costes y optimizar el rendimiento.

Actualmente la tercera empresa más valiosa en bolsa, NVIDIA es reconocida por diseñar y vender tarjetas gráficas. Su tecnología CUDA permite entrenar modelos rápidamente, y la falta de competidores en este mercado, coloca a esta empresa en una posición cercana al monopolio. Sus rivales directos, como Intel, AMD o Qualcomm, no logran igualar su rendimiento en este tipo de tarea. Que corporaciones de este calibre tengan dificultades para competir, es un indicador de lo complicado que es romper la barrera de entrada al mercado para nuevos competidores. Un panorama poco halagüeño si lo que buscamos es precisamente hacer estos componentes más accesibles.

En definitiva, parte del éxito de la IA radica en la infraestructura que la soporta. Para ello, debe asegurar tiempos de respuesta rápidos, mediante la escalabilidad del sistema según la demanda. Además, hay que considerar los costes asociados, teniendo en cuenta que a más y mejor hardware, más onerosa resultara la factura. La clave del éxito pues se haya al encontrar el equilibrio perfecto entre estas variables. Conviene recordar la expresión latina ‘Aurea mediocritas’, cuyo significado puede traducirse en este contexto como ‘Dorado término medio’.

Artículos relacionados

Artículo 1 de 2