YuE2-3B ComfyUI ワークフロー:MAPのオープン音楽生成モデル

ComfyUI Wikinews

YuE2-3B ComfyUI ワークフロー:MAPチームのオープン音楽生成モデル。歌詞から編集可能なスコア付きの楽曲を生成し、WildSongBenchでSuno v5を上回ります。重みはmasterにマージ済み。

Multimodal Art Projection (m-a-p)チームは、歌詞とスタイルプロンプトからボーカルと伴奏を含む完成した楽曲を生成する3Bの音楽生成モデルYuE2-3Bをオープンソース化しました。一般的な歌詞から楽曲を生成するシステムとは異なり、YuE2は編集可能なスコアレイヤーを公開しています。メロディとコードがシンボリックなプランとして記述され、レンダリング前に修正できます。チームのWildSongBench評価ではSuno v5を上回るスコアを記録しました。ComfyUIのネイティブYuE2サポートはmasterにマージされました(PR #16250)。通常のアップデートだけで使えます。

概要

YuE2-3Bは、オリジナルのYuE歌詞から楽曲を生成するモデルの後継機です。チームはこれをフロンティア品質のオープン音楽生成として位置づけています。192件のWildSongBenchプロンプトにおいて、best-of-8サンプリングを用いたYuE2はSongBench平均6.9632に達し、Suno v5の6.8721を上回りました。これは評価対象となったすべてのオープンモデルおよびプロプライエタリモデルの中で最高の数値です。

WildSongBenchにおけるYuE2の楽曲品質とテキスト整列

192件のWildSongBenchプロンプトにおけるフロンティア水準の楽曲品質とテキスト整列。YuE2はシンボリックプランニングを使用。Bo8はbest-of-8を意味します。

最大の特徴は編集可能なスコアを伴うシンボリックプランニングです。テキストから直接音声へと進むのではなく、YuE2はまずメロディとコード(ABC記譜法)を含むプランを書き出し、そこから音声をレンダリングします。プランが明示的であるため、次のことが可能です。

  • 作曲と編集: 完全なメロディとコード、メロディのみ、またはスコアなしでの直接生成
  • 既存スコアの持ち込み: 既存のABCスコアを入力してYuE2に歌わせる
  • エージェントによる編集: 音楽的なフィードバックをスコア、スタイル、歌詞の修正に変換し、モデルに次のバージョンをレンダリングさせる。チームは1曲をマンダリンのポップスから英語のジャズへと変化させる14バージョンの編集チェーンを実演しています。

アーキテクチャ

YuE2のアーキテクチャ

1つのAR–NAR Mixture-of-Transformersバックボーンがスコアとセマンティックトークンを書き出し、flow matchingを通じて音響latentを生成します。VAEがそれらをステレオ音声に変換します。

YuE2はAR–NAR Mixture-of-Transformersバックボーンを採用しています。自己回帰ステージがスコアとセマンティックトークンを計画し、非自己回帰ステージがflow matchingによって音響latentを生成し、専用のVAEがそれらを48 kHzステレオ音声にデコードします。プランニングAPIと合成APIは別々に公開されているため、開発者はシンボリックなプランを検査したり置き換えたりできます。

出力例

モデルカードには、オリジナル楽曲とカバー曲を網羅するフルレングスのデモが同梱されています。

例スタイル長さ
Cyber Metal英語サイバーメタル5:00
今晚不眠マンダリンのファンク / ニューディスコ3:24
Passion英語ロック3:55
Auld Lang Syneジャズファンクのカバー3:10
最炫民族风バラードのカバー4:45
Jingle Bellsヘビーメタルのカバー1:09

カバーの例では、モデルが既存の楽曲をまったく異なるジャンルとして再解釈しており、エージェント編集のデモでは、1曲に対して9回のプランニングステップと14バージョンのレンダリングの流れを追うことができます。

実行方法

YuE2-3Bは、量子化なしで24 GBのNVIDIA GPU(Linux、Python 3.10+)上でローカルに動作します。チームはHugging Face上で7.3 GBのcheckpointとともに推論用wheelを配布しています。

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

このパイプラインは、Hugging Faceの読み込み、テキストガイダンス(CFG)、およびプランニングと合成の個別APIを公開しています。完全なノートブックとカバー/編集のレシピはREADMEにあります。

利用可能性

現時点ではネイティブのComfyUIサポートはありません。長年存在するコミュニティノードComfyUI_YuEはYuEシリーズをComfyUIでラップしたものですが、執筆時点ではYuE2向けに更新されていないため、今日YuE2-3Bを実行するには公式のPython推論パッケージが必要です。ホスト版のデモはプロジェクトページで利用できます。

ComfyUIネイティブサポートがmasterにマージ

9月11日、ComfyUIコアはPR #16250でネイティブYuE2サポートを実装し、その後フォローアップ修正とともにmasterへマージされました。最大楽曲長の拡張(PR #16292、最大900秒)、AMD修正とGenerate ABCノードの制御項目追加(PR #16293)、公式READMEでの対応明記(PR #16303)です。最近のmasterビルド(またはv0.35.0以降の次の安定版)を使っていれば、YuE2は同梱されており、ブランチのチェックアウトは不要です。統合には3つのノードが含まれます。シンボリックスコアプラン用のYuE2 Generate ABC、レンダリング用のYuE2 Generate Music、そしてEmpty YuE2 Latent Audioです。すぐに使えるオールインワンのcheckpoint(yue2.safetensors、7.8 GB)がComfy-OrgのHugging Faceアカウントで公開されており、テスト用ワークフローがプルリクエストに添付されています。中核となる2ノードの流れは、コミュニティの使い方と一致しています。Generate ABCが出力したABCテキストを保持すれば、複数回のレンダリングで同じメロディを再利用できます。

初期レンダリングは妥当な音質で、初日の粗い部分もすでに磨かれています。

  • YuE2はPyTorch、Transformers、その他の共有パッケージの正確なバージョンを固定しているため、YuE2のスタンドアロン要件をインストールするとComfyUIが必要とするパッケージが上書きされる可能性があります。ネイティブ統合は複数venvの問題を回避しますが、セットアップ後に環境を確認してください。
  • EmeraldApple-AI/ComfyUI-YuE2や、YuE2のwheelを分離するScryptHunterのフォークといったコミュニティノードパックも1日以内に登場しましたが、現時点では個人による実験的なプロジェクトです。
  • YuE2独自のVAEは連続的な音響latentとの間で音声を変換するだけなので、YuE2向けのLoRAトレーニングはまだ実現できません。離散的なセマンティック音楽トークンとYuE2専用のトレーニングパイプラインは公開されていません。

コメント

GitHubでサインインしてディスカッションに参加しましょう。

コメントを読み込み中…
YuE2-3B ComfyUI ワークフロー:MAPのオープン音楽生成モデル | ComfyUI Wiki