La abrumadora demanda de poder computacional que exige la IA
Las inteligencias artificiales realizan sus tareas con una habilidad verdaderamente notable A menudo, el contenido o los resultados no se distinguen de lo que podemos hacer los seres humanos. No hay freno posible a su uso
Tiempo de lectura estimado: 9 minutos
Facundo Molina, IMDEA SOFTWARE
Las IAs conducen vehículos, crean música, ayudan a seleccionar candidatos en puestos laborales y traducen nuestras voces a otros idiomas. No, no es futuro. Hay un aluvión creciente de posibilidades para estos y muchos otros usos. Pero nos enfrentamos a un problema de peso: no contamos con hardware suficiente para afrontar la creciente demanda de sistemas basados en inteligencia artificial, lo que además exige un consumo de energía disparatado.
Tres millones de aplicaciones disponibles
En enero de 2024, la compañía OpenAI, creadora de aplicaciones como ChatGPT y DALL-E, publicó GPT Store, una tienda en la nube con aplicaciones de IA personalizadas, desde donde se pueden crear versiones adaptadas de ChatGPT. Por ejemplo, Tutor Me, que puede ayudarnos con preguntas de matemáticas, ciencia y humanidades; Murder Mystery Mayhem, un juego de misterio para resolver casos de crímenes generados con inteligencia artificial; y muchas otras.
Según la propia compañía, la tienda ya cuenta con más de 3 millones de aplicaciones.
Los grandes modelos de lenguaje, o LLMs (Large Language Models), han sido fundamentales en esta historia. Gracias a la creciente disponibilidad de los sistemas basados en IA, hoy en día es relativamente sencillo construir software que interactúe o utilice este tipo de modelos. Más aún, las inversiones en IA por parte de las grandes compañías, junto con el creciente interés por crear inteligencias artificiales propias, ha provocado una increíble demanda de hardware especializado.
Es decir, para la cantidad de desarrollos basados en inteligencia artificial hacen falta máquinas, grandes máquinas. Estamos ante una enorme demanda de poder computacional que no puede satisfacerse.
El software de la IA
Desarrollar una pieza de _software que utilice un modelo de lenguaje puede ser, en ocasiones, muy sencillo. Algunas grandes compañías, como OpenAI o Google, ya proveen acceso a muchos de sus modelos mediante aplicaciones en la nube.
Esto permite que, mediante el uso de estos servicios, uno pueda desarrollar un pequeño componente de software de unas decenas de líneas de código que use, por ejemplo, el gran modelo de lenguaje GPT-4 (el que usa ChatGPT).
Usar estos servicios puede tener un costo económico considerable, normalmente asociado a la cantidad de mensajes enviados al modelo.
Como ha ocurrido siempre a lo largo de la breve historia de la informática, muchos desarrolladores deciden liberar sus modelos de lenguaje, y se pueden utilizar como modelos libres.
Por ejemplo, Meta permite que sus modelos de la serie Llama2 puedan ser descargados y utilizados libremente. La plataforma HuggingFace es muy popular por la gran cantidad de modelos que tiene disponibles para su uso gratuito.
Construir software que utilice uno de estos modelos tiene prácticamente la misma complejidad que usar servicios en la nube, y puede resolverse con unas pocas líneas de código.
Desarrollar un modelo de IA propio puede ser más complejo. Estos modelos requieren una inmensa cantidad de datos para ser construidos (texto, imágenes, etc.). Por ello, típicamente se necesita desarrollar un pipeline (todo el proceso que sigue el código, desde su diseño e implementación hasta que se despliega) de software robusto para realizar una variedad de tareas. Estas tareas incluyen recolectar y preparar los datos, definir la arquitectura del modelo, utilizar los algoritmos de entrenamiento sobre los datos y, finalmente, utilizar el modelo obtenido. Afortunadamente, hay muchas librerías online populares para simplificar el desarrollo de software para estas tareas.
Sin embargo, actualmente el mayor desafío se encuentra en la gran infraestructura de hardware que se necesita para un funcionamiento razonable (en cuanto a tiempo de construcción y respuesta) de estos modelos.
El problema del hardware
El uso de modelos de IA requiere contar con hardware especializado, normalmente Unidades de Procesamiento Gráfico (GPU).
Cuando los modelos se utilizan mediante algún servicio en la nube, el hardware es proporcionado por los proveedores del servicio (Google, OpenAI, etc.). Cuando se utilizan modelos libres, uno debe elegir entre contratar un servicio de hardware (mediante Amazon Web Services, por ejemplo) o adquirir sus propias GPU. Esto último puede llegar a tener un costo considerable. Por ejemplo, la GPU A100 de Nvidia, una GPU avanzada y muy recomendada, puede llegar a costar alrededor de 10 000 dólares.
El problema se vuelve aún mayor si uno desea construir un modelo propio. Entrenar un modelo de IA es una tarea que requiere mucho más poder computacional que su uso. Por ejemplo, construir y entrenar el modelo GPT-4 le costó a OpenAI alrededor de 100 millones de dólares; Google gastó alrededor de 8 millones de dólares para construir PaLM 2. En general, la construcción de LLMs y otros modelos se vuelve cada año más costosa.
Al mismo tiempo, se destina cada vez más dinero en hardware para IA y centros de datos altamente equipados. Según un artículo de Communications of the ACM, entre mayo de 2022 y abril de 2023, Nvidia vendió 15 000 millones de dólares en GPUs, atribuyendo las ventas principalmente al uso de GPU para IA. Amazon, Google y Microsoft también reportaron un incremento en sus gastos destinados al mantenimiento de centros de datos. Por esta creciente demanda, durante 2023 han publicado varios informes alertando de la falta de GPUs.
Hoy contamos con grandes cantidades de espacio de almacenamiento (la nube parece infinita), procesamiento ultrarrápido y servidores por todas partes aceptando y entregando información. Pero la IA se enfrenta a limitaciones de hardware.
Enfrentando la falta de hardware
Si no hay hardware suficiente, si no hay máquina suficiente, la comunidad científica, y así hacemos desde IMDEA Software, debe simplificar el manual de instrucciones para obtener software eficiente, confiable y seguro. La avalancha de nuevos modelos de IA y la falta de recursos computacionales necesarios para construirlos (incluyendo el inmenso consumo de energía) generan la necesidad de reducir este tipo de modelos sin perder sus principales características. El objetivo es lograr un impacto insignificante en su desempeño.
Reducir los costos y el consumo energético de la construcción de sistemas de IA debe ser una preocupación de la sociedad y, principalmente, de todos los científicos informáticos y de los desarrolladores de IA. En ello estamos.
Facundo Molina, Post-doctoral Researcher - Software Testing and Analysis, IMDEA SOFTWARE
Este artículo fue publicado originalmente en The Conversation. Lea el original.
¿Cuál es tu reacción?