YuE2-3B dans ComfyUI : génération musicale ouverte de MAP

ComfyUI Wikinews

Workflow ComfyUI YuE2-3B : le modèle de génération musicale ouvert de MAP crée des chansons complètes avec partitions éditables et dépasse Suno v5 sur WildSongBench.

L'équipe Multimodal Art Projection (m-a-p) a publié en open source YuE2-3B, un modèle de génération musicale de 3B qui transforme des paroles et un prompt de style en chansons complètes avec voix et accompagnement. Contrairement aux systèmes classiques de conversion paroles → chanson, YuE2 expose une couche de partition éditable : la mélodie et les accords sont écrits sous forme de plans symboliques que vous pouvez modifier avant le rendu. Sur l'évaluation WildSongBench de l'équipe, il devance Suno v5. Le support natif de YuE2 de ComfyUI est désormais fusionné dans master (PR #16250) : une simple mise à jour suffit.

Aperçu

YuE2-3B est le successeur du modèle original YuE de conversion paroles → chanson. L'équipe le positionne comme une génération musicale ouverte de qualité de pointe : sur 192 prompts WildSongBench, YuE2 avec un échantillonnage best-of-8 atteint une moyenne SongBench de 6,9632, contre 6,8721 pour Suno v5, le score le plus élevé parmi tous les modèles ouverts et propriétaires évalués.

Qualité des chansons et alignement du texte de YuE2 sur WildSongBench

Qualité de chanson et alignement du texte de pointe sur 192 prompts WildSongBench. YuE2 utilise une planification symbolique ; Bo8 signifie best-of-8.

La fonctionnalité phare est la planification symbolique avec une partition éditable. Au lieu de passer directement du texte à l'audio, YuE2 écrit d'abord un plan contenant la mélodie et les accords (en notation ABC), puis génère l'audio à partir de celui-ci. Comme le plan est explicite, vous pouvez :

  • Composer et éditer : mélodie complète plus accords, mélodie seule, ou génération directe sans partition
  • Apporter votre propre partition : fournir une partition ABC existante et laisser YuE2 la chanter
  • Éditer avec un agent : convertir des commentaires musicaux en révisions de partition, de style et de paroles, puis laisser le modèle générer la version suivante. L'équipe présente une chaîne d'édition de 14 versions qui fait passer une chanson de la pop mandarine au jazz anglais.

Architecture

Architecture de YuE2

Un seul backbone AR–NAR Mixture-of-Transformers écrit la partition et les tokens sémantiques, puis génère les latents acoustiques par flow matching. Le VAE les convertit en audio stéréo.

YuE2 utilise un backbone AR–NAR Mixture-of-Transformers. L'étape autoregressive planifie la partition et les tokens sémantiques ; l'étape non autoregressive produit les latents acoustiques via flow matching, et un VAE dédié les décode en audio stéréo 48 kHz. Les API de planification et de synthèse sont exposées séparément, ce qui permet aux développeurs d'inspecter ou de remplacer le plan symbolique.

Exemple de sortie

La carte du modèle fournit des démos complètes couvrant des compositions originales et des reprises :

ExempleStyleDurée
Cyber MetalCyber metal anglais5:00
今晚不眠Funk mandarin / nu-disco3:24
PassionRock anglais3:55
Auld Lang SyneReprise jazz-funk3:10
最炫民族风Reprise ballade4:45
Jingle BellsReprise heavy metal1:09

Les exemples de reprises montrent le modèle réimaginant une chanson existante dans un genre complètement différent, et la démo d'édition agentique déroule 9 étapes de planification et 14 versions générées d'une même chanson.

Exécution

YuE2-3B s'exécute en local sur un GPU NVIDIA de 24 Go (Linux, Python 3.10+) sans quantification. L'équipe distribue un wheel d'inférence aux côtés du checkpoint de 7,3 Go sur Hugging Face :

python -m pip install huggingface-hub==0.36.2
hf download m-a-p/YuE2-3B yue2_infer-0.1.5-py3-none-any.whl --local-dir .
python -m pip install ./yue2_infer-0.1.5-py3-none-any.whl

Le pipeline expose le chargement Hugging Face, le guidage textuel (CFG) et des API distinctes de planification et de synthèse. Les notebooks complets ainsi que les recettes de reprises et d'édition se trouvent dans le README.

Disponibilité

Aucun support natif ComfyUI n'existe pour l'instant. Le nœud communautaire de longue date ComfyUI_YuE encapsule la série YuE dans ComfyUI ; il n'a pas été mis à jour pour YuE2 au moment de la rédaction, donc exécuter YuE2-3B aujourd'hui nécessite le package d'inférence Python officiel. Une démo hébergée est disponible sur la page du projet.

Le support natif ComfyUI est fusionné dans master

Le 11 septembre, le cœur de ComfyUI a intégré le support natif de YuE2 dans la PR #16250, depuis fusionné dans master avec des correctifs de suivi : durée maximale de chanson allongée (PR #16292, jusqu'à 900 secondes), corrections AMD et plus de contrôles sur le nœud Generate ABC (PR #16293), et mention officielle dans le README (PR #16303). Si vous êtes sur une build récente de master (ou la prochaine version stable après v0.35.0), YuE2 est inclus et aucun checkout de branche n'est nécessaire. L'intégration livre trois nœuds : YuE2 Generate ABC pour le plan de partition symbolique, YuE2 Generate Music pour le rendu et Empty YuE2 Latent Audio. Un checkpoint tout-en-un prêt à l'emploi (yue2.safetensors, 7,8 Go) est publié sur le compte Hugging Face Comfy-Org, et un flux de travail de test est joint à la pull request. Le flux central à deux nœuds correspond à l'usage de la communauté : conservez le texte ABC de Generate ABC pour réutiliser la même mélodie sur plusieurs rendus.

Les premiers rendus sonnent correctement, et les aspérités des premiers jours sont déjà corrigées :

  • YuE2 impose des versions exactes de PyTorch, Transformers et d'autres packages partagés, donc installer les Exigences autonomes de YuE2 peut écraser des packages dont ComfyUI a besoin. L'intégration native évite le problème des multi-venv, mais vérifiez votre environnement après l'installation.
  • Des packs de nœuds communautaires comme EmeraldApple-AI/ComfyUI-YuE2 et un fork de ScryptHunter qui isole le wheel YuE2 sont également apparus en l'espace d'une journée ; ce sont pour l'instant des projets expérimentaux menés par une seule personne.
  • Le VAE propre à YuE2 ne convertit l'audio que depuis et vers des latents acoustiques continus, ce qui signifie que l'entraînement de LoRA pour YuE2 n'est pas encore possible : les tokens musicaux sémantiques discrets et un pipeline d'entraînement spécifique à YuE2 n'ont pas été publiés.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
YuE2-3B dans ComfyUI : génération musicale ouverte de MAP | ComfyUI Wiki