Chatbot de personnages de jeux vidéo avec l’API OpenAI
○ Archivé
Application web React et Node.js où l’on crée des personnages de jeux vidéo pour converser avec eux : l’API OpenAI répond dans la peau du personnage choisi.
Contexte
Ce chatbot de personnages de jeux vidéo est né début 2023, au moment où l’API OpenAI devenait accessible, dans le cadre d’un module de conception (UML et base de données). Le principe : un utilisateur choisit un jeu vidéo, puis un personnage, et ouvre une conversation avec lui.
Il a démarré comme une application Express avec des vues serveur, avant d’être refondu en API Node.js consommée par un front React.
Challenge
Pour que le personnage reste crédible, le modèle doit connaître son univers et se souvenir de ce qui a déjà été dit. Or l’API ne garde aucun état entre deux appels.
Il fallait aussi une base de données propre, fidèle au modèle conceptuel du cours, pour relier utilisateurs, jeux, personnages, conversations et messages, le tout derrière une authentification.
Approche
À la création d’un personnage, l’application interroge OpenAI pour récupérer une description détaillée, qui sert ensuite de consigne système. À chaque nouveau message, tout l’historique de la conversation est renvoyé au modèle, qui répond dans la peau du personnage.
J’ai conçu la base MySQL à partir du MLD (avec une vue SQL pour certaines requêtes), écrit les CRUD des utilisateurs, jeux, personnages, conversations et messages, et sécurisé l’API par JWT avec des mots de passe hachés via bcrypt. Le front React propose une recherche de jeux avec debounce, une bibliothèque de jaquettes sous Swiper et la page de discussion. Des tests Mocha couvrent une partie des routes.
(04) — Résultats
Chiffres clés- 105
- commits
- 6
- mois de développement
- 5
- entités : utilisateurs, jeux, personnages, conversations, messages
- 2
- architecture : API Node.js et front React
