Recherche
Dans les coulisses du jeu de données d’un mapper IA osu! mania
ManiaGAI v2 a appris de 150 622 charts osu! mania faits main par environ 14 500 mappers, bien au-delà du ranked. Contenu du corpus par touches, difficulté et source, et pourquoi.
L’essentiel du travail dans un générateur de beatmaps par IA, ce n’est pas le modèle. Ce sont les données : décider quels charts valent la peine qu’on en apprenne, s’assurer que chaque exemple d’entraînement est correctement timé, et représenter un chart sous une forme qui capture ce qui le rend jouable. Cet article explore le corpus dont les modèles de ManiaGAI v2 ont appris — ce qu’il contient, et pourquoi il est fait ainsi.
Le corpus en un coup d’œil
- Charts
- 150 622
- Musiques
- 86 255
- Mappers
- ~14 500
- Audio unique
- 4 227 h
Cela représente 150 622 charts osu! mania faits à la main, sur 86 255 musiques, écrits par environ 14 500 mappers différents — 4 227 heures d’audio unique. Il n’a pas toujours été aussi gros : le jeu d’entraînement est passé d’environ 83 000 charts à sa taille actuelle pendant le travail qui a abouti à la version 2.
Pas seulement des maps ranked
Le choix évident aurait été de n’entraîner que sur des maps ranked — elles sont relues, leur timing est vérifié, et elles représentent le niveau d’exigence de la communauté. Nous avons délibérément fait autrement. Les maps ranked ne sont qu’une petite tranche, stylistiquement étroite, de ce que les gens mappent et jouent réellement : dans ce corpus, elles représentent un chart sur six.
| Statut sur osu! | Charts | Part |
|---|---|---|
| Ranked / Qualified | 24 896 | 16,5 % |
| Loved | 2 530 | 1,7 % |
| Pending, WIP et Graveyard | 114 212 | 75,8 % |
| Jamais soumis sur osu! (surtout des conversions BMS / O2Jam) | 8 984 | 6,0 % |
Statut sur osu! en octobre 2026.
Les trois quarts des charts sont pending, en cours (WIP) ou au graveyard — des maps qui ne sont jamais passées par le ranking, ce qui ne veut pas dire qu’elles sont mauvaises : personne ne les a relues, elles n’ont pas échoué à une relecture. Un modèle qui n’apprend que des maps ranked apprend les habitudes de la section ranked ; un modèle qui apprend de toute la communauté voit toute la palette des façons de mapper.
Au-delà d’osu! : BMS et O2Jam
Le corpus couvre déjà plus d’un écosystème de jeux de rythme à défilement vertical. 21 379 charts — 14 % du jeu, tous statuts confondus — sont marqués comme provenant de BMS ou d’O2Jam : 16 188 de BMS et 5 491 d’O2Jam, dont 300 marqués comme les deux. Ces jeux ont leurs propres traditions de charting, et ils élargissent ce que voient les modèles.
Par nombre de touches
| Touches | Charts | Part |
|---|---|---|
| 4K | 72 362 | 48,0 % |
| 5K | 8 442 | 5,6 % |
| 6K | 13 235 | 8,8 % |
| 7K | 49 129 | 32,6 % |
| 8K | 5 090 | 3,4 % |
| 9K | 2 364 | 1,6 % |
Le 4K et le 7K dominent — environ 80 % du corpus à eux deux. Le 8K et le 9K sont rares : quelques milliers de charts chacun. Ce déséquilibre compte pour l’entraînement : les échantillons sont donc équilibrés entre nombres de touches (et niveaux de difficulté) pendant l’entraînement, pour que les charts 8K et ★10 ne soient pas noyés sous le 4K et le ★4.
Par difficulté
Nombre d’étoiles mesuré avec l’algorithme d’osu! lui-même ; médiane ★4,2, plage ★0,5–13.
Le gros du corpus se situe entre ★1 et ★7, avec une longue traîne de charts difficiles au-delà de ★9. La plage de difficulté de ManiaGAI, de ★1 à ★10, se trouve là où sont les exemples : chaque palier d’étoiles en dessous de ★10 compte plus d’un millier de charts ; au-delà, ils se raréfient vite. Et 15,8 % des charts changent de tempo en cours de morceau : le tempo variable fait partie de ce que les modèles apprennent, ce n’est pas un cas marginal.
Ce que nous écartons
L’ampleur ne veut pas dire tout prendre. Certains charts sont exclus parce qu’ils enseigneraient la mauvaise chose :
- Les charts inachevés — une musique mappée à moitié apprend à un modèle à s’arrêter de mapper à mi-chemin.
- Les doublons en rate edit — le même chart accéléré ou ralenti compterait plusieurs fois les patterns d’un seul mapper.
- Les charts générés par IA, y compris les nôtres — un modèle entraîné sur des maps générées apprend à imiter des générateurs, pas des mappers.
Une seule grille de timing pour tout
Chaque chart du corpus est re-timé sur le même type de grille de timing que celle que le générateur produit à partir de l’audio. Cela ressemble à un détail ; c’est l’une des décisions les plus importantes du jeu de données. Au moment de la génération, les modèles placent les notes sur le timing détecté par ManiaGAI, pas sur le timing d’un humain — ils doivent donc apprendre à placer les notes sur ce même type de grille. S’entraîner sur le timing des mappers puis générer sur le timing détecté reviendrait à apprendre une grille aux modèles pour leur en donner une autre ensuite. (La précision de ce timing détecté fait l’objet de son propre article : le benchmark de timing.)
Ce qu’il faut pour en apprendre
L’audio est encodé une seule fois en caractéristiques musicales alignées sur la grille — environ 0,7 TB sur disque. Tout l’entraînement tourne sur une seule NVIDIA RTX 4070 Ti SUPER avec 16 GB de mémoire. Plutôt que de tout réentraîner à chaque changement, le modèle de notes est affiné en continu à mesure que les données et la grille de timing évoluent ; quand nous avons changé la façon dont la grille commence, les deux modèles ont été réentraînés dessus. La lignée complète du modèle de notes v2 représente environ 540 heures GPU enregistrées — son dernier entraînement à lui seul a pris environ quatre jours et environ cinq passes sur 16,9 millions de fenêtres d’entraînement — et celle du planner en ajoute environ 40.
Rien de tout cela n’est jugé sur la seule loss d’entraînement. Chaque changement est vérifié sur les charts générés eux-mêmes : précision du timing, difficulté mesurée par rapport à la cible, jouabilité.
Ce qu’apportent des données variées — et ce qu’elles n’apportent pas
C’est cette ampleur qui permet à un seul modèle d’écrire du 4K et du 9K, du ★1 et du ★10, des charts chargés en long notes et d’autres chargés en jacks, et de suivre le style que vous demandez : les patterns existent quelque part dans le corpus. Ce que l’ampleur n’apporte pas, c’est un niveau de qualité uniforme — certains charts d’un corpus communautaire sont meilleurs que d’autres, et un modèle apprend de tous.
Nous publions ce que contiennent les données et pourquoi ; nous ne publions pas en détail comment elles sont collectées, filtrées et construites. La page Technologie explique la place des données dans l’ensemble du système, et l’article sur Planner + Noter présente les deux modèles qui en apprennent.