hands-on-modern-rl : un manuel de RL qui va du CartPole à l'alignement de LLM
🚀 An open-source, hands-on curriculum bridging the gap from basic RL concepts to LLM alignment, RLVR, and advanced Agentic systems.
En bref
- De quoi s’agit-il ?
- Le dépôt walkinglabs/hands-on-modern-rl est un manuel en ligne, doublé de notebooks et de scripts d'entraînement, qui relie les algorithmes de RL classique aux méthodes d'alignement de modèles de langage. Voici ce que la documentation permet réellement de vérifier, et ce qu'elle laisse en suspens.
- À qui s’adresse-t-il ?
- À adopter si vous cherchez un support de cours progressif, du MDP au RLHF, avec des notebooks exécutables sur ModelScope et des scripts d'entraînement versionnés. À éviter si vous devez livrer un pipeline d'alignement en production : le dépôt se présente lui-même comme un texte pédagogique non entièrement relu, et l'avertissement des auteurs sur d'éventuelles erreurs factuelles ou du code qui ne tourne pas doit être pris au sérieux.
- Puis-je l’utiliser commercialement ?
- À vérifier. La licence de ce dépôt n’entre pas dans les catégories que nous classons automatiquement : lisez son fichier LICENSE avant tout usage commercial.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 13 jours.
- En quel langage est-il écrit ?
- Principalement Python, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 15 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Le trou que le dépôt prétend combler
La plupart des ressources en apprentissage par renforcement s'arrêtent à un moment précis. Soit elles traitent les MDP, Q-learning et policy gradients sur des environnements jouets, soit elles attaquent directement DPO, GRPO et RLHF en supposant que le lecteur sait déjà ce qu'est une fonction de valeur. Le README de hands-on-modern-rl annonce vouloir faire le pont entre les deux, avec une sous-titre explicite : des processus de décision markoviens et l'optimisation de politique jusqu'aux modèles de raisonnement, aux agents et aux systèmes multimodaux. Le public visé est donc un ingénieur ou un étudiant qui a déjà programmé en Python et veut comprendre pourquoi PPO fonctionne avant de lancer un entraînement GRPO. Le dépôt liste dans ses topics agentic-rl, dpo, grpo, llm-alignment, ppo, rlhf et sft. Ce ne sont pas des dépendances mais bien les sujets couverts par le texte.
Une architecture en trois couches : texte, notebooks, scripts
Le dépôt n'est pas une bibliothèque importable. Il combine un manuel rédigé, un site VitePress pour la lecture en ligne, et du code d'expérimentation. Le README décrit deux familles de code. D'un côté, des notebooks dits en ligne, hébergés sur ModelScope, où un Studio regroupe l'interface, le runtime et le point d'entrée d'entraînement sur une seule page. Le notebook compagnon, situé sous code/online-experiments, importe le même runtime que le Studio, expose les paramètres de l'expérience, imprime le journal d'entraînement complet, trace les évaluations de checkpoints et affiche le replay de la politique apprise. De l'autre, des scripts d'entraînement versionnés dans le dépôt, dont un train.py accessible via ModelScope pour l'expérience CartPole. Le flux est donc : lire un chapitre, ouvrir le notebook correspondant, observer les courbes, revenir au texte. Les auteurs précisent que le manuel a été créé avec l'aide d'une IA et n'a pas encore été entièrement relu. C'est une information structurante, pas une clause de style.
Ce que contiennent les expériences en ligne
Le tableau du README recense des expériences numérotées avec leur ressource matérielle. L'expérience 01, CartPole PPO, tourne sur CPU. Le Gymnasium Playground également. L'expérience 02, ViZDoom, sur CPU. L'expérience 03, Atari / ALE, exige un xGPU. L'expérience 04 couvre les jeux de plateau et le self-play, sur CPU. L'expérience 05 traite les jeux multi-agents, également sur CPU. Cette répartition a une conséquence pratique : la majorité des environnements classiques s'exécutent sans GPU, et seul Atari impose une accélération matérielle. Le README mentionne aussi des ajouts plus récents, datés du 13 mai 2026 : des exemples reproductibles pour l'Agentic RL (Deep Research / rLLM) et pour le contrôle continu Actor-Critic, ainsi que des expériences VLM RL sur un raisonnement géométrique GeoQA. Ces éléments sont annoncés dans la section News, pas détaillés dans l'extrait de README fourni.
Mettre le dépôt en route
Pour la partie livre, le README indique une dépendance à Node.js en version 18 ou supérieure et un site construit avec VitePress. Les badges du dépôt confirment ces deux points. Le README ne fournit pas, dans l'extrait disponible, la séquence exacte de commandes d'installation et de lancement local du site : il faut se référer au dossier docs et à la configuration VitePress pour la reconstituer. Pour la partie expérimentale, deux chemins sont documentés. Le premier passe par le navigateur : ouvrir un Studio ModelScope, par exemple hands-on-modern-rl-experiment01-cartpole, et lancer l'entraînement sans configurer d'environnement local. Le second passe par le notebook compagnon sous code/online-experiments, qui expose les paramètres et imprime le journal complet. Un script train.py est également accessible depuis l'interface ModelScope du Studio CartPole. Les PDF des éditions chinoise et anglaise sont générés automatiquement par CI, selon la section News.
La licence et ce qu'elle implique
Le badge du README affiche CC BY-NC-SA 4.0, alors que le champ license du dépôt renvoie NOASSERTION. Les deux ne concordent pas, et cette divergence mérite d'être signalée avant tout usage. Si l'on s'en tient au badge, la clause NC exclut l'exploitation commerciale du contenu, et la clause SA impose de partager les adaptations sous la même licence. Concrètement, réutiliser des chapitres dans une formation interne payante ou dans un produit commercial n'entre pas dans ce cadre. La clause SA s'applique aussi aux traductions et aux remix. Le fichier LICENSE cité par le badge est le seul document faisant foi ; la mention NOASSERTION signifie que l'outil d'analyse du dépôt n'a pas su classer la licence automatiquement, pas que le dépôt est sans licence. Pour un usage en entreprise, la première vérification porte donc sur le contenu réel de ce fichier LICENSE.
Les limites que les auteurs annoncent eux-mêmes
Le dépôt place un avertissement en tête de la section News : le cours a été créé avec une assistance IA et n'a pas encore été entièrement relu, il peut contenir des erreurs factuelles ou du code qui ne s'exécute pas comme prévu. Une annonce en haut du README indique par ailleurs qu'une nouvelle version arrive et que de nombreuses sections sont encore en cours d'organisation. Le numéro de version le plus récent fourni est v0.2.1, daté du 18 juin 2026, après v0.1.6 et v0.1.5 en mai 2026. La progression des versions sur un mois suggère un texte encore mouvant. Autre point : l'extrait de README ne détaille pas les prérequis matériels des expériences Agentic RL et VLM RL, seulement ceux des expériences classiques. Enfin, la dépendance à ModelScope pour l'exécution en ligne place le runtime d'entraînement chez un tiers : un lecteur qui veut tout faire en local doit se fier aux scripts du dépôt, dont l'extrait ne documente qu'un seul exemple nommément, train.py pour CartPole.
Face à quoi le comparer
L'alternative la plus directe n'est pas un autre dépôt mais un cours universitaire classique, par exemple la série de David Silver ou le livre de Sutton et Barto. La différence d'approche est nette : ces ressources construisent la théorie de façon rigoureuse mais ne descendent pas jusqu'à l'alignement de LLM, et elles ne fournissent pas de notebooks exécutables en navigateur. À l'inverse, une bibliothèque comme TRL de Hugging Face donne du code d'entraînement pour SFT, DPO et PPO, mais ce n'est pas un manuel : elle suppose que vous savez déjà ce que vous voulez entraîner et pourquoi. hands-on-modern-rl se situe entre les deux, avec un texte qui explique et du code qui tourne, au prix d'une relecture encore incomplète. Le choix dépend donc de ce que vous cherchez : une référence théorique stable, une boîte à outils de production, ou un parcours guidé avec des expériences intermédiaires.
Conclusion éditoriale
À adopter si vous cherchez un support de cours progressif, du MDP au RLHF, avec des notebooks exécutables sur ModelScope et des scripts d'entraînement versionnés. À éviter si vous devez livrer un pipeline d'alignement en production : le dépôt se présente lui-même comme un texte pédagogique non entièrement relu, et l'avertissement des auteurs sur d'éventuelles erreurs factuelles ou du code qui ne tourne pas doit être pris au sérieux. Avant de vous engager, vérifiez le contenu réel de code/online-experiments/README.md et l'état des sections encore en cours de rédaction dans la version v0.2.1.
Notes de la communauté