La CPU que vive dentro de un LLM: 18 millones de instrucciones y ni un solo error

La CPU que vive dentro de un LLM: 18 millones de instrucciones y ni un solo error

Escucha este artículo en audio (1:59 min, resumen del artículo original)

📻 Versión en audio: si prefieres escuchar en vez de leer, el resumen del artículo está justo aquí arriba.

Escucha este artículo en audio (1:59 min, resumen del artículo original)

📻 Versión en audio: si prefieres escuchar en vez de leer, el resumen del artículo está justo aquí arriba.

La CPU que vive dentro de un LLM: 18 millones de instrucciones y ni un solo error

La respuesta estándar a «los LLM suman feo» siempre fue la misma: darle al modelo una herramienta externa. Un sandbox de Python, una calculadora por API. Funciona, pero es un parche: cada herramienta extra es un contenedor que mantener y una superficie nueva para un prompt injection. Esta semana encontré algo que ataca el problema por otro flanco: un CPU RISC-V de 32 bits compilado directamente dentro de los pesos de Qwen 3.5 4B. Sin plugin ni runtime externo: el computador vive adentro del modelo.

Capas de atención usadas como RAM

El proyecto se llama Qwenputer, es de Divyansh Agrawal y todo está abierto: pesos en Hugging Face y código en GitHub. El truco está en la arquitectura híbrida de Qwen 3.5: tres de cada cuatro capas de atención no son atención clásica sino Gated DeltaNet, una RNN lineal que mantiene una matriz de estado por cabeza. Si fijas el gate en 1, la fuerza de escritura en 1 y usas claves one-hot, cada escritura toca exactamente una fila del estado y cada consulta lee un solo valor. La RNN se convierte en RAM perfecta y direccionable, y su tamaño no crece con la conversación, al revés del KV cache clásico.

Sobre esa base compiló el procesador: describe el CPU como circuito y un compilador escribe los pesos a mano, sin entrenar nada. Cada instrucción se convierte en una pieza de capa de transformer: cabezas de atención que buscan, unidades feed-forward que calculan, cabezas DeltaNet que guardan. Ocupa 11 capas extra delante de las 32 de Qwen y ejecuta el set completo RV32IM más una unidad de bignum.

Los números que me convencieron

Esto no es un demo decorativo. El CPU pasó los riscv-tests oficiales, sus programas coinciden con QEMU y corrió 18 millones de instrucciones seguidas en modo libre sin un solo error (nadie lo corrige entre paso y paso). Cotejó 230.000 posiciones de su salida contra una máquina de referencia: cero desvíos. En los sets de DeepMind el modelo básico iba de 55% a 90%; con el CPU integrado sube a 97,5% y 100%, al nivel de darle Python como herramienta. En enteros largos de NUPA pasó de 48,6% a 100%. Y el texto normal del modelo no cambió (divergencia KL de 6e-4, dentro del piso de ruido).

Tiene costos, ojo. El checkpoint dobla de tamaño (18,8 GB, mayormente relleno de ceros), necesita un driver para arrancar el firmware y es lento: cada instrucción cuesta varios tokens, así que un cálculo grande toma segundos. Unos 3.200 tokens de CPU por segundo en una GPU L4.

Lo que me interesa de verdad

Yo corro modelos open-weight en mis propios servidores y lo que más me fastidia de los agentes no es la inteligencia: es la plomería de exactitud: o le pegas un sandbox con todo su riesgo, o te aguantas la cuenta alucinada. Un computador dentro del modelo elimina esa dicotomía, y de paso abre una idea rara: el autor también le metió al modelo un sistema de archivos en ese mismo estado, que retiene datos entre conversaciones con 90% de acierto contra 30% pegando el histórico en el prompt. Memoria persistente, sin base de datos externa.

Pero hay un lado oscuro. El mismo autor publicó dos seguimientos: los modelos híbridos pueden esconder su razonamiento en ese estado de RNN, donde el monitoreo del chain-of-thought no alcanza a mirar; y, al revés, se pueden compilar herramientas de supervisión en los propios pesos que el modelo no puede desactivar. La misma RAM exacta que hace el cálculo confiable es un territorio donde el «pensamiento en voz alta» del modelo se puede callar. Es la primera vez que veo un experimento que a la vez resuelve un problema práctico y plantea una pregunta seria de seguridad.

Si quieres probarlo: corre en una sola GPU de 24 GB, los pesos están en Hugging Face (Qwen3.5-4B-Qwenputer) y el código en GitHub. No es para producción todavía, pero como demostración de hacia dónde va la idea de agente sin sandbox externo, es de lo más interesante que he visto este mes.

Fuente del tema: Qwenputer: a fully functioning, deterministic RISC-V CPU inside Qwen3.5, blog de Divyansh Agrawal.

Fuente de inspiración: Qwenputer: a fully functioning, deterministic RISC-V CPU inside Qwen3.5

Comentarios

Aún no hay comentarios. ¿Por qué no comienzas el debate?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *