Comment entraîner des agents basés sur des LLM avec du RL sur vos propres GPU
L'entraînement de modèles de langage avec l'Apprentissage par Renforcement a longtemps été associé à des clusters massifs et des laboratoires fermés. Si le SFT (Supervised Fine-Tuning) est devenu une routine pour les ingénieurs ML, exécuter de manière fiable du PPO ou du GRPO pour des agents multi-étapes a toujours été un véritable défi. Soit vous deviez écrire votre propre code wrapper autour de vLLM et DeepSpeed, soit vous deviez accepter les limitations des frameworks prêts à l'emploi.
Des chercheurs du Berkeley Sky Computing Lab ont décidé de simplifier ce processus et ont rendu le projet SkyRL open source. Il s'agit d'un framework complet qui couvre l'ensemble du cycle de fine-tuning par RL : de la génération de trajectoires en isolation à la mise à jour des poids du modèle pendant l'exécution.
De quoi se compose le framework
Les développeurs n'ont pas construit un système monolithique. Ils ont plutôt divisé le projet en plusieurs couches indépendantes qui peuvent être facilement combinées pour vos tâches spécifiques.
La couche centrale skyrl gère l'orchestration de l'entraînement sur votre matériel. Elle combine un moteur d'entraînement et de l'inférence distribuée. La fonctionnalité principale de cette couche est le support du standard ouvert de l'API Tinker. Vous pouvez écrire un script d'entraînement une fois et l'exécuter sur un serveur local avec des GPU NVIDIA ou AMD ainsi que dans le cloud.
La couche skyrl-gym fournit une interface pour créer des environnements d'entraînement. Contrairement au classique Gymnasium pour la robotique, ici les environnements sont adaptés aux interactions textuelles et au code. Vous obtenez out-of-the-box le support des bases de données SQL, des interpréteurs Python, des moteurs de recherche et du terminal Linux.
La couche skyrl-agent se concentre sur les tâches à long terme. Elle aide à entraîner des agents qui effectuent des dizaines d'étapes séquentielles, appellent des utilitaires externes et ajustent leurs actions en fonction des réponses de l'environnement.
Résultats en pratique
Un framework de qualité n'est pas défini par le nombre d'abstractions mais par des métriques réelles. L'équipe du projet a démontré les capacités de la bibliothèque sur la tâche Text-to-SQL.
Les auteurs ont pris un modèle standard de 7 milliards de paramètres et ont effectué un entraînement RL via le pipeline SkyRL-SQL. Le jeu de données ne contenait que 653 exemples d'entraînement. Le modèle n'a pas simplement mémorisé les requêtes SQL correctes — il a appris à les exécuter dans un vrai SGBD, à recevoir des erreurs d'exécution et à corriger la syntaxe à l'étape suivante. Résultat : ce petit modèle a surpassé les services commerciaux GPT-4o et o4-mini en précision de génération sur des benchmarks spécialisés.
Un autre exemple intéressant est l'intégration avec l'environnement Harbor pour l'entraînement d'agents en ligne de commande. Le modèle apprend à travailler dans un vrai terminal : éditer des fichiers, exécuter des tests, trouver des bugs dans des dépôts et déployer des environnements sans intervention humaine.
Détails de l'implémentation technique
Dans l'entraînement RL traditionnel des modèles, l'inférence et l'entraînement se bloquent souvent mutuellement. Le modèle génère des réponses, le processus s'arrête, les gradients sont calculés, les poids sont mis à jour, et seulement ensuite une nouvelle itération commence. SkyRL implémente un mode entièrement asynchrone avec des mises à jour de poids dites in-flight.
Pendant que l'acteur génère de nouveaux tokens et interagit avec l'environnement, le processus d'entraînement met simultanément à jour les paramètres du modèle. Les nouveaux poids sont transmis au service d'inférence à la volée, ce qui réduit considérablement les temps d'arrêt des accélérateurs coûteux.
La bibliothèque ne réinvente pas la roue à partir de zéro. En coulisses, elle utilise des solutions éprouvées de la communauté open source : des idées de veRL, OpenRLHF et Search-R1.
Où le projet a déjà trouvé des applications
Malgré sa jeunesse, le framework est déjà devenu la base de plusieurs projets de recherche tiers.
Une équipe de Stanford a utilisé SkyRL pour créer Biomni-R0. Il s'agit d'un agent capable de résoudre des tâches biomédicales complexes et de construire des chaînes logiques au niveau expert. Le projet CodeScout a appliqué le framework pour la localisation précise de bugs dans le code au sein du benchmark SWE-Bench. Des projets comme OpenThoughts-Agent et Endless Terminals sont également développés sur la base de la bibliothèque, où le RL est utilisé pour la génération procédurale de tâches dans les terminaux Linux sans étiquetage manuel des données.
Par où commencer les expérimentations
Vous aurez besoin d'un serveur Linux avec plusieurs GPU et PyTorch installé. Le processus d'installation est standard pour les projets Python :
Ensuite, vous pouvez exécuter l'une des recettes d'entraînement prêtes à l'emploi. Par exemple, pour lancer la boucle RL la plus simple sur des tâches de math ou SQL, il suffit d'appeler le script correspondant depuis le dossier examples :
Si vous voulez intégrer votre propre environnement, il suffit d'hériter de la classe de l'API Gymnasium et de définir les méthodes step() et reset(). Le modèle recevra les observations sous forme de texte ou de réponses système et retournera du texte généré comme action.
Vaut-il la peine de l'adopter pour vos projets
SkyRL sera utile pour les équipes R&D et les ingénieurs qui ont dépassé le SFT standard et veulent extraire les performances maximales des modèles de taille moyenne. Apprendre à un LLM à utiliser des outils dans un domaine spécifique via le RL est une voie viable pour surpasser les modèles propriétaires généralistes en précision et en coût de requête.
La principale mise en garde : le projet est en développement actif. Le dépôt compte environ 400 issues ouvertes, et l'architecture des modules individuels continue d'évoluer. Si vous avez besoin d'une solution clé en main prête à l'emploi avec un bouton "ça marche juste", vous voudrez peut-être attendre un peu. Mais si vous êtes prêt à plonge dans le code et cherchez une base flexible pour vos propres agents RL, SkyRL vous fera gagner des mois de développement.
Projets similaires