LLM Game of Life

Construire un LLM

Inspiré des concepts réels des LLM, ce projet propose une version visuelle et simplifiée basée sur un Game of Life.

01 | introduction @matyo91

LLM en 30 secondes

Un LLM prédit la suite.

Probabilité

Il choisit ce qui semble le plus probable.

Séquence

Il avance étape par étape.

Tokens

Les mots sont découpés en petits morceaux.

02 | llm @matyo91

Récap

Les grandes idées à retenir.

Tokens
→
Probabilités
→
Génération
→
Training
03 | concepts @matyo91

Training

Un modèle apprend avec plusieurs signaux.

Pretraining

Explorer beaucoup de données.

Fine-tuning

Se rapprocher d'une cible.

RLHF

Préférer une réponse à une autre.

04 | training @matyo91

Transition

Et si on rendait tout ça visible ?

Mots
→
Pixels
→
Animation

Au lieu de générer du texte, on génère une grille qui bouge.

05 | transition @matyo91

Projet

Un LLM… mais avec des pixels.

Game of Life
Programmes lambda
Algorithme génétique
Frames streamées
06 | overview @matyo91

Mapping

Le vocabulaire LLM devient visuel.

TokenCellule
GénérationFrame
ModèleProgramme
TrainingÉvolution
07 | mapping @matyo91

Unsupervised

Sans cible: on cherche du mouvement intéressant.

Exploration

Des programmes sont testés au hasard.

Score

Mouvement, entropie, durée de vie.

Évolution

Les meilleurs survivent et mutent.

08 | unsupervised @matyo91

Supervised

Avec une cible: reproduire un motif.

Glider
Block
Beacon
→
Programme gagnant
09 | supervised @matyo91

Préférences

Version simplifiée de RLHF: comparer deux sorties.

Animation A
vs
Animation B
→
On garde la meilleure

Ce n'est pas un vrai RLHF. C'est l'idée, rendue visible.

10 | rlhf @matyo91

Streaming

Chaque chunk devient une frame.

NDJSON
→
SSE
→
Canvas
→
Animation
11 | streaming @matyo91

Live

Demo

Live demonstration of training and generation

12 | demo @matyo91

Conclusion

Ce projet n'est pas un LLM… mais un outil pour les comprendre.

Les tokens deviennent visibles. Le training devient observable. La génération devient une animation.

13 | conclusion @matyo91