El proyecto 'qapla', disponible en GitHub, demuestra que es posible entrenar un pequeño modelo de lenguaje —un transformador a nivel de carácter— directamente dentro de un microcontrolador ESP32-S3 de bajo coste. A diferencia de los puertos tipo llama2.c, que solo ejecutan en inferencia modelos previamente entrenados fuera del chip, esta implementación realiza el ciclo completo dentro del propio micro: inicialización aleatoria de pesos, lectura y tokenización del corpus, pasada hacia adelante, cálculo de pérdida por entropía cruzada, retropropagación con gradientes derivados a mano en C y actualización de pesos con SGD con momentum y tasa de aprendizaje coseno.
El modelo es deliberadamente diminuto: un único bloque, atención causal de una cabeza, pesos atados, una red feed-forward con ReLU y LayerNorm. Entrena carácter a carácter sobre un vocabulario de unos 30 símbolos, lo que permite mantener el tamaño del modelo en cientos de miles de parámetros, compatible con los pocos megabytes de RAM/PSRAM del ESP32-S3. Los checkpoints se guardan en flash mediante LittleFS y el texto se genera ya desde el propio dispositivo, que además incorpora una pantalla OLED de 1,3 pulgadas para mostrar el resultado.
Como banco de pruebas se eligió el klingon, la lengua construida por Marc Okrand para Star Trek. Su alfabeto reducido, su vocabulario acotado y la disponibilidad del diccionario comunitario boQwI' bajo licencia abierta lo convierten en un corpus ideal: tiene estructura fonológica, morfológica y gramatical real, pero con un tamaño manejable para la memoria del chip. El autor plantea que el siguiente paso serían lenguas minoritarias reales, como sami, quechua o náhuatl. No es un ChatGPT de bolsillo: el sistema no conversa ni razona, sino que aprende y reproduce la forma estructural del idioma. El entrenamiento dura horas y la salida no es klingon semánticamente perfecto, pero el proyecto prueba que un microcontrolador de ocho dólares puede aprender por sí mismo, sin GPUs ni conexión.
