El desarrollador Slava S., conocido en la comunidad como slvDev, optimizó un modelo de lenguaje de 28,9 millones de parámetros para que corra localmente sobre una placa de desarrollo ESP32-S3, a una velocidad cercana a los 9 tokens por segundo mientras genera texto. Más precisamente, mientras escribe cuentos breves.
La diferencia con proyectos anteriores es de fondo. Hasta ahora, cuando se combinaban modelos de lenguaje y ESP32, la placa funcionaba como una pasarela de bajo consumo para conversar con modelos alojados en servidores de centros de datos. En esa familia entran el módulo de chat inteligente HiWonder WonderLLM, el framework ESP-Claw de Espressif y el ESP32 Agent Dev Kit. El proyecto "esp32-ai" de Slava es distinto: todo se ejecuta dentro del microcontrolador, sin nube de por medio.
¿Cómo entra un modelo así en un microcontrolador?

La clave fue dejar de intentar meter el modelo completo en la "memoria rápida", los 512 KB de SRAM del chip. La mayor parte de los parámetros de un modelo de lenguaje vive en una tabla de embeddings de alrededor de 25 millones de filas, y esa tabla puede leerse desde la flash, que es lenta pero enorme. Solo las pocas filas que cada token necesita, unos 450 bytes, se cargan y procesan en la SRAM.
La idea proviene de las Per-Layer Embeddings de Google, la misma técnica que usan Gemma 3n y Gemma 4. El reparto de memoria en el ESP32-S3 queda así:
- SRAM (rápida, diminuta): el núcleo de cómputo, el que trabaja en cada token.
- PSRAM (intermedia): la capa de salida y la memoria de trabajo.
- FLASH (enorme, lenta): la tabla de 25 millones de parámetros, con unas 6 filas leídas por token, cerca de 450 bytes.
¿Qué hardware exacto se necesita?

No sirve cualquier ESP32-S3. Hace falta memoria y almacenamiento suficientes para alojar el archivo del modelo, que pesa 14,9 MB en cuantización de 4 bits. Slava probó su demostración sobre una placa ESP32-S3 de unos 8 dólares, con 512 KB de SRAM, 8 MB de PSRAM y 16 MB de flash, conectada a una pequeña pantalla I2C donde aparecen los cuentos.
El salto respecto de lo que se había logrado antes es el dato más contundente del proyecto:
| Proyecto | Año | Parámetros | Base técnica |
|---|---|---|---|
| ESP32-LLM de Dave Bennett | 2023 | 260.000 | llama2.c |
| esp32-ai de slvDev | 2026 | 28.900.000 | llama2.c + embeddings por capa |
Son 111 veces más parámetros sobre la misma familia de chip, en un intervalo de tres años y sin cambiar de categoría de hardware.
En palabras del propio autor, difundidas en sus redes: "Un LLM de 28,9M corriendo en un ESP32 de 8 dólares, escribiendo una historia en pantalla, completamente en el chip, nada sale a un servidor. Es unas 100 veces más grande que el modelo que se corría en este chip en 2023."
¿Sirve para algo más que la demostración?
Conviene moderar las expectativas. El modelo fue entrenado con TinyStories, un conjunto de datos pensado para escribir relatos simples y cortos. No responde preguntas, no sigue instrucciones, no escribe código ni hace nada de lo que se espera de un modelo de lenguaje convencional. Es una proeza de ingeniería de memoria, no una herramienta de productividad.
Su valor está en otra parte: demuestra que la barrera para correr inferencia local en hardware barato es de arquitectura de memoria, no de potencia bruta de cálculo. Y esa lección sí es transferible a modelos más útiles.
¿Cuánto cuesta replicarlo desde Chile?
El costo de entrada es notablemente bajo para un experimento de esta naturaleza. Una placa ESP32-S3 con 8 MB de PSRAM y 16 MB de flash se consigue en tiendas de electrónica local y en MercadoLibre en un rango aproximado de 8.000 a 18.000 pesos según el fabricante y el vendedor, a lo que hay que sumar una pantalla I2C de 1,28 pulgadas por unos 6.000 a 10.000 pesos. Es decir, el proyecto completo queda bajo los 30.000 pesos, muy por debajo de cualquier alternativa con GPU dedicada.
Para quien quiera entrar por el lado del software, el código fuente, las instrucciones y los resultados detallados están en GitHub, con material complementario en el hilo de Reddit del proyecto.




