ByteDance Seed et Tsinghua AIR présentent « CUDA Agent » : un dispositif d’apprentissage par renforcement agentique à grande échelle pour la génération de noyaux CUDA

L’actualité du jour apporte un éclairage intéressant sur l’évolution du domaine.

ByteDance Seed et Tsinghua AIR présentent « CUDA Agent » : un dispositif d’apprentissage par renforcement agentique à grande échelle pour la génération de noyaux CUDA

ByteDance Seed et Tsinghua AIR ont lancé CUDA Agent, un mécanisme d’apprentissage par renforcement agentique qui forme un modèle linguistique de grande envergure à écrire des noyaux GPU plus performants que ceux d’un compilateur. L’écart qu’il vise à combler est mince mais tenace : les modèles de pointe produisent déjà du code CUDA correct, mais celui-ci est simplement trop lent. Sur KernelBench, le modèle de base Seed1.6 réussit 74,0 % des tâches, mais ne surpasse outrunstorch.compileon que dans 27,2 % d’entre elles, avec un gain de vitesse de 0,69 fois la moyenne géométrique, ce qui signifie que ses noyaux sont, en moyenne, plus lents que ceux générés par le compilateur lui-même. CUDA Agent comble cette lacune en intégrant le modèle dans un véritable environnement de avancée CUDA, doté de fonctionnalités de profilage, de contrôles de cohérence et d’un bac à sable à accès restreint, puis en l’entraînant avec l’algorithme PPO pendant 150 étapes sur un contexte de 131 072 tokens. Il en résulte un taux de réussite de 98,8 % et une vitesse de compilation supérieure de 96,8 % à celle de Torch.sur le benchmark de 250 tâches, soit 2,11 fois la moyenne géométrique par compilation — environ 40 points d’avance sur Claude Opus 4.5 et Gemini 3 Pro sur le split de niveau 3, le plus difficile.

En partie, mais l’agent entraîné n’est pas mis à disposition. Il repose sur Seed1.6, un modèle MoE propriétaire comptant 23 milliards de paramètres actifs et 230 milliards de paramètres au total, et l’article ne fournit aucun poids. Données publiques : le jeu de données CUDA-Agent-Ops-6K, le fichier de spécifications SKILL.md ainsi que les recettes de récompense et de préchauffage.

Quelles firmes : Le « profilage sandbox » a à lui seul utilisé 128 GPU NVIDIA H20, ce qui permet une réplication complète au sein des laboratoires d’avant-garde, des clouds GPU et des grandes équipes d’infrastructure. Les équipes de taille moyenne peuvent toutefois adopter ces éléments — ensemble de données, récompenses par étapes, contraintes anti-piratage des récompenses, spécifications de compétences — en complément d’un modèle d’IA de base ouvert.

Secteurs et applications : infrastructures d’IA et services d’inférence, cloud GPU, conduite autonome, trading quantitatif, imagerie médicale et systèmes de recommandation — partout où les noyaux fusionnés se trouvent sur un chemin critique en termes de latence. Parmi les utilisations, on peut citer la fusion de séquences d’opérateurs que `torch.compile` gère mal, la réduction du coût par token et le réajustement des noyaux d’une génération de GPU à l’autre.

L’équipe de recherche explore les opérateurs de référence issus des bibliothèques `torch` et `transformers`. Un système de langage de grande envergure (LLM) sélectionne ensuite jusqu’à cinq classes d’opérateurs `torch` et les assemble en une seule couche fusionnée. Un filtre ne conserve que les opérateurs qui s’exécutent aussi bien en mode « eager » qu’en mode « compile », qui sont déterministes, qui produisent des résultats non constants et dont l’exécution dure entre 1 ms et 100 ms en mode « eager ». Les échantillons présentant une similarité AST supérieure à 0,9 avec une tâche KernelBench quelconque sont supprimés. Le résultat est CUDA-Agent-Ops-6K : 6 000 échantillons, dont 83,77 % sont des compositions à deux opérateurs.

La boucle de l’agent reproduit les fonctions OpenHandstooling — Bash, Read/Write, Edit/MultiEdit, Glob, Grep, NotebookEdit, BashOutput, KillBash — selon un modèle ReAct. Les instructions CUDA sont fournies au format Agent Skills.SKILL.md indique au modèle de profiler le système PyTorch, de réécrire model_new.py avec des noyaux personnalisés, de compiler dans un bac à sable GPU et de répéter l’opération jusqu’à ce que le noyau soit au moins 5 % plus rapide que torch.compile à tatol=1e-2, rtol=1e-2.

L’évolution de ce dossier sera à suivre avec attention.

Dans le même ordre d’idées :


D’après MarkTechPost : MarkTechPost