Les Large Language Models (LLM) reposent sur des concepts abstraits : distribution de probabilité, génération autoregressive, optimisation à grande échelle.
Ces mécanismes sont difficiles à observer directement.
Une approche alternative consiste Ă projeter ces concepts dans un systĂšme visuel et dĂ©terministe, permettant dâen Ă©tudier les dynamiques.
Ce travail sâinspire dâune dĂ©monstration initiale partagĂ©e sur Twitter : Allen Explains thread
Lâobjectif est de construire un prototype pĂ©dagogique permettant de :
-
représenter une génération séquentielle
-
observer un processus dâoptimisation
-
comparer diffĂ©rents rĂ©gimes dâentraĂźnement
Architecture du systĂšme
Le prototype est implémenté en PHP (Symfony 8) et repose sur quatre composants principaux :
-
Automate cellulaire (Game of Life)
-
Langage lambda (AST JSON)
-
Algorithme génétique
-
Pipeline de streaming (NDJSON + SSE)
Code source complet : llm-game-of-life
Représentation : du texte à la grille
Un LLM modélise une distribution :
[ P(x_1, x_2, ..., x_n) ]
décomposée en :
[ \prod_{t=1}^{n} P(x_t \mid x_{<t}) ]
Dans ce prototype, cette structure est transposée :
| LLM | Prototype | | -------------- | ---------- | | Token | Cellule | | Séquence | Grille | | Génération | Frame | | ModÚle | Programme | | Inference loop | Simulation |
Chaque frame correspond à une étape de génération.
Le flux SSE produit une séquence :
frameâ â frameâ â frameâ â âŠ
équivalente à une génération autoregressive.
ModÚle : programme plutÎt que réseau
Contrairement aux LLM traditionnels, aucun rĂ©seau de neurones nâest utilisĂ©.
Le modĂšle est dĂ©fini comme un programme dans un mini langage lambda, reprĂ©sentĂ© sous forme dâAST JSON :
{ "type": "sequence", "nodes": [ { "type": "birth", "x": 1, "y": 1 }, { "type": "next" } ] }
Ce programme agit comme une fonction de transition sur la grille.
Cette approche remplace :
-
les poids dâun modĂšle â par des instructions
-
les couches â par des transformations explicites
Optimisation : algorithme génétique
LâentraĂźnement repose sur une population de programmes.
Chaque génération suit :
-
Ăvaluation (fitness)
-
Sélection
-
Crossover
-
Mutation
-
Ălitisme
Ce processus remplace la descente de gradient.
Entraßnement non supervisé
Le mode non supervisé maximise une fonction de fitness basée sur :
-
entropie (diversité)
-
mouvement (variation entre frames)
-
durée de vie
Objectif :
[ \text{fitness} = f(\text{entropy}, \text{motion}, \text{lifetime}) ]
Ce régime est analogue au pretraining :
-
absence de cible
-
exploration du espace de solutions
Entraßnement supervisé
Le mode supervisé introduit une cible :
-
glider
-
blinker
-
block
La fitness devient :
[ \text{fitness} = -d(\text{frame}, \text{target}) + \lambda \cdot \text{penalty} ]
oĂč :
-
(d) est une distance entre grilles
-
la pénalité limite la taille des programmes
Ce mode correspond Ă un fine-tuning.
Préférences et sélection
Un mĂ©canisme de comparaison peut ĂȘtre introduit :
-
deux programmes produisent deux séquences
-
une préférence est appliquée
-
la sélection favorise le meilleur
Ce schéma correspond à une simplification de RLHF / DPO :
[ \max \log P(\text{preferred}) - \log P(\text{rejected}) ]
Génération et streaming
Les résultats sont produits en NDJSON et diffusés via SSE :
-
chaque chunk = une frame
-
chaque stream = une génération
Interface de visualisation basée sur canvas :
-
rendu matriciel
-
affichage temps réel
-
métriques (fitness, génération, seed)
Slides de présentation : slidewire presentation
Benchmark et reproductibilité
Le systĂšme inclut un pipeline de benchmark :
-
seed déterministe
-
double exécution
-
hash de séquence
Métriques :
-
durée (duration_ms)
-
mémoire (peak_memory_mb)
-
fitness finale
-
reproductibilité
Limites
Ce prototype ne vise pas à reproduire un LLM réel :
-
pas de transformer
-
pas de tokenisation
-
pas de modĂšle probabiliste
-
pas de gradient
Il sâagit dâune analogie computationnelle, utile pour :
-
observer une dynamique dâoptimisation
-
visualiser une génération séquentielle
-
comparer diffĂ©rents rĂ©gimes dâapprentissage
Conclusion
Les LLM modernes reposent sur des mécanismes difficiles à appréhender directement.
La transposition dans un systĂšme visuel permet de :
-
rendre observable la génération
-
matĂ©rialiser lâoptimisation
-
isoler les concepts fondamentaux
Cette approche ne remplace pas les modĂšles existants, mais propose un outil dâexploration conceptuelle.
-
Source de la publication twitter : https://x.com/allen_explains/status/2044757995549319172?s=12
-
Les source du projet : https://github.com/matyo91/llm-game-of-life
-
Les slides de la présentation : https://github.com/matyo91/slidewire
Ressources
-
What are the principles we can use to build LLM-powered software that is actually good enough to put in the hands of production customers? https://github.com/humanlayer/12-factor-agents
-
AIE Miami Keynote & Talks ft. OpenCode. Google Deepmind, OpenAI, and more! : https://www.youtube.com/watch?v=6IxSbMhT7v4
-
AIE Miami Day 2 ft. Cerebras, OpenCode, Cursor, Arize AI, and more! : https://www.youtube.com/watch?v=DeM_u2Ik0sk
-
Comment l'IA transforme le génie logiciel : une conversation avec Gergely Orosz, @pragmaticengineer : https://www.youtube.com/watch?v=CS5Cmz5FssI
-
Microsoft at ICLR 2026: Deep Learning, LLM Reasoning, Generative Models : https://www.linkedin.com/pulse/microsoft-iclr-2026-deep-learning-llm-reasoning-generative-h74se/
-
ASUS DGX Spark: KI auf dem Schreibtisch â Nie wieder TokenâKosten! | Live Modellvergleich : https://www.youtube.com/watch?v=dP4zE-DTWAg
-
đŁ [SOMMET VIRTUEL JOUR 1/5] Comment dĂ©passer 99% des gens grĂące Ă l'IA : https://www.youtube.com/watch?v=yzhg9Ks859I
-
PrĂȘt Ă faire tourner votre propre agent ? : https://hermes-agent.org/fr/
-
PaperClip + Agent HermĂšs, c'est de la folie ! : https://www.youtube.com/watch?v=PUaZ5o8u0wY
-
30-minute workshop by the creator of Claude Code that will teach you more about vibe-coding : https://x.com/heyamit_/status/2046489651775713498?s=46
-
What Young People Expect from HR: Why the Generational Approach is a Misleading Concept : https://www.insign.fr/en/insights/young-workforce-expectations-generational-approach-an-intellectual-scam
âïž Construire une architecture multi-agent gouvernĂ©e avec Symfony AI, Flow et Navi
đ LevĂ©e de fonds vs Bootstrap : deux chemins pour construire une boĂźte
đ DJ Matyo Live - Soundcloud set
đ€ Symfony AI in Action - Construire des systĂšmes IA rĂ©els avec Symfony
đł Agentic Workflows avec Docker - vers des systĂšmes autonomes, sĂ©curisĂ©s et orchestrĂ©s
đšâđ» Ăvaluation comparative de petits modĂšles de langage dans le monde rĂ©el
đ Sundays Lab #3 - Quand lâIA devient un terrain de jeu collectif
âïž Message-oriented vs Data-oriented orchestration - de la donnĂ©e Ă la connaissance
đ€© RelĂącher les connecteurs - Des outils au langage
đĄ Jâai créé une app IA RGPD en 1h avec Symfony
đïž Hellcats Over The Pacific - ouverture des archives
đ§ Ne rien dĂ©voiler. Tout montrer â BĂątir des systĂšmes publics sur des fondations privĂ©es
đŹ La vidĂ©o la plus chĂšre de ma chaĂźne YouTube đ°
đš Darkwood v1.0.4 - PrĂ©sentation du design V4
đŸ Darkwood : CrĂ©er un jeu tactique axĂ© sur les API
đ CrĂ©ation d'une application PHP MCP pour publier des articles Darkwood
đ Je construis un moteur de dictĂ©e en PHP (Flow + Symfony + Whisper.cpp)
âïž DĂ©couverte de l'extension cataclysme Hearthstone
đ€ DĂ©veloppement parallĂšle d'IA avec Cursor et Git Worktrees
đ€ Comment rendre Darkwood prĂȘt pour les agents