La réalité virtuelle (VR) a ouvert de nouvelles frontières dans la façon dont nous interagissons avec la technologie. J'ai récemment eu l'occasion de repousser encore plus loin ces limites avec une démo technique qui intègre ChatGPT , Google Speech-to-Text (STT) et Amazon Web Services (AWS) Polly dans une expérience VR.
Le résultat?
Une conversation véritablement immersive et interactive avec un avatar Ready Player Me alimenté par l'IA, piloté par les réponses de ChatGPT et enrichi de capacités d'entrée et de sortie vocales.
Le concept derrière cette démo technique était de créer une salle virtuelle où les utilisateurs peuvent avoir des conversations réalistes avec un avatar IA, propulsé par ChatGPT.
Pour faire passer l'expérience au niveau supérieur, j'ai intégré Google STT pour la saisie vocale, qui transcrit le discours de l'utilisateur en texte. Ce texte est ensuite envoyé à un micro-service pour traitement et transmis à ChatGPT pour générer une réponse pertinente. Une fois la réponse générée, AWS Polly est utilisé pour la conversion texte-parole (TTS), et la sortie est renvoyée à l'avatar pour le traitement de la voix, ce qui donne une conversation généralement fluide et dynamique.
L'une des caractéristiques les plus remarquables de cette démo technologique est l'intégration des avatars Ready Player Me, avec Lip Sync activé. Cela signifie qu'au fur et à mesure de la lecture audio, la bouche de l'avatar bouge en synchronisation avec son discours, créant une expérience de conversation hautement réaliste et interactive. Ces avatars servent de représentation visuelle de l'IA, ajoutant une couche d'immersion et de personnalisation à la conversation.
Pour rendre les conversations attrayantes, j'ai créé trois scénarios d'invite pré-remplis pour ChatGPT.
Dans le premier scénario, l'IA joue le rôle d'un représentant financier, fournissant des conseils sur la gestion des finances et des investissements.
Le deuxième scénario implique que l'IA agisse en tant que psychiatre, fournissant une thérapie et des conseils virtuels.
Enfin, dans le troisième scénario, l'IA prend la personnalité d'un marchand fantastique, vendant du matériel et des objets virtuels.
Ces scénarios donnent un aperçu des cas d'utilisation potentiels de cette technologie dans divers domaines, tels que la finance, la santé mentale et le divertissement.
Bien qu'on en parle peu, l'ingénierie rapide est un talent à part entière. Comme vous pouvez le voir dans le code , mettre en place une scène contextuelle et s'assurer que l'avatar ne perd pas de caractère peut être compliqué. Essentiellement, nous devons nous assurer que le modèle ne casse pas le script mais reste réaliste. À partir des vidéos complètes ci-dessus, vous constaterez que le marchand Fantasy brise occasionnellement le personnage et affiche un tic répétitif, presque nerveux, de dire "bien, bien, bien" tout en vocalisant ses émotions.
Il est important de noter que cette démo technique utilisait principalement des animations et des modèles prêts à l'emploi pour la direction artistique. Cependant, pour une application à part entière, investir dans des animations réalistes, y compris des animations parlantes avec analyse des sentiments pour les tonalités d'animation positives/négatives, et des animations de remplissage pendant le temps de traitement, peut améliorer la crédibilité et le naturel des interactions de l'IA. Cela améliorera encore l'expérience immersive et la rendra plus proche des conversations humaines.
L'un des défis dans la création d'une expérience de conversation VR vraiment immersive est la limitation de nos sens. Dans les environnements virtuels, nous comptons généralement sur la vue et le son pour percevoir et interagir avec le monde. Comme ce sont les 2 sens qui sont sollicités, vous êtes hyper conscient lorsque quelque chose dans un scénario semble anormal. Pour rendre le monde virtuel plus réel et détourner l'attention de la nature surréaliste de l'environnement, il est crucial de créer un environnement crédible qui imite les environnements du monde réel.
Les éléments visuels jouent un rôle crucial dans la création d'un sentiment de présence en réalité virtuelle. L'utilisation de modèles 3D réalistes peut aider, mais les textures, l'éclairage et les animations peuvent créer un environnement qui ressemble au monde réel, même avec des graphismes stylisés. Par exemple, si l'avatar IA est placé dans un bureau virtuel, l'utilisation de mobilier de bureau, de décorations et d'éclairage précis peut créer un environnement familier auquel les utilisateurs peuvent s'identifier, ce qui rend la conversation plus authentique.
Le son est un autre élément clé qui ajoute à l'immersion dans les conversations VR. L'audio spatial, où le son change de direction et d'intensité en fonction de la position de l'utilisateur et des mouvements de la tête, peut grandement améliorer le sentiment de présence.
Par exemple, si l'utilisateur entend la voix de l'avatar IA venant de la direction où se trouve l'avatar, cela ajoute au réalisme de la conversation. Cependant, encore plus important que le son de l'avatar, est le bruit blanc du quotidien. Bruits d'un assistant grondant des papiers, des gens traînant dehors, des téléphones, etc. Ces sons générateurs de bruit blanc sont nécessaires pour aider à masquer toute pensée de calcul et aideront à distraire l'utilisateur et à le maintenir dans une immersion surréaliste.
En regardant les rediffusions des interactions vidéo, elles sembleront toutes décalées. L'environnement a été spécialement conçu pour les superpositions de débogage, et tout bruit blanc de fond était absent. Si je devais me concentrer sur la création d'une expérience réaliste, mes domaines d'intervention incluraient ; animations, conception sonore, scénographie et ingénierie rapide. Ce serait l'ordre d'importance, l'ingénierie rapide serait la dernière dans mes considérations car lorsque vous êtes celui qui parle à l'IA, cela peut parfois vous choquer à quel point il peut être bon pour prédire ce qu'il devrait dire ensuite, surtout avec un puits -animation chronométrée.
Bien que cette démo technologique présente l'immense potentiel de l'intégration de ChatGPT, Google STT et AWS Polly dans une expérience de réalité virtuelle, elle soulève également d'importantes considérations éthiques. Veiller à ce que les données des utilisateurs soient traitées de manière sécurisée et responsable et à ce que les modèles d'IA soient formés de manière équitable et impartiale devrait être une priorité dans le développement et le déploiement de ces technologies. Au fur et à mesure que ces interactions deviennent plus largement disponibles, la création d'humains virtuels simulés pour tromper les informations personnelles des utilisateurs volontaires peut sembler sortir d'un épisode de Black Mirror, mais entre rapidement dans le domaine des possibilités.
En conclusion, cette démo technologique représente un pas en avant significatif pour briser les frontières des interactions VR avec l'IA. L'intégration de ChatGPT, Google STT et AWS Polly permet des conversations immersives et dynamiques, ouvrant la voie à des possibilités passionnantes dans des domaines tels que l'éducation, le service client et le divertissement. Avec de nouvelles avancées dans les technologies d'animation et d'IA, nous pouvons nous attendre à un avenir où les conversations virtuelles avec les avatars de l'IA deviendront plus naturelles, engageantes et courantes. Le potentiel de cette technologie est vaste et je suis ravi de voir comment elle évolue et transforme notre interaction avec l'IA dans le monde virtuel.
Github pour le microservice Sigmund : https://github.com/goldsziggy/sigmund
Fichier Docker pour microservice :
docker run -it -p 8080:8080 --env-file .env matthewzygowicz/ms-sigmund
Si suffisamment d'intérêt est recueilli, je peux/vais réécrire la partie Unity du code en utilisant tous les actifs open source pour l'ouvrir également.