Qwen 3.5 4B lleva un procesador RISC-V dentro de sus pesos, con memoria basada en DeltaNet
El investigador Divyansh Agrawal ha integrado en los pesos de Qwen 3.5 4B un procesador RISC-V de 32 bits (RV32IM) que funciona. Un compilador fijó todo el código directamente, sin necesidad de entrenamiento. Los pesos originales de Qwen no se tocan, y el procesador ejecuta aritmética, C y MicroPython dentro de los propios pases hacia delante, sin sandbox ni llamadas a herramientas externas. Como memoria RAM actúan las capas Gated DeltaNet. Con gate 1, beta 1 y claves one-hot, cada escritura sobrescribe exactamente una fila del estado, y el tamaño del estado no crece con la longitud de la conversación. En aritmética larga del benchmark NUPA, la precisión subió del 48,6% al 100%, la misma que logra Qwen con la herramienta Python. • 11 capas adicionales antes de las 32 capas de Qwen, 18 millones de instrucciones sin errores • Sistema de archivos: hasta 512 archivos, unos 53 000 tokens • Checkpoint de 18,8 GB, velocidad de unos 3200 tokens de procesador por segundo en una L4
Procesado por IA desde Habr AI; editado por Hamidun News
Divyansh Agrawal ha publicado Qwenputer: una Qwen 3.5 4B estándar con un procesador RISC-V de 32 bits funcional compilado dentro de sus pesos. Como memoria utiliza sus propias capas Gated DeltaNet. En aritmética de enteros largos del conjunto NUPA, el modelo subió del 48,6% al 100%, exactamente igual que la misma Qwen con la herramienta externa Python. El esquema no incluye entorno de ejecución externo, sandbox ni llamadas a herramientas: todo se calcula en los pases hacia delante. El código está en GitHub, y el modelo, en Hugging Face y ModelScope.
Las capas DeltaNet como RAM direccionable
En Qwen3-Next y Qwen 3.5, tres de cada cuatro capas de atención se basan en Gated DeltaNet, una RNN lineal. Cada cabeza almacena una matriz de estado y la regla delta la actualiza. Agrawal observó que, si se fija el gate en 1 (no se olvida nada), la intensidad de escritura beta en 1 (el valor antiguo se sustituye por completo) y se codifican las claves como one-hot, la escritura sobrescribe exactamente una fila y la consulta devuelve su contenido exacto. El resultado es una memoria direccionable de verdad.
Este detalle es relevante para el coste de inferencia. El estado de una cabeza GDN no crece por larga que sea la conversación, mientras que el KV-cache de la atención convencional crece linealmente con la longitud del contexto. La idea de vincular la regla delta con los «fast weights» se conoce desde el trabajo de Schlag, Irie y Schmidhuber de 2021. La novedad está en que la memoria ahora es exacta y opera dentro de un modelo en funcionamiento, con tanta fiabilidad que sostiene un procesador completo.
Un compilador en lugar de entrenamiento
No hay ajuste fino: el procesador se describe como un circuito de pasos pequeños, del tipo «leer un registro», «sumar» o «saltar si es cero», y el compilador convierte cada paso en un fragmento de capa de transformer. Las cabezas de atención buscan, los bloques feed-forward calculan, y las cabezas DeltaNet almacenan los registros, la memoria y el contador de programa. Cada instrucción genera varios tokens: ADDR indica la fila donde escribir, VAL aporta el valor y STEP cierra la instrucción. Esos tokens constituyen la traza de ejecución.
El núcleo implementa RV32IM con la extensión Zba y un pequeño bloque para aritmética de números grandes. Ocupa 11 capas antes de las 32 capas de la propia Qwen, y los pesos originales permanecen intactos: el ordenador se añade en dimensiones y capas adicionales. Para un uso fiable, Agrawal se acopló al formato de llamada a herramientas que el modelo ya conoce. Qwen envía las instrucciones, el procesador ejecuta sus propias capas y escribe él mismo la respuesta. Un pequeño driver, RvChat, carga el firmware en el estado GDN e impide que los tokens de la traza entren en las capas de Qwen.
Cifras clave del proyecto:
- se superan los riscv-tests oficiales y los resultados de los programas coinciden con qemu;
- 18 millones de instrucciones en modo libre sin un solo error;
- unas 230 000 posiciones de salida contrastadas con la máquina de referencia, sin discrepancias;
- DeepMind div_big: 97,5% en Qwenputer, 95% en Qwen con Python, 72,5% en Qwen base;
- DeepMind mul_big: 97,5% frente al 100% con Python y el 55% del modelo base;
- DeepMind mul_div_multiple_longer: 100% frente al 97,5% con Python y el 90% del modelo base;
- DeepMind add_or_sub_big: 97,5%, lo mismo que con Python, y 87,5% en el modelo base;
- NUPA, enteros largos: del 48,6% al 100%;
- texto ordinario dentro del margen de ruido: KL de 6e-4 con un nivel de ruido de 5e-4.
Un sistema de archivos de 512 archivos y el precio del experimento
Sobre la memoria, el autor añadió un almacenamiento experimental con las operaciones put, append, get, list y delete. El nombre del archivo se convierte en hash en uno de los 1024 slots del directorio, en el estado DeltaNet, y el texto se guarda en otras cabezas, en cadenas de ocho tokens por fila. Si hay una colisión, se comprueba el siguiente slot, de modo que la búsqueda requiere dos o tres pasos.
Caben hasta 512 archivos, unos 53 000 tokens. El estado puede guardarse al final de una conversación y cargarse en la siguiente. En preguntas sobre hechos que cambiaron entre chats, Qwen responde correctamente el 90% de las veces, frente al 30% cuando simplemente se inserta el historial de chats anteriores en el contexto, y el 83,3% frente al 78,9% de las herramientas de memoria en Python.
El código de esta parte está en la rama rv-store.
El coste se paga en recursos. El checkpoint pesa 18,8 GB, aproximadamente el doble que la Qwen base, aunque la mayor parte del volumen es relleno de ceros. El modelo no se puede ejecutar con un generate() simple: hace falta RvChat. Cada instrucción cuesta varios tokens decodificados, y el ejecutor por lotes alcanza unos 3200 tokens de procesador por segundo en una L4. Un cálculo que a una CPU normal le llevaría milisegundos tarda segundos.
Dónde puede resultar útil en la práctica
Hoy Qwenputer no sustituye en velocidad a un sandbox con Python. Sin embargo, elimina toda una capa de infraestructura: no hacen falta servidor de herramientas, aislamiento ni round-trips de red, y basta con una sola GPU de 24 GB. Para los sistemas agénticos resulta interesante como vía hacia cálculos deterministas sin salir del modelo.
El autor planea ejecutar Python sobre MicroPython dentro de los pesos mediante la herramienta python() y acelerar el propio procesador. Una segunda línea de trabajo se centra en la seguridad: ha escrito dos continuaciones, una sobre cómo los modelos híbridos pueden ocultar razonamientos en el estado de la RNN y eludir la monitorización de la cadena de razonamiento, y otra sobre los pesos compilados como monitores integrados que el modelo no puede desactivar.
Para ejecutarlo: clonar el repositorio qwenputer, ejecutar uv sync --extra hf, descargar divagr1925/Qwen3.5-4B-Qwenputer con Hugging Face CLI y lanzar chipformer.rv.chat con el firmware calc-bridge.elf.
- 29 oct 2026RefactorProof: las demostraciones de los LLM se rompen tras refactorizar el código
- 29 oct 2026Cohere sorprende a Qwen3.8-Flash-Next intentando enviar un archivo a Pekín
- 29 oct 2026Cloudflare lanza los modelos open source Clef: 98,5% en BFCL y 38,8 ms
- 29 oct 2026Conflicto de conocimiento en RAG: un prior en lugar de una regla rígida aporta hasta +26 puntos
Preguntas frecuentes sobre la noticia
¿Qué se sabe sobre Las capas DeltaNet como RAM direccionable?
En Qwen3-Next y Qwen 3.5, tres de cada cuatro capas de atención se basan en Gated DeltaNet, una RNN lineal. Cada cabeza almacena una matriz de estado y la regla delta la actualiza. Agrawal observó que, si se fija el gate en 1 (no se olvida nada), la intensidad de escritura beta en 1 (el valor antiguo se sustituye por completo) y se codifican las claves como one-hot, la escritura sobrescribe exactamente una fila y la consulta devuelve su contenido exacto. El resultado es una memoria direccionable de verdad. Este detalle es relevante para el coste de inferencia. El estado de
¿Qué se sabe sobre Un compilador en lugar de entrenamiento?
No hay ajuste fino: el procesador se describe como un circuito de pasos pequeños, del tipo «leer un registro», «sumar» o «saltar si es cero», y el compilador convierte cada paso en un fragmento de capa de transformer. Las cabezas de atención buscan, los bloques feed-forward calculan, y las cabezas DeltaNet almacenan los registros, la memoria y el contador de programa. Cada instrucción genera varios tokens: ADDR indica la fila donde escribir, VAL aporta el valor y STEP cierra la instrucción. Esos tokens constituyen la traza de ejecución. El núcleo implementa RV32IM con la ex
¿Qué se sabe sobre Un sistema de archivos de 512 archivos y el precio del experimento?
Sobre la memoria, el autor añadió un almacenamiento experimental con las operaciones put, append, get, list y delete. El nombre del archivo se convierte en hash en uno de los 1024 slots del directorio, en el estado DeltaNet, y el texto se guarda en otras cabezas, en cadenas de ocho tokens por fila. Si hay una colisión, se comprueba el siguiente slot, de modo que la búsqueda requiere dos o tres pasos. Caben hasta 512 archivos, unos 53 000 tokens. El estado puede guardarse al final de una conversación y cargarse en la siguiente. En preguntas sobre hechos que cambiaron entre c
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
Lo esencial de la IA — una vez por semana
Siete historias que de verdad importaron, elegidas a mano. Sin ruido ni notas de prensa.
¡Listo! Revisa tu correo para la confirmación.