nesformer 将 NES CPU 编译进 Qwen 权重
nesformer 项目通过编译器生成标准 Qwen3_5ForCausalLM 检查点,其中包含模拟的 NES 6502 CPU、2 KB 工作内存和卡带程序 ROM,而非通过训练获得这些权重。游戏运行时,模型逐 Token 预测 CPU 执行日志,宿主程序则负责渲染、手柄输入和垂直空白中断。项目称其内置测试的每一帧都与传统 6502 模拟器一致,但每帧约需 1–6 秒,且 PPU 与 APU 不在权重之中。
nesformer 展示了标准语言模型检查点可以编码可编程 CPU,并利用其循环状态充当机器内存,是一项具有技术新意的 AI 权重实验,而不是经过训练的通用模型。
An NES CPU compiled into the weights of a stock Qwen3.5 model.
The NES's 6502 CPU (the core of its 2A03 chip), its 2 KB of work RAM, and a cartridge's program ROM run inside a standard Qwen3_5ForCausalLM checkpoint. Nobody trained these weights; a compiler computed every one. When you play a game, the model predicts the CPU's execution log one token at a time. A small host program plays the rest of the console around it: it draws the picture, reads the controller, and fires the vblank interrupt.
nesformer builds on Qwenputer by Divyansh Agrawal, which compiled a CHIP-8 and then a RISC-V CPU into Qwen3.5-4B. It reuses Qwenputer's compiler and its central trick: the model's Gated DeltaNet state is the machine's memory.
| Super Mario Bros. (World 1-1) | Full Game by Doug Fraker (title screen and first level) |
|---|---|
Every CPU token in these runs came from the model. For the bundled test games, every frame also matches a conventional 6502 emulator's output exactly (see How it was checked).
#nesformer#Qwen3.5-4B#Qwenputer#Nintendo Entertainment System#Super Mario Bros.#Gated DeltaNet