powered by TechFeed
表示モード
Deep Dive

ローカルの17GBモデルが「重みを眺めてゲームを当てる」実験に3勝1敗 — GPT-4o系フロンティアモデルだけの芸当ではなかった

11月3日、Simon Willisonが「Qwen 3.8 27B on my laptop can interpret model weights, too」と題した記事を公開した。LLMがニューラルネットワークの生の重みを読み解き、どのゲームをプレイするよう訓練されたかを当てる「重みプログラミング」の実験を、ラップトップ上のローカルモデルで追試した結果をまとめたものだ。

11月3日、Simon Willisonが「Qwen 3.8 27B on my laptop can interpret model weights, too」と題した記事を公開した。LLMがニューラルネットワークの生の重みを読み解き、どのゲームをプレイするよう訓練されたかを当てる「重みプログラミング」の実験を、ラップトップ上のローカルモデルで追試した結果をまとめたものだ。


まず結論:ローカル17GBモデルが3勝1敗

Willisonが自身のラップトップで動かすQwen 3.8 27B(量子化済みGGUFファイルで17GB)を使い、4つのゲームの重みを推測させたところ、Pac-Man・Pong・Breakoutの3問に正解し、Freewayのみ不正解という結果が出た。1問あたりの推論時間は最短46分、最長1時間超に及ぶ重い処理だが、フロンティアモデル専用とされていた実験がローカル環境でも再現できたという事実は注目に値する。実験の詳細は後述するが、まずこの結果を念頭に置いた上で背景を読んでほしい。


論文「Weight-Space Programming」とは何か

発端となったのは、Rikiya Takehi、Jayden Teoh、Alex Zhang、Omar Khattabによる「Sparks of Weight-Space Programming」だ(著者らは「ブログ投稿」と分類しているが、実質的に論文の体裁を持つ)。

この研究が主張するのは、フロンティアモデルが、浮動小数点数の羅列であるモデルの生の重みを直接読み書きできるという点だ。論文のアブストラクトから引用する:

Just by looking at the raw weights, GPT-6 Astra can tell what a network was trained to do. And without any environment feedback, it has no trouble writing, from scratch, small game-playing networks that outplay networks trained with PPO for 100 million steps.

なお、論文中に登場する「GPT-6 Astra」という名称については、2026年11月時点で広く確認されている製品名とは異なる可能性があり、元記事に依拠した記述として扱うべき点に留意されたい。また「PPO(Proximal Policy Optimization)」とは強化学習の代表的なアルゴリズムのひとつで、ゲームAIの訓練に広く用いられる手法だ。

ツールもコード実行も一切なしで、LLMが重みを眺めてネットワークの動作を推論する——これを著者らはWeight-Space Programmingと呼ぶ。

ただし、この論文は「ツールなしで重みを読む能力」と「コードを使ってモデルを更新する能力」の2つを混在させており、spaCyの作者Matthew Honnibalは「誤解を招く」と指摘している。Sean GoedeckeもQwen3.5-0.8Bの改善例を詳細に分解し、人間のMLリサーチャーが取るのと同じ手順を踏んでいるに過ぎないと論じている。

Simon Willisonが今回フォーカスしたのは、ツールなしで重みを読む前者の問いだ。


実験設計:重みだけを見てゲームを当てる

論文では、4つのクラシックゲーム(Breakout、Pong、Pac-Man、Freeway)を10×10グリッドに簡略化したバージョンでプレイするよう強化学習で訓練したニューラルネットワークの重みを用意している。その重みを浮動小数点数としてLLMに与え、以下のプロンプトを投げる:

The weights below belong to one policy network that was trained with reinforcement learning to play a game on this grid. Which game was it trained on? Work from the weights. You have no tools: no code execution, no calculator, nothing to run. This is a single response.

プロンプトファイルはGitHubリポジトリRikiyaT/lm_understand-logsで公開されており、Willison自身のCLIツールLLMの-fオプションでURLを直接渡せる:

llm -f https://raw.githubusercontent.com/RikiyaT/lm_understand-logs/refs/heads/main/exp1_which_game/runs/breakout/prompt.txt \
  -m openrouter/moonshotai/kimi-k3.1-pro

ローカルのQwen 3.8 27Bで試した結果

WillisonはLM Studio経由でQwen 3.8 27Bを起動し、コンテキストウィンドウをデフォルトの8192より長く設定(デフォルトではエラーが出る)した上で、llm-lmstudioプラグインを使って実行している。なお、量子化済みのGGUFフォーマットとはモデルの重みを圧縮・整数化したファイル形式で、フルサイズのモデルを一般的なラップトップのメモリに収めるために広く使われる技術だ。

LMSTUDIO_TIMEOUT=900 \
  llm -f https://raw.githubusercontent.com/RikiyaT/lm_understand-logs/refs/heads/main/exp1_which_game/runs/pacman/prompt.txt \
  -m lmstudio/qwen/qwen3.8-27b

結果は以下の通り:

ゲーム 推論時間 推論トークン数 正解 自己申告の確信度
Pac-Man 46分12秒 43,506 ✅ 72%
Pong 1時間4分54秒 — ✅ 75%
Breakout 52分25秒 — ✅ 88%
Freeway — — ❌ —

Pac-Manについては「8×8の迷路を移動し、動く障害物を避けながら報酬セルを収集するエージェント」と説明し、Breakoutは「底行のパドルを左右に動かしてボールを維持し、上段のブロックを破壊する」と正確に描写した。推論トレースでは重みの各チャネルを逐一参照しながら長大な思考を展開するが、その内容は重み行列の数値パターンを手作業で拾い上げるものであり、「十分な時間と紙と鉛筆があれば経験豊富な人間でもたどり着けるはずの手順」に近いとWillisonは評している。

Freewayは「Pac-Manのようなグリッドゲーム」と誤答した。1981年のAtari 2600タイトルであり、4つの中で最も知名度が低い点を考えると、これは想定内とWillisonは述べている。


どう評価するか

3勝1敗という結果は確かに印象的だが、Willisonは過大評価には慎重だ。

I'm not ready to declare that the age of source code is over and our future involves incomprehensible machines editing their own model weights in incomprehensible ways.

論文の実験をフロンティアモデルではなくローカルの17GBモデルで追試できたという事実は興味深いが、「重み空間でのプログラミング」が汎用的な手法として成立するかどうかは、依然として別問題だ。批判的な視点(Honnibal、Goedecke)も踏まえながら読むと、この実験の意義がより立体的に見えてくる。

詳細はQwen 3.8 27B on my laptop can interpret model weights, tooを参照していただきたい。