Avez-vous déjà rêvé d'avoir une véritable conversation avec un PNJ dans un jeu vidéo ? Pas seulement une arborescence de dialogues avec des réponses prédéterminées, mais une véritable conversation, avec des actions et des réactions spontanées ? Dernièrement, une petite équipe R&D du studio Ubisoft à Paris, en collaboration avec l'application Audio2Face de Nvidia et la technologie LLM (Large Language Model) d'Inworld, a pu expérimenter avec une IA générative afin d'essayer de faire de ce rêve une réalité. Leur projet, NEO NPC, utilise une IA générative afin de tester les limites des interactions entre un joueur et un PNJ sans aller à l'encontre de l'authenticité de la situation dans laquelle ils se trouvent, et sans que le PNJ ne sorte de son personnage.
Afin de se concentrer véritablement sur cette "authenticité", il était nécessaire pour ce projet d'allier les aspects artistiques et scientifiques. L'IA générative est un sujet d'actualité dans l'industrie du jeu vidéo, et Guillemette Picard, vice-présidente de la technologie de production, souhaite vraiment souligner que tous les projets d'IA générative chez Ubisoft ont pour objectif d'enrichir l'expérience des joueurs, et cela implique bien sûr de continuer à se concentrer sur la créativité humaine. « Nous avons travaillé sur ce projet en gardant en permanence les joueurs et les développeurs au centre de notre réflexion », nous dit G. Picard. « En gardant les joueurs à l'esprit, nous savons que nos développeurs et leur créativité doivent toujours être au centre de nos projets. L'IA générative n'a de valeur que si elle en a pour eux. »
Des personnages, pas des programmes
Cela signifie que les personnalités de ces PNJ ne sont pas créées par une machine, mais par un véritable rédacteur qui va construire le personnage, son histoire, sa façon de parler et qui va également continuer à rectifier tout cela lorsque le modèle d'apprentissage de langue commence à improviser des dialogues. Virginie Mosser, directrice de la narration, a passé plus d'une année à créer des personnages pour le projet NEO NPC, et a trouvé cette nouvelle expérience très enrichissante.
« J'ai l'habitude de créer l'histoire des personnages, leurs espoirs, leurs rêves, les expériences qui ont façonné leur personnalité... et je m'inspire de tout cela lorsque j'écris des dialogues », explique V. Mosser. Désormais, elle crée l'histoire des personnages, leurs espoirs, leurs rêves, les expériences qui ont façonné leur personnalité... et utilise tout cela pour enrichir un modèle.
« C'est quelque chose de vraiment différent », nous dit-elle. « Mais pour la toute première fois, je peux avoir une conversation avec un personnage que j'ai créé. J'en rêve depuis que je suis toute petite. »
Mélanie Lopez Malet, experte en données, a également travaillé sur le projet. Elle apprend au modèle à se comporter comme les créations originales de V. Mosser à travers des systèmes de garde-fous, des analyses des choix des joueurs, des environnements 3D et des instructions textuelles. M. Malet, qui enseignait auparavant la littérature au lycée et pour qui une bonne narration est une source d'inspiration, était aussi enthousiaste que V. Mosser à l'idée de créer des PNJ qui réagissent comme de véritables personnages créés par des humains.
Des itérations constantes
Un modèle de langue, nous explique M. Malet, est une grande boîte remplie de concepts et de statistiques qui produit des mots qui semblent fonctionner entre eux, en se basant sur la coexistence fréquente de certains mots. De ce fait, si vous parliez avec un modèle de langue basique, il ne produirait que des réponses plates et robotiques. En conditionnant les statistiques au sein du modèle afin de lui indiquer la marche à suivre, en se basant sur l'histoire, la personnalité et la façon de parler conçues par le rédacteur, le modèle commence à comprendre ce qu'on attend de lui.
« L'objectif du modèle devient : "je dois imiter ce personnage" », nous dit M. Malet. « Il est très important pour nous qu'il se comporte comme le personnage créé par Virginie. C'est pour cela que lorsque nous lui parlons, nous nous demandons constamment : "Est-ce que c'est bien Lisa ? Est-ce que Lisa dirait ça ?" et si la réponse est non, alors nous devons trouvons pourquoi le modèle a dévié de ce que Virginie a créé. »
Respecter le scénario
Une création de personnages si itérative nous aide également à anticiper tout comportement du joueur qui pourrait par exemple perturber l'ambiance d'un scénario, ou le dénouement que doit atteindre ce dernier. Les personnages sont programmés pour réagir aux réponses des joueurs d'une certaine façon, ou pour ne pas réagir, selon leur personnalité. « Si on dit n'importe quoi, il faut s'attendre à n'importe quoi », nous dit M. Malet à propos des joueurs proposant des réponses absurdes. « Mais lorsqu'on joue le jeu, c'est là que la magie opère. Et que se passe-t-il lorsqu'un joueur crée sa propre scène et que tout fonctionne parfaitement ? Cela permet à ce dernier de vivre une expérience incroyable. »
L'équipe a également mis en place d'autres garde-fous, comme de nombreux filtres pour intercepter des propos toxiques ou inappropriés de la part du joueur, par exemple. « Nous faisons la distinction entre un joueur qui cherche à contrarier un PNJ et un joueur qui l'insulte, afin de repérer précisément ce qui est toxique », nous dit M. Malet. Le modèle s'ajuste ensuite pour réagir à cette toxicité : il ne sera plus collaboratif.
« Il est très important pour nous de souligner que ces personnages n'ont pas de libre arbitre », nous dit V. Mosser. « Ils sont présents pour jouer un rôle dans une histoire. Ils ont un arc narratif. »
Se débarrasser des préjugés
En ce moment même, l'équipe continue de travailler en gardant cette authenticité (ou âme, comme le dit V. Mosser) en tant que fil conducteur. Il y a une véritable sensibilité aux préjugés et aux stéréotypes au sein du LLM et de son influence sur le design des personnages et leur comportement. « Nous avons créé un personnage féminin physiquement attirant », nous explique M. Malet, « et ses réponses penchaient vers le charme et la séduction, nous avons donc dû le reprogrammer. » Nous pensons également que les performances humaines font partie intégrante de la création d'un personnage convaincant.
« Pour avoir un personnage très expressif », nous dit M. Malet, "vous avez besoin d'un acteur très expressif. »
L'objectif final et les prochaines étapes
Le projet NEO NPC n'est encore qu'un prototype, et nous avons encore beaucoup de chemin à parcourir avant qu'il ne puisse être implémenté dans un jeu. L'objectif final est d'en faire un outil flexible, utile à la fois pour les petits projets Ubisoft, mais aussi pour les AAA. « Vous n'avez pas besoin d'être un développeur de jeux AAA pour intégrer cette technologie et offrir à vos joueurs une nouvelle expérience », nous dit G. Picard. « NEO NPC offre de très nombreuses possibilités en matière de gameplay. »
L'équipe profite de la GDC 2024 pour présenter le projet, mais également pour entendre les retours des acteurs de l'industrie et les tenir informés de ce que cette technologie représente pour eux et pour leurs joueurs à l'avenir. M. Malet et V. Mosser souhaitent également profiter de cette opportunité pour souligner que la créativité a toujours une place importante dans l'univers de l'IA générative, et que les données et la narration peuvent coexister.
« Je suis une personne créative », nous dit V. Mosser. « Et depuis que je travaille sur ce projet, aucun jour ne se passe sans que je puisse mettre cette créativité à l'œuvre. »