JukeBox

Tags :
  • PROJET
  • 2024-2025
  • IA
  • dev
  • web
  • golang
  • musique
  • Vue.js
Auteurs :
  • Loïck Goupil-Hallay
  • Sofiane Ouadda
  • Thomas Merle
  • Mathis Adinolfi

Génération interactive de musique en direct

Projet avancé

Liens utiles

Brief

L'objectif du projet est de permettre aux utilisateurs de générer de la musique de manière collaborative. Cette génération de musique passe par l'intermédiaire d'un chat en live qui permet aux utilisateurs de donner des instructions à une IA qui modifiera la musique en cours de lecture.

Technical

Génération de musique

La musique est générée par un modèle d'intelligence artificielle nommé RAVE.
Il s'agit d'un auto-encoder qui prend en entrée des fichiers audios et les modifie en fonction des instructions données. Ce correspond parfaitement à notre besoin car il permet de générer de la musique en temps réel, et les paramètres de la musique peuvent être contrôlés en temps réel.

Filtrage et modération du chat

Le chat est modéré par un filtre de grossièretés (de type regex) et de spam.
Le chat est également modéré par un filtre IA qui détecte les messages à caractère nocif pour l'IA générateur de musique. Ce filtre IA se charge de détecter les messages destinés à la génération de musique, les reformule si besoin et les transmet au générateur s'ils sont valides.

Frontend

Le frontend est développé en Vue.js. Il communique avec le backend via son API REST pour la plupart des requêtes de fonctionnement. Une communication websocket est mise en place pour le chat en live ainsi que pour le streaming de musique.

Fonctionnalités

Backend

Le backend est développé en Golang, il expose une API REST pour remplir toutes ses fonctionnalités. Il s'agit d'un serveur HTTP qui gère les requêtes utilisateurs et les transmet à l'IA générateur de musique.

Fonctionnalités