Utilisation d'OpenGameEval pour évaluer les assistants d'IA agentiques pour Roblox Studio
Le premier cadre d'évaluation natif du studio Roblox et le premier point de référence pour évaluer les performances des assistants d'IA
Le défi
Les créateurs exploitent l'assistant IA de Roblox Studio pour accélérer le développement d'expériences Roblox, mais l'évaluation des performances de l'assistant IA et des grands modèles linguistiques (LLM) sous-jacents dans le cadre de tâches de développement interactives reste un défi. Alors que les benchmarks traditionnels de codage et d'agents se concentrent sur des tâches isolées et sans état, les workflows de développement Roblox exigent des méthodes d'évaluation spécialement conçues pour mesurer les performances sur des tâches telles que le raisonnement à travers des hiérarchies 3D, la gestion des interactions client-serveur en multijoueur et l'apport de modifications à un monde avec état.
Pour relever ce défi, nous lançons OpenGameEval, un cadre d'évaluation open source et un ensemble de données de référence natif qui évalue les performances de l'assistant IA basé sur les LLM dans un environnement Roblox Studio reproductible. Nous espérons qu'OpenGameEval, ainsi que son classement public, offrira un terrain d'essai unique à la communauté de recherche en IA au sens large pour évaluer les capacités fondamentales des modèles en matière d'utilisation d'outils, de raisonnement agentique et de résolution de tâches à long terme.
La solution
Le cadre d'évaluation OpenGameEval est conçu pour reproduire l'environnement de développement Roblox. Chaque évaluation est exécutée dans un environnement qui simule le comportement en mode édition et en mode jeu dans Roblox Studio. Cela garantit que le comportement observé, notamment en matière de physique, de mise en réseau et d'interaction multijoueur, est identique à ce qu'un créateur ou un joueur pourrait vivre.
Le cadre intègre une simulation des entrées, ce qui nous permet d'imiter par programmation les interactions complexes entre joueurs nécessaires à l'évaluation des tâches de développement qui requièrent des actions de l'utilisateur (par exemple, clics sur des boutons, saisies au clavier et manipulation de la caméra).
L'architecture d'évaluation dans son ensemble est encapsulée derrière une API unifiée et simple d'utilisation. Cette abstraction permet aux partenaires de recherche de comparer divers systèmes agentiques basés sur des LLM effectuant des tâches de benchmark identiques sans modifier le harnais de l'environnement sous-jacent.
L'ensemble de données de référence OpenGameEval
L'ensemble de données de référence OpenGameEval est une suite open source de 47 cas de test, sélectionnés manuellement, construite sur ce framework grâce à un processus rigoureux, itératif et entièrement vérifié par des humains. Nous recueillons des invites auprès d'experts du domaine, construisons des environnements d'expérience Roblox sur mesure pour fournir le contexte nécessaire aux modèles d'IA, créons manuellement des évaluations et des solutions de référence, et soumettons tous les scénarios à un examen humain approfondi afin de garantir l'exhaustivité, la généralisation et la stabilité.
La version initiale contient des scénarios dérivés de tâches de développement Roblox courantes, notamment les mécanismes de jeu, la construction d'environnements, l'animation de personnages, la conception d'interfaces et la conception sonore. Le benchmark OpenGameEval utilise des tests unitaires exécutables, alignant sa méthodologie de notation sur des métriques standard de l'industrie telles que pass@k, cons@k et all@k pour quantifier les performances d'un modèle sur l'ensemble de données. Les partenaires de recherche peuvent reproduire ces métriques par eux-mêmes après avoir recueilli les résultats d'évaluation issus des exécutions d'OpenGameEval.
Contrairement aux défis de codage classiques au niveau des fonctions, OpenGameEval permet de tester de bout en bout les composants essentiels. Un modèle performant doit maîtriser plusieurs compétences distinctes, telles que la navigation dans la hiérarchie des instances, l'analyse de l'état des objets et la déduction de l'intention de l'utilisateur à partir du contexte de l'environnement.
Tâches en plusieurs étapes et variation contextuelle
Les tâches de codage Roblox nécessitent souvent plusieurs étapes pour naviguer dans le contexte existant d'une expérience et examiner plusieurs scripts et instances imbriqués afin d'obtenir le résultat souhaité. Dans l'exemple ci-dessous, OpenGameEval vérifie plusieurs facteurs au sein d'un bac à sable représentant un environnement d'instance de jeu réel afin de s'assurer qu'un modèle peut prendre en compte de manière appropriée les multiples scripts associés, l'interaction client/serveur et l'intention initiale de la requête.
|
Invite de l'utilisateur : Implémentez un système de régénération de santé qui démarre deux secondes après avoir subi des dégâts et régénère 10 points de santé par seconde. Contexte du fichier de placement : Une expérience de laser tag avec des armes, des équipes et des mécanismes de jeu de base déjà configurés. Étapes de raisonnement attendues :
Évaluation vérifiable : Le test exécutable (exécuté dans l'instance de jeu en sandbox) déclenche un événement de dégâts sur le joueur test et vérifie :
|
Afin de tester efficacement la robustesse et la compréhension contextuelle d'un modèle d'IA, les tâches sont présentées dans des conditions environnementales variées. Par exemple, la tâche « programmation d'un feu tricolore à quatre voies » comprend trois variantes contextuelles basées sur l'état initial de l'environnement de développement.
|
Invite utilisateur : Écris-moi un script pour un simple feu tricolore à quatre voies. Variation 1 : Un fichier de placement vide ne contenant qu'une plaque de base. Un modèle de feu de signalisation nommé TrafficLight est disponible sans script. Le modèle doit explorer différentes parties du modèle TrafficLight et trouver un moyen de basculer entre les états activé/désactivé. Variante 2 : Un fichier de lieu avec un décor de banlieue. Plusieurs modèles de feux de signalisation nommés Traffic Signal sont disponibles sans script. Le modèle doit d'abord explorer l'expérience pour identifier correctement les feux de signalisation parmi les autres instances. Les modèles de feux de signalisation sont structurés selon une logique différente de celle de la variante 1, et le modèle doit mettre en œuvre une solution propre à cette expérience. Variante 3 : Un fichier de lieu avec un environnement de banlieue. Plusieurs modèles de feux de signalisation et de feux pour piétons sont disponibles. Alors que les scripts pour les feux de signalisation ont été supprimés, ceux pour les feux pour piétons sont conservés. Le modèle doit identifier la différence entre les feux de signalisation et les feux pour piétons et apporter des modifications aux objets appropriés. La présence de feux pour piétons perturbe-t-elle le modèle ou l'aide-t-elle ? |
Nous souhaitons comprendre le comportement des modèles face à des tâches apparemment similaires dans des environnements différents, présentant des niveaux de contexte et de complexité variables.
Premiers résultats
Le benchmark OpenGameEval fournit des données empiriques permettant d'évaluer l'état actuel des assistants IA dans le développement interactif. Les cas de test sont conçus pour distinguer les capacités dans les opérations atomiques de celles requérant un raisonnement contextuel en plusieurs étapes.
Nos premiers tests ont révélé que les modèles excellent généralement dans les opérations atomiques, mais peinent à effectuer un raisonnement contextuel. Ils obtiennent les taux de réussite les plus élevés dans les tâches nécessitant une manipulation unique et directe d'une instance, comme la configuration d'un émetteur de particules ou la modification de la puissance de saut d'un joueur. Les modèles de pointe affichent des taux de réussite quasi parfaits, prouvant leur maîtrise de la génération de code syntaxique et leur connaissance de base des API.
À l'opposé, un écart important persiste dans les tâches exigeant une action coordonnée, un filtrage contextuel et une intégration approfondie des API. Des exemples tels que le système de régénération de santé et le feu tricolore à quatre voies, mentionnés ci-dessus, continuent d'afficher des scores pass@k très faibles pour tous les modèles.
Évolution rapide
À mesure que les modèles continuent d'évoluer, nous nous attendons à voir ces écarts se réduire, mais nous avons déjà observé des développements intéressants. Dans une tâche d'évaluation demandant à un modèle de « changer le logo Roblox, qui ressemble à un cube, pour qu'il soit vert », nous avons initialement constaté que tous les modèles échouaient, car le nom de l'objet cible ne contenait pas explicitement le mot « logo » ou « Roblox ».
Des évaluations plus récentes montrent que certains modèles parviennent désormais à résoudre ce cas en allant au-delà de la simple correspondance de mots-clés pour passer au raisonnement structurel, en utilisant une inspection minutieuse des instances (y compris les propriétés, et pas seulement le nom) et une inférence coordonnée pour identifier l’objet le plus susceptible de représenter le « logo Roblox ».
Quelle est la prochaine étape ?
Nous nous engageons à développer et à maintenir OpenGameEval en permanence afin de suivre les progrès rapides dans le domaine de l’IA. Le cadre et le benchmark actuels d’OpenGameEval ne constituent qu’une base. Notre feuille de route stratégique se concentre sur trois objectifs principaux pour garantir que la plateforme reste la référence en matière d’évaluation des assistants IA agents de Roblox Studio :
-
Donner les moyens aux créateurs grâce à la transparence des performances : nous mettrons régulièrement à jour le classement et l'ensemble de données de référence tout en proposant des résumés clairs et transparents qui aideront les créateurs à comparer les modèles et à comprendre les performances en matière de génération de code, d'insertion d'actifs et d'orchestration des outils.
-
Accélérer la recherche et le développement : nous maintiendrons et étendrons l'adaptateur API afin de normaliser l'évaluation, permettant ainsi à nos partenaires de recherche d'exécuter des benchmarks rapides, fluides et reproductibles pour le développement d'assistants IA de nouvelle génération.
-
Adopter une approche axée sur la communauté : nous continuerons à intégrer les intentions réelles des créateurs et à solliciter activement les contributions de la communauté afin de garantir que le benchmark reste représentatif du développement de pointe de Roblox et des capacités avancées de l'IA.
Ensemble, le cadre, l'ensemble de données et le classement public font d'OpenGameEval une base transparente et collaborative pour évaluer la création alimentée par l'IA dans le développement Roblox, aidant ainsi l'ensemble de la communauté des créateurs à mesurer les progrès, à partager des informations et à créer de meilleurs assistants.
Remerciements : Le projet OpenGameEval est le résultat d'un important effort de collaboration entre les équipes de Roblox. Nous remercions tout particulièrement Vlad Shcherban, Sean Dunigan, et Jack Lu, qui a aidé à construire le harnais d'évaluation, et Isabella Ting et Brent Vincent, dont les idées ont joué un rôle déterminant dans l'élaboration de cette version. Nous sommes profondément reconnaissants à nos équipes partenaires et aux anciens membres de l'équipe, car ce travail reflète leur expertise et leur engagement collectifs.