---
id: "lib-2026-11-02-sparks-of-weight-space-programming-llms-can"
type: "library"
title: "Sparks of Weight-Space Programming: LLMs can natively read & write neural network weights"
lang: "EN"
org: "MIT CSAIL (Takehi, Teoh, Zhang, Khattab)"
source_type: "Other"
date: "2026-11-02"
week: "2026-W45"
url: "https://nosov.ai/library/lib-2026-11-02-sparks-of-weight-space-programming-llms-can/"
original_url: "https://rikiyat.github.io/blog/weight-space-programming/"
tier: "A"
tier_name: "Strong evidence"
tier_reason: "MIT CSAIL researchers including Omar Khattab report eight controlled experiments with setups, baselines and full released logs; a blog post without peer review, mostly on small networks."
summary_basis: "full-text"
original_minutes: "25"
tags: ["ai technology", "interpretability", "ai r&d automation"]
---

# Sparks of Weight-Space Programming: LLMs can natively read & write neural network weights

Tier A (Strong evidence): MIT CSAIL researchers including Omar Khattab report eight controlled experiments with setups, baselines and full released logs; a blog post without peer review, mostly on small networks.

Summary based on the full text.

## In short

A 2 November 2026 blog post by Rikiya Takehi, Jayden Teoh, Alex Zhang and Omar Khattab (MIT CSAIL). They ask a general-purpose frontier model, GPT-6 Astra, to read, fix and write neural network weights directly, without gradient descent or training loops. They call this "Weight-Space Programming". Astra names what small networks were trained to do, repairs a stuck control policy, writes game-playing networks from zero, and removes a looping failure from Qwen3.5-0.8B. It fails on one test from weights alone and cannot add math ability to a model that does not loop.

## Key numbers

- 7.9% to 48.1%: Qwen3.5-0.8B on MATH-500 after GPT-6 Astra edited its weights, with 50 forward passes and no gradients
- 0.016%: share of Qwen3.5-0.8B weights changed by the edit (131,072 of 0.8 billion)
- 17,253: raw weights Astra read, with no tools, to name the game each of four PPO networks was trained on
- 0 to 100%: success of a failing Kinetix car policy after a one-shot edit of 3.5% of its weights (1,024 episodes)
- 517.4 vs 15.8: Breakout score of an Astra-written network from scratch vs PPO trained for 100 million steps

## What it reports

- Experiment 1: four PPO networks of identical shape (17,253 weights) trained on grid Breakout, Pong, Pac-Man and Freeway. Astra named the right game for all four, without being told the options.
- Experiment 2: from weights alone, Astra identified the shape (circle, square, triangle) each of three small diffusion models generates, though it drew outlines where the models produce filled shapes.
- Experiment 3: given only the middle blocks of three 7.2M-parameter character models, Astra named the training language (Python, romaji, English) in both attempts each and found every copying head, matching measured ground truth.
- Experiment 4: a Kinetix car policy (171,664 weights) failed in every episode; Astra's one-shot edit of 3.5% of weights succeeded in all 1,024 episodes.
- Experiment 5: networks written from scratch with no data, tools or rollouts beat PPO at 100 million steps in Breakout, Seaquest and Asterix. Against PPO at 500 million steps: 517.4 vs 25.3 in Breakout, 53.2 vs 55.2 in Asterix, 53.1 vs 88.9 in Seaquest.
- Experiment 6: a 1.5M-weight Go network for 9x9, written in a Python sandbox; with 50 forward passes it beat the equal-sized PPO network.
- Experiment 7: Astra could not tell which of two Gemma 3 270M copies was sycophantic from weights alone (four attempts); with attention patterns on its own texts it picked the sycophant in all three pairs.
- Experiment 8: Qwen3.5-0.8B loops (93% of MATH-500 answers hit the 32,768-token limit). Astra traced it to one direction in two MLP layers and edited 131,072 weights. With 50 forward passes MATH-500 rose 7.9% to 48.1%, GSM8K 13.8% to 67.1%, IFEval 21.0% to 62.3%. With 10 or 25 passes gains were small.
- On Gemma 3 270M, which rarely loops, edits moved MATH-500 by about a point at most.

## How they got it

Small networks were trained by the authors with PPO, DDPM or Adam, then given to Astra as text with rules on tools, forward passes and search per experiment. Larger cases used a Python sandbox over the weights with a fixed forward-pass budget. Benchmarks were held out from Astra. All prompts, replies, code and evaluations are released on GitHub, and a Hugging Face engineer rebuilt and re-evaluated the edited Qwen model.

## Limits

- Blog post, not peer reviewed; one model (GPT-6 Astra) tested, and attempt counts per experiment are small (often one to four).
- Most networks are tiny and trained by the authors on their own grid games, which may make the weights easier to read than production models.
- Experiments 3, 6 and 8 allow Python analysis and, in 6 and 8, model forward passes, so "native" reading applies only to the smallest cases.
- The Qwen gain is the removal of a looping fault; the Gemma result shows the method did not add ability.

## Why it matters for companies

If the result holds at scale, a frontier model could audit or patch a model's weights for a specific fault without a retraining run or a new dataset. The near-term use is narrow: diagnosing known failure modes such as looping in small open-weight models a company already runs. The Gemma control is the useful caution: weight edits removed an obstacle but did not add skill. Treat it as a research signal to watch, not a tool to deploy.

Original: https://rikiyat.github.io/blog/weight-space-programming/
