infinifi est un petit site Web convivial qui diffuse une musique lo-fi calme et douce en arrière-plan pour vous aider à vous détendre et à étudier !
infinifi fonctionne en générant continuellement 5 clips musicaux lofi d'une minute en arrière-plan à l'aide du modèle MusicGen de Meta. Chaque clip est généré à l'aide d'une invite légèrement différente pour fournir des clips musicaux avec des ambiances différentes, mais toujours chaleureuses.
le frontend est écrit en HTML/CSS/JS pur sans dépendances externes. il interroge /current.mp3
pour obtenir le clip musical lofi actuel. une fois le clip terminé, il effectue une nouvelle requête, ce qui renverra un clip différent. étant donné que chaque clip est complètement différent, l'interface applique un effet de fondu d'entrée et de sortie au début et à la fin de chaque clip.
infinifi se compose de deux parties, le serveur d'inférence et le serveur Web. 5 clips audio sont générés à chaque fois qu'une demande d'inférence est reçue du serveur Web. le serveur Web demandera une inférence à chaque intervalle défini. une fois la demande effectuée, il interroge le serveur d'inférence jusqu'à ce que l'audio soit généré et disponible en téléchargement. il télécharge ensuite les 5 clips générés et les enregistre localement. au maximum 10 clips sont enregistrés à la fois.
lorsque le serveur d'inférence est en panne, le serveur Web recycle les clips enregistrés jusqu'à ce qu'il soit à nouveau sauvegardé.
j'ai récemment modifié la mise en réseau entre le serveur Web et le serveur d'inférence. pour le moment, l'inférence se produit sur l'infrastructure fal ( fal_app.py
), et je n'ai pas encore mis à jour le code du serveur d'inférence autonome inference_server.py
pour qu'il corresponde à la nouvelle architecture.
si vous avez une idée de fonctionnalité, n'hésitez pas à utiliser l'outil de suivi des problèmes pour me le faire savoir !