Cluster de ESP32-S3 ejecuta LLM de 0.5B con cuantización ternaria

Fuentes: ESP32-S3 Cluster Runs 0.5B LLM with Ternary Quantization

El proyecto ESP32s3-LLM-Cluster implementa un motor de inferencia distribuido que ejecuta un modelo de lenguaje de 0.5B parámetros en un clúster de siete microcontroladores ESP32-S3. La arquitectura utiliza una cadena de encaje (daisy-chain) de alta velocidad mediante SPI para distribuir la carga de cómputo entre un nodo maestro y seis nodos de cómputo. El nodo maestro gestiona el tokenizador BPE, la matriz de embeddings INT4 y la capa de salida final, mientras que los nodos de cómputo procesan las capas de atención y las capas de red neuronal (MLP) del modelo. La cuantización clave es el uso de una representación ternaria de 1.58 bits, basada en la técnica BitNet, lo que permite ejecutar el modelo con una memoria mínima de 14 MB en Flash para los embeddings y 64 KB en PSRAM para el caché de claves. El sistema optimiza el uso de la memoria interna mediante particiones específicas y utiliza operaciones de ensamblaje para acelerar las operaciones de multiplicación-suma. Este enfoque permite la ejecución local de modelos de lenguaje de gran escala en hardware de microcontroladores, reduciendo la dependencia de la nube. El proyecto incluye herramientas de Python para la cuantización consciente del entrenamiento (QAT) y la preparación del modelo, así como guías de flujo de trabajo para el flasheo y la configuración del hardware. Está licenciado bajo MIT y sirve como referencia para arquitecturas de IA distribuida en microcontroladores.