La ejecución de modelos de lenguaje (LLMs), incluso los más sencillos, es inherentemente exigente en términos computacionales. Hacerlo localmente en hardware doméstico requiere auténticas bestias de potencia.

Esto no es una exageración. Ejecutar un modelo modesto, como Llama 3.1 70B, con un rendimiento aceptable, requiere una GPU de gama alta con al menos 24 GB de VRAM, como la NVIDIA RTX 3090, y al menos 64 GB de RAM.

No todos los desarrolladores y entusiastas tienen acceso a este tipo de hardware. Por eso, la opción preferida es utilizar alguna de las muchas formas de ejecutarlos en la nube. ¿Existirá una forma accesible y barata de ejecutar localmente un LLM?

Aquí es donde Exo se presenta como una solución innovadora: permite distribuir la carga de trabajo entre varios dispositivos, maximizando el uso de los recursos disponibles y haciendo la IA más accesible para todos.

¿Qué es Exo?

Exo es un software experimental desarrollado por Exo Labs que permite a los usuarios aprovechar la capacidad de múltiples dispositivos conectados en red para ejecutar modelos de IA complejos.

La premisa de Exo es simple pero revolucionaria: transformar tus dispositivos habituales, como un iPhone, un iPad, un MacBook o incluso un ordenador con Linux, en un potente clúster de procesamiento de IA sin la necesidad de invertir en costosas tarjetas gráficas o aceleradores de IA.

Este enfoque hace que la tecnología de IA sea más accesible, especialmente para startups y pequeñas y medianas empresas (PYMEs) que buscan sumergirse en el mundo de la IA sin un desembolso inicial significativo en hardware.

El desarrollo de Exo es reciente, y se le considera un software experimental en constante cambio. Puede encontrar información más actualizada en su página de Github (github.com/exo-explore/exo).

¿Cómo funciona Exo?

El funcionamiento de Exo se basa en la capacidad de dividir y distribuir un modelo de lenguaje grande (LLM) entre todos los dispositivos disponibles en la red doméstica. Exo emplea un esquema de memoria que asigna las tareas según la cantidad de memoria que tiene cada dispositivo.

De este modo, un modelo de IA que normalmente requeriría una GPU potente puede ejecutarse de manera eficiente utilizando la suma de las capacidades de varios dispositivos menos potentes.

El proceso comienza con la instalación del software Exo en los dispositivos compatibles, que deben tener Python 3.12.0 o una versión posterior.

Una vez instalado y en funcionamiento, Exo detecta automáticamente los dispositivos conectados a la red y los incorpora al clúster.

Esto se realiza mediante conexiones peer-to-peer, garantizando que todos los dispositivos tengan igualdad de recursos y puedan participar en la tarea de procesamiento de IA.

Una de las características más destacadas de Exo es su partición dinámica de modelos. Esta tecnología permite que los modelos se dividan de manera óptima según la topología de la red y los recursos disponibles en los dispositivos conectados.

En lugar de depender de un solo dispositivo para ejecutar un modelo grande, Exo permite que varios dispositivos colaboren para realizar la tarea, lo que maximiza la eficiencia y la utilización del hardware disponible.

Modelos de IA compatibles con Exo

Exo es compatible con una amplia gama de modelos de IA populares, incluyendo Llama 3 de Meta. Este es un modelo de lenguaje grande de código abierto que ha ganado popularidad por su rendimiento y flexibilidad.

Además, con pequeños cambios, Exo permite integrar una API compatible con ChatGPT, lo que facilita la ejecución de modelos de IA en hardware personal.

Esta amplia compatibilidad con diferentes modelos hace que Exo sea una opción versátil para desarrolladores y empresas que buscan experimentar localmente con la IA sin estar limitados por su falta de infraestructura.

¿Se puede usar GPT-4 con Exo?

GPT-4 es un modelo propietario desarrollado por OpenAI y no está disponible como código abierto. Esto significa que funciona en los servidores de OpenAI y no se puede descargar ni ejecutar localmente en dispositivos personales.

Por lo tanto, para usar Exo y softwares similares, estamos limitados a modelos de lenguaje que sean de código abierto, como Llama 3 mencionado anteriormente.

Ventajas de usar un clúster de dispositivos para la IA

El uso de Exo para crear un clúster de IA con dispositivos domésticos ofrece varias ventajas significativas:

La principal ventaja es la reducción de costes. En lugar de invertir en hardware especializado como GPUs, Exo permite utilizar dispositivos que ya se poseen, como smartphones, tablets y ordenadores, para ejecutar modelos de IA complejos.

Esto democratiza el acceso a la IA, permitiendo que más personas y empresas participen en la innovación.

Al ser compatible con múltiples tipos de dispositivos, Exo ofrece una gran flexibilidad en la configuración del clúster.

Los usuarios pueden aprovechar una variedad de dispositivos, lo que permite una mayor personalización según las necesidades específicas del proyecto.

Gracias a su arquitectura peer-to-peer, Exo permite escalar el clúster fácilmente al añadir más dispositivos a la red. Cada nuevo dispositivo aporta recursos adicionales al clúster, mejorando el rendimiento general sin necesidad de reconfigurar el sistema.

La partición dinámica de modelos asegura que los recursos de cada dispositivo se utilicen de manera óptima.

Esto significa que incluso dispositivos con capacidades limitadas pueden contribuir de manera significativa al procesamiento de modelos de IA grandes, optimizando el rendimiento global.

Limitaciones y consideraciones finales

Al ser un software experimental, Exo todavía puede presentar errores y problemas de estabilidad. Por ejemplo existen limitaciones en dispositivos con iOS (iPhone y iPad) donde el soporte es limitado y requiere más desarrollo para su uso generalizado.

Por otro lado, la eficiencia del clúster dependerá en gran medida de la red doméstica y la calidad de los dispositivos conectados.

Finalmente, aunque Exo optimiza la distribución de tareas, muchos dispositivos con hardware muy limitado pueden no ofrecer el mismo rendimiento que un clúster basado en GPUs de alta gama.

Sin embargo, su capacidad para transformar dispositivos cotidianos en un potente clúster de IA ofrece a desarrolladores, startups y PYMEs una herramienta poderosa para explorar y aprovechar el potencial de la inteligencia artificial.

Exo promete ser una herramienta clave en la democratización de la tecnología de IA, permitiendo a más personas participar en la creación y experimentación con modelos de IA avanzados.