Una NES completa vive dentro de 1 GB de pesos de Qwen
A Working Nintendo in ~1GB of Qwen Weights
Un desarrollador compiló la CPU 6502 de la NES, su RAM y el ROM de un cartucho directamente en los pesos de un modelo Qwen3.5 estándar. Nadie entrenó esos pesos: un compilador calculó cada uno. Al ejecutar un juego, el modelo predice el log de ejecución instrucción por instrucción, y un pequeño programa anfitrión dibuja la pantalla y lee el mando. Super Mario Bros. y otros juegos NROM corren con exactitud bit a bit, aunque cientos de veces más lento que la consola real.
Nadie entrenó estos pesos; un compilador calculó cada uno.
- dbreunig
Un par de pensamientos sobre el proceso aquí…
Primero, Opus 5.5 construyó pesos y código funcionales con solo dos prompts:
1. Lee este artículo y cualquier código fuente relevante: https://divagr.com/blog/qwenputer. Luego explora si podrías emular el chip y la RAM de una Nintendo Entertainment System (como la gente hace hoy con FPGAs en MISTRs) usando esta técnica. Si es así, ¿qué tamaño de modelo tendrías que construir y, si pudieras usar modelos más pequeños y rápidos, podrías hacerlo funcionar a la velocidad de reloj estándar?
Devolvió gráficos que ilustraban bien que cualquier modelo sería _lento_. Pero sigue siendo divertido, así que el segundo prompt fue:
2. ¡Creo que deberíamos construirlo! Solo por diversión. No pasa nada si no es rápido. Queremos poder tener los pesos y una CLI para ejecutarlos que podamos apuntar a una ROM.
Ahora bien, aunque esta fue una ejecución _épica_ de Opus (5.5 es un modelo increíblemente capaz), este es un desafío sorprendentemente bien estructurado.
Hay una comunidad longeva e increíble de emulación de juegos clásicos en línea para que consulte. Y esa comunidad ha creado… ¡pruebas de conformidad! Opus las encontró y construyó contra una, que tiene más de 3k instrucciones doradas: https://github.com/christopherpow/nes-test-roms/blob/master/...
Además, está el repositorio original de Qwenputer que Opus usó para guiar la escritura de pesos. Eso fue esencial.
Pero este es un gran ejemplo de lo que estos modelos pueden hacer con materiales de referencia adecuados, especificaciones geniales, pruebas de conformidad y una dirección clara.
- armcat
Esto abre muchísimas oportunidades interesantes. En principio, uno podría compilar una pequeña VM dentro de los pesos del LLM. La VM puede alojar, por ejemplo, un intérprete de Python, un shell y herramientas como sed, cat, grep, etc. En lugar de que los LLM tengan que hacer una lenta emisión autorregresiva de tokens con la actual llamada a herramientas "externa", podría literalmente ejecutar todo excepto la búsqueda web, dentro del LLM, con solo operaciones de matmul. Probablemente podrías optimizar esto para que se ejecute en lotes. Podrías tener una aplicación tipo gdb que pueda recorrer paso a paso el forward pass del LLM. En fin, solo una idea loca. ¡Que tengan un gran fin de semana todos!
- pbohun
>En general, nesformer funciona entre 150 y 290 veces más lento que la consola real.
Me gustan este tipo de proyectos porque ayudan a mostrar el enorme requisito de cómputo entre los LLM y los programas ordinarios.
Hace un tiempo vi a algunas personas decir que simplemente haríamos que los LMM alucinen un sistema operativo completo en cada fotograma. Supongo que técnicamente ahora está probado que es posible, pero sería miles de veces más lento y requeriría miles de veces más cómputo (¡una diferencia de varios millones de veces respecto a un SO ordinario!).
- jacquesm
Me encantan estos hacks, aunque desde el punto de vista de la eficiencia sea horrible para mi cerebro de jugar al golf con código ensamblador. Y también da una nueva apreciación de cuánto más eficientes son los programas deterministas en comparación con la IA.
- cafebeen
Esperaba que esto solo simulara la CPU en sí, pero me sorprendió descubrir que en realidad también simulan la RAM (contenida en el propio modelo mediante la arquitectura gated deltanet). Así que, según entiendo, la CPU, la ROM y la RAM son manejadas internamente por el modelo, y las únicas entradas después de la inicialización son los eventos del mando, una locura.
- dormento
P-pero "no existe tal cosa como una Nintendo".
https://www.reddit.com/media?url=https%3A%2F%2Fi.redd.it%2F5...
"Mario te lo agradece".
- nico
> nesformer se basa en Qwenputer de Divyansh Agrawal, que compiló un CHIP-8 y luego una CPU RISC-V en Qwen3.5-4B. Reutiliza el compilador de Qwenputer y su truco central: el estado Gated DeltaNet del modelo es la memoria de la máquina
¡Esto es increíble, me encanta! Qwenputer también es muy genial
- akie
Supongo que es seguro decir que los LLM pueden ejecutar Doom.