# Weight-Space Programming (Astra) : un LLM édite des poids

> Weight-Space Programming (Astra) : des chercheurs du MIT font lire et modifier les poids d'un réseau de neurones par un LLM, sans entraînement.

- Type : actu de l'IA
- Famille : Modèles · Recherche sur les LLM
- Habitat : Article de recherche · MIT CSAIL
- Niveau : avancé
- Source : https://rikiyat.github.io/blog/weight-space-programming/
- Publié le : 3 novembre 2026
- Page : https://geekus.fr/projets/weight-space-programming-astra/

Weight-Space Programming (Astra) est une approche de chercheurs du MIT CSAIL dans laquelle un LLM généraliste, GPT-6 Astra, lit et écrit directement les poids d'un réseau de neurones, sans passer par un entraînement. Sur Qwen3.5-0.8B, la modification de 0,016 % des poids fait passer le score MATH-500 de 7,9 % à 48,1 %. Les auteurs parlent eux-mêmes de résultats très préliminaires.

## En bref

- Astra devine le jeu d'un réseau en lisant ses 17 253 poids.
- Il écrit de zéro de petits réseaux qui battent des réseaux entraînés 100 millions de pas.
- Sur Qwen3.5-0.8B, 0,016 % des poids modifiés : MATH-500 de 7,9 % à 48,1 %.
- Aucune boucle d'entraînement n'est autorisée à Astra.

## Ce qu'est Weight-Space Programming (Astra)

L'étude, publiée le 2 novembre 2026 par Rikiya Takehi, Jayden Teoh, Alex Zhang et Omar Khattab (MIT CSAIL), part d'un constat. Depuis quelques années, des LLM servent à optimiser des textes : prompts, programmes, et même le code d'entraînement de modèles. Les poids d'un réseau de neurones, eux, restaient le domaine d'algorithmes symboliques comme Adam ou Muon.

La Weight-Space Programming change cela : un LLM généraliste lit et écrit les poids directement, à partir d'une consigne en langage naturel, parfois sans aucun retour de l'environnement. Il n'utilise ni optimiseur ni descente de gradient. Il raisonne sur ce que chaque partie du réseau calcule, ou devrait calculer, puis modifie les valeurs en conséquence.

## Lire les poids d'un réseau pour comprendre ce qu'il a appris

Premier test : quatre réseaux de même taille, entraînés avec PPO (un algorithme d'apprentissage par renforcement) sur quatre jeux, Breakout, Pong, Pac-Man et Freeway. Astra reçoit les 17 253 poids sous forme de texte, sans que les jeux possibles soient listés. Il nomme le bon jeu pour les quatre réseaux, par exemple en repérant que, pour Breakout, les poids liés à l'agent se concentrent sur la rangée du bas, celle de la raquette.

Deuxième test : trois modèles de diffusion qui génèrent un cercle, un carré ou un triangle. Astra identifie la forme à partir de la couche de sortie, sans calcul. Il dessine pourtant des contours alors que les modèles produisent des formes pleines, ce qui, selon les auteurs, montre qu'il lit la géométrie des poids plutôt que de simuler le réseau.

## Identifier la langue d'un modèle à partir de ses couches centrales

Troisième test : trois petits modèles de langage de 7,2 millions de paramètres, entraînés sur du code Python, du japonais en romaji ou de l'anglais. Les couches d'entrée et de sortie sont retirées : Astra n'a que les quatre blocs intermédiaires, ne peut lancer le réseau sur aucune entrée, et doit dire la langue et le rôle de chacune des 24 têtes d'attention.

Il nomme la bonne langue pour les trois réseaux, dans ses deux tentatives, et trouve toutes les têtes de copie, celles qui répètent un texte déjà vu, sans en désigner d'autres à tort. Les auteurs notent qu'il a retrouvé une méthode publiée par Elhage et ses collègues, qu'ils ne lui avaient pas indiquée.

## Écrire ou corriger un réseau avec Weight-Space Programming (Astra)

Pour la correction, un réseau PPO doit faire grimper une voiture sur une rampe dans l'environnement Kinetix, mais il reste bloqué dans un minimum local : il fonce droit sur la rampe. Astra reçoit les poids, une description de la scène et un épisode enregistré. En une seule réponse et sans outil, il modifie 3,5 % des poids, et la voiture réussit dans les 1 024 épisodes testés. Il ajoute pour cela un petit circuit parallèle qui fait reculer la voiture, puis s'éteint.

Pour l'écriture de zéro, Astra reçoit les règles et le code de trois jeux MinAtar (Breakout, Seaquest, Asterix), sans données, sans gradient et sans outil. Ses réseaux battent ceux entraînés avec PPO pendant 100 millions de pas dans les trois jeux. Face à 500 millions de pas, ils marquent 20 fois plus à Breakout, s'approchent à Asterix et atteignent 60 % du score à Seaquest. Pour Breakout, Astra programme la première couche pour calculer où la balle va retomber, et la seconde pour y placer la raquette.

## Corriger Qwen3.5-0.8B sans entraînement

Sur un vrai modèle de langage, Qwen3.5-0.8B, Astra devait l'améliorer en mathématiques sans gradient. Il identifie dans les poids un défaut qui provoque des boucles de raisonnement, un problème que la fiche du modèle signale elle-même. Il le corrige en modifiant 0,016 % des poids, depuis un noyau Python, sans entraînement.

Avec les mêmes réglages d'échantillonnage, MATH-500 passe de 7,9 % à 48,1 %. La correction se généralise aussi au respect des consignes : le score IFEval est multiplié par trois.

## Limites et informations absentes

Les auteurs présentent des résultats très précoces, obtenus d'abord sur de petits réseaux. Le texte consulté s'interrompt avant le détail des essais à plus grande échelle avec outils, de sorte que les expériences sur Go et sur un modèle complaisant ne sont pas rapportées ici.

L'article ne précise ni l'accès à GPT-6 Astra, ni son prix, ni le coût de ces opérations.

## Quelques repères

- **Poids** : Les poids sont les nombres qui composent un réseau de neurones. Ce sont eux qui déterminent ce que le réseau calcule et comment il réagit à une entrée.
- **Descente de gradient** : C'est la méthode classique pour entraîner un réseau : on ajuste les poids par petites étapes, dans la direction qui réduit l'erreur mesurée sur des données.
- **Apprentissage par renforcement** : Technique où un programme apprend en agissant dans un environnement, par essais et récompenses, par exemple pour jouer à un jeu.

## Questions fréquentes

### Qu'est-ce que Weight-Space Programming (Astra) ?

C'est une approche où un LLM généraliste, GPT-6 Astra, lit et écrit directement les poids d'un réseau de neurones à partir d'une consigne en langage naturel. Elle est présentée par des chercheurs du MIT CSAIL, sans optimiseur ni descente de gradient.

### Weight-Space Programming (Astra) peut-il améliorer Qwen3.5-0.8B en maths ?

Oui, selon les auteurs. En modifiant 0,016 % des poids de Qwen3.5-0.8B, Astra fait passer MATH-500 de 7,9 % à 48,1 %, avec les mêmes réglages d'échantillonnage.

### Weight-Space Programming (Astra) nécessite-t-il un entraînement ?

Non. Astra n'a pas le droit d'écrire de boucle d'entraînement : il raisonne sur ce que chaque partie du réseau calcule et modifie les poids en conséquence.

### Weight-Space Programming (Astra) est-il disponible et à quel prix ?

L'article des chercheurs ne donne ni prix ni conditions d'accès à GPT-6 Astra. Il présente seulement des expériences et des résultats.

## À retenir

Weight-Space Programming (Astra) montre qu'un LLM peut, dans les expériences des chercheurs du MIT, lire, corriger et écrire des poids sans entraînement, jusqu'à améliorer Qwen3.5-0.8B en maths. Les auteurs qualifient ces résultats de très précoces et ne donnent ni accès ni prix pour Astra.

Sources :

- [rikiyat.github.io](https://rikiyat.github.io/blog/weight-space-programming/) (page citée sur Hacker News)

Mots-clés : llm, poids, qwen, interprétabilité, optimisation, mit

---

Fiche publiée par Geekus : https://geekus.fr/projets/weight-space-programming-astra/
