# Super Marioを実行するLLM

> メモリの動作方法にわずかな変更を加えることで、ニューラルネットワークの状態をプログラム可能なマシンに変えられる可能性があります。意外な成果は速度ではなく、学習された振る舞いと設計された計算との間に新たな境界が生まれることです。

- Source: https://www.stork.ai/blog/ja/the-llm-that-runs-super-mario
- Publisher: Stork.AI editorial team
- Published: 2026-11-08
- Updated: 2026-11-08
- Language: ja
- Reading time: 4 min

## 巧妙なツール呼び出しではなく、コンピューターそのもの

新たな実装であるQwenputerは、32ビットの**RISC-V CPU**をAlibabaのQwen 3.5 4Bモデルの重みに直接組み込みます。この革新的なアプローチは、ツール呼び出しやサンドボックス環境といった従来の手法を介さず、計算をすべてモデルのフォワードパス内で実行します。CPUは外部のユーティリティではなく、文字どおりニューラルネットワークのパラメーターの中にエンコードされています。

専用コンパイラーの**chipformer**が、CPUの回路記述を特定のアテンションとMLPの重みに変換します。この処理により、CPUに11層のコンパイル済みレイヤーが割り当てられ、Qwen本来の32層の前段に追加されます。重要な点として、コンパイラーがモデルのパラメーターを直接プログラムするため、この統合に追加の学習は不要です。

つまり、命令の実行はモデルのフォワードパスを通じて行われ、意図的に設計された回路として動作します。これは、通常のLLMが自然に計算能力を獲得する場合とは区別する必要があります。Qwenputerは、モデルのアーキテクチャに組み込まれた、決定論的でハードコードされたCPUです。公式のRISC-Vテストに合格し、CないしMicroPythonのバイナリを内部で実行します。

## 一見して分からないメモリの工夫

あらゆるCPUにとって、メモリは中心的な課題です。Qwenputerの独創的な解決策は、Qwen 3.5 4Bの4層のアテンションのうち3層に見られる**Gated DeltaNet**の仕組みを転用し、固定容量のRAMとして機能させるというものです。通常、このリカレント状態は徐々に減衰し、モデルが古い情報を「忘れる」ようになっています。

しかし、保持ゲートを`1`に固定することで、保存された値は通常の減衰に逆らって無期限に保持されます。更新強度を`1`に設定すると、新しい書き込みは既存のデータと混ざることなく、完全に上書きします。さらに、**ワンホットキー**を使うことで、各書き込み操作が状態行列内の特定の行に振り向けられ、正確にアドレス指定できるメモリが実現します。

これは、コンテキスト長に応じて増大し続けるTransformerのKVキャッシュとは対照的です。Qwenputerのメモリは有限で、意図的に構成されたものであり、会話の記憶のための無限の保存領域でも、汎用のファイルシステムでもありません。これにより、**Qwenの11層**にまたがって組み込まれた32ビットのRISC-V CPUは専用のメモリにアクセスでき、公式の`riscv-tests`に合格し、モデルのフォワードパス内でCとMicroPythonを実行します。

## CPUテストの合格からMarioのプレイまで

Qwenputerの**RISC-V CPU**は、`rv32ui`、`rv32um`、`rv32uzba`を含む公式の`riscv-tests`スイートに合格し、その機能を実証しました。CおよびMicroPythonのバイナリをモデルのフォワードパス内で直接実行することにも成功し、決定論的な実行経路を示しています。QEMUに対して約230,000件の出力を再生した結果、不一致はゼロであり、コンパイルされたCPUが忠実に動作していることが確認されました。

この新しい構成により、特定の性能向上も得られました。DeepMindの大規模乗算ベンチマーク`mul_big`において、Qwen 3.5 4Bのスコアは55%から**97.5%**に上昇しました。この向上は、組み込まれたCPUの正確な演算能力によるものであり、LLM本来の推論能力が全般的に高まったわけではありません。技術的な詳細については、プロジェクトのリポジトリをご覧ください:[GitHub - divagr18/qwenputer: A computer, compiled into the weights of a language model](https://github.com/divagr18/qwenputer)。

この基盤をもとに、**Nesformer**プロジェクトはNintendo Entertainment System(NES)をQwen 3.5にコンパイルしました。NESの6502 CPU、2 KBのRAM、さらにはゲームカートリッジのデータまでを、モデルの重みに直接組み込んでいます。入力、グラフィックス、音声、割り込みは軽量なホストが引き続き管理しますが、Nesformerは*Super Mario Bros.*を実行できます。ただし動作は低速です。1フレームの処理に1~6秒かかり、10秒分のゲームプレイには約25分の推論が必要です。

## 真のブレークスルーはフレームレートではありません

Nesformerの見どころであるLLM内でのSuper Mario Bros.の動作は、冷静に捉える必要があります。1フレームの描画には約1~6秒かかります。つまり、わずか10秒分のゲームプレイに約25分の計算が必要となり、リアルタイムのエミュレーターとしては実用的ではありません。

真の意義はフレームレートではなく、その根底にある技術的成果にあります。この研究は、LLMの内部計算が本質的にあいまいなものや学習されたものではなく、決定論的かつ正確になり得ることを示しています。慎重にコンパイルされたモデルの重みは再現可能な演算を実行し、ニューラルネットワークを不透明で確率的なシステムとみなす従来の見方に異議を唱えています。

これにより、精度が重視されるAIワークフローを統合する道が開かれます。コンパイルされた演算やステートマシンのブロックは、絶対的な正確性が求められる次のようなタスクを支える可能性があります - 暗号 - 科学シミュレーション - 産業用制御システム

概念実証の段階であり、このアプローチが外部ツールやCPUに取って代わるものではありません。統合、容量の拡張、速度、検証には課題が残っています。しかし、将来のLLMが学習された能力に加えて**ハードコードされた計算モジュール**を組み込み、あいまいな推論と**正確な実行**の両方を必要とする新たな領域へ活用の幅を広げる可能性を強く示唆しています。

## よくある質問

### Qwenputerとは何ですか?

Qwenputerは、32ビットのRISC-Vコンピューターを重みに直接コンパイルして組み込んだQwen 3.5 4Bモデルです。

### QwenputerはLLMのメモリをどのようにRAMとして使用していますか?

Gated DeltaNetのリカレント状態を設定することで、値が保持され、上書きでき、ワンホットキーでアドレス指定できるようにします。

### Qwenputerは外部ツールを呼び出してコードを実行しますか?

コンパイルされたCPUは、命令を外部のインタプリタに渡すのではなく、モデルのフォワードパス中に実行します。

### Nesformerはスーパーマリオをリアルタイムでプレイできますか?

いいえ。1フレームに約1~6秒かかるため、約10秒分のゲームプレイの計算には約25分かかることがあります。
