El problema fundamental que Qwenputer aborda es la limitación inherente de los Large Language Models (LLMs) para realizar computaciones exactas y deterministas. Los LLMs son inherentemente probabilísticos y sobresalen en tareas de generación de lenguaje natural, pero fallan en operaciones aritméticas complejas o lógicas precisas, a menudo recurriendo a 'alucinaciones' o aproximaciones. Tradicionalmente, esto se ha mitigado mediante el uso de 'tool-use' o 'function calling', donde el LLM invoca herramientas externas (como intérpretes de Python o calculadoras) para delegar la computación exacta. Sin embargo, este enfoque introduce latencia, dependencias externas y un punto de fallo en la comunicación entre el LLM y la herramienta.

Qwenputer propone una solución radicalmente diferente: compilar una CPU completa directamente en los pesos del modelo. Esto transforma una parte del LLM en un sistema computacional determinista, capaz de ejecutar instrucciones de máquina. La clave reside en reconfigurar las capas Gated DeltaNet (GDN) de Qwen 3.5, que son RNNs lineales, para funcionar como una memoria de acceso aleatorio (RAM) exacta y direccionable. Al modificar los parámetros de 'gate' y 'write strength' a valores específicos y usar 'one-hot key encoding', se logra que cada 'write' sobrescriba una fila exacta y cada 'query' recupere un valor exacto, emulando el comportamiento de una RAM tradicional. Esto permite que el LLM no solo 'razone' sobre la computación, sino que la ejecute internamente con precisión.

Arquitectura del Sistema

La arquitectura de Qwenputer se basa en la modificación y extensión del modelo Qwen 3.5 4B. El componente central es una CPU RISC-V de 32 bits (RV32IM con extensión Zba y una unidad de bignum) que se compila directamente en 11 capas adicionales del modelo, situadas antes de las 32 capas originales de Qwen. Esta compilación no implica entrenamiento, sino la configuración directa de los pesos del modelo para emular un circuito digital. Cada instrucción de la CPU se traduce en una secuencia de tokens generados por el modelo: un token ADDR para la dirección de memoria, un token VAL para el valor, y un token STEP para finalizar la instrucción. La ejecución de la CPU ocurre durante el proceso de decodificación del modelo, donde cada paso de la CPU corresponde a la generación de estos tokens.

La 'RAM' de esta CPU se implementa utilizando las capas Gated DeltaNet (GDN) de Qwen 3.5. Estas capas, que son RNNs lineales, mantienen una matriz de estado. Al configurar el parámetro 'gate' a 1 (evitando el olvido) y el 'write strength' (beta) a 1 (reemplazo completo), y utilizando 'one-hot key encoding' para las claves, cada cabeza GDN puede simular una celda de memoria direccionable. Esto permite operaciones de lectura y escritura exactas. Un 'driver' llamado RvChat se encarga de cargar el firmware inicial en el estado GDN y de gestionar los 'trace tokens' para que no interfieran con las capas de Qwen. Además de la CPU, se implementa un sistema de archivos experimental utilizando también el estado DeltaNet, permitiendo almacenar hasta 512 archivos (aproximadamente 53,000 tokens de texto) de forma persistente entre conversaciones mediante un esquema de hashing y encadenamiento de bloques.

Flujo de Ejecución de Instrucción de CPU en Qwenputer

  1. 1 Usuario/Qwen Envía una instrucción a la CPU (ej. 'Use calc: what is 123456789 * 987654321?')
  2. 2 RvChat Driver Carga firmware inicial y gestiona 'trace tokens'
  3. 3 Capas CPU (11 capas) Procesan la instrucción, generando tokens ADDR, VAL, STEP
  4. 4 Capas GDN (RAM) Realizan operaciones de lectura/escritura exactas en su estado de memoria
  5. 5 Capas Qwen 3.5 Reciben el resultado de la CPU como 'respuesta de herramienta'
  6. 6 Qwen Integra el resultado exacto en su respuesta de lenguaje natural
CapaTecnologíaJustificación
compute Qwen 3.5 4B (modificado) Modelo base de lenguaje, cuyas capas Gated DeltaNet son reconfiguradas para funcionar como RAM y sobre el cual se añaden las capas de la CPU.
compute RISC-V RV32IM CPU Core de procesamiento compilado directamente en los pesos del modelo, encargado de ejecutar instrucciones de máquina y código C/MicroPython. RV32IM, extensión Zba, unidad de bignum
storage Gated DeltaNet (GDN) Capas de atención lineal que, al ser configuradas con 'gate=1' y 'beta=1' y 'one-hot key encoding', funcionan como RAM direccionable y persistente para la CPU y el sistema de archivos. vs KV cache de atención tradicional (más costoso, tamaño variable) gate=1, beta=1, one-hot key encoding
orchestration RvChat Driver Pequeño programa externo que inicializa el firmware de la CPU en el estado GDN y gestiona la interacción entre el modelo y la CPU, manteniendo los 'trace tokens' fuera de las capas principales de Qwen.

Trade-offs

Ganancias
  • ▲ Exactitud y determinismo computacional
  • ▲ Eliminación de dependencias externas (tool-use)
  • ▲ Persistencia de estado (archivos) entre conversaciones
  • ▲ Potencial para monitoreo in-model inalterable
Costes
  • ▲ Tamaño del checkpoint del modelo
  • ▲ Latencia de ejecución de la CPU
  • △ Necesidad de un driver externo para el arranque

Fundamentos Teóricos

La idea de utilizar reglas de delta para la memoria no es completamente nueva. El trabajo de Schlag et al. (2021), "Linear Transformers Are Secretly Fast Weight Programmers", ya demostró que la atención lineal con la regla de delta puede funcionar como una memoria asociativa o "fast weights". Este concepto sentó las bases teóricas para la capacidad de las redes neuronales de almacenar y recuperar información de manera eficiente. Qwenputer lleva esta idea un paso más allá al hacer que esta memoria sea 'exacta y direccionable' dentro de un modelo de producción, lo que es crucial para la ejecución determinista de una CPU. La capacidad de las redes neuronales recurrentes (RNNs) para mantener un estado a lo largo del tiempo es un principio fundamental en la computación, y la manipulación precisa de este estado, como se hace con las GDN en Qwenputer, transforma una capacidad de memoria difusa en una estructura de datos programable y exacta, similar a la memoria de una máquina de Turing.