m-a-p/WildSongBench

Dataset

5

stars

1

commits

1

linked in READMEs

Sep 9, 2026

updated

benchmark
music-generation

README

🤗 WildSongBench

A benchmark for full-song music generation

192 prompts · 94 Chinese · 98 English

🎵 YuE2 project · 🚀 Quick start · 📊 Benchmarks · 🔁 Reproduce · 📚 Citation

🤗 YuE2-3B   🤗 YuE2-Vae   🤗 YuE2-Vae-legacy   🤗 MERT-v2-30s   🤗 MERT-v2-FullSong   🤗 WildSongBench   SheetSage2

WildSongBench (WSB) contains 192 song-generation prompts: 94 Chinese and 98 English, used in the YuE2 benchmarks. This repository provides prompts, exact inputs and seeds, reference scores, and a minimal evaluator for SongBench, Q3O, MuQ-MuLan, AllMusicCaps and Qwen3-ASR PER. Audio is not included.

🚀 Quick start

from datasets import load_dataset

wsb = load_dataset("m-a-p/WildSongBench", split="test")

Each record contains a prompt. Generation inputs contain the corresponding style, lyrics and exact seeds for every prompt.

📊 Benchmarks

Recorded paper results on all 192 prompts. SongBench averages seven quality dimensions; Q3O measures prompt control on a 0–5 scale. MuQ-MuLan and AllMusicCaps measure audio–text similarity. PER is phoneme error rate.

ModelAccessSongBench ↑Q3O ↑MuQ-MuLan ↑AllMusicCaps ↑PER ↓
YuE2Open weights6.734.680.5070.4058.44%
YuE2 (best-of-8)Open weights6.964.700.5050.3989.79%
Mureka 9Proprietary6.944.640.4390.41011.69%
Suno v5Proprietary6.874.590.5430.4358.10%
Suno v5.5Proprietary6.714.590.5090.3925.96%
Suno v4.5Proprietary6.704.410.5020.3875.80%
LeVo 2Open weights6.323.950.3540.26826.12%
MiniMax Music 2.6Proprietary6.324.570.4250.36724.55%
MiniMax Music 3Open weights6.284.440.3930.3616.27%
HeartMuLaOpen weights6.253.490.3820.27910.71%
MuseOpen weights6.034.400.3940.34733.42%
ACE-Step 1.5Open weights6.014.580.4370.3877.46%
DiffRhythm 2Open weights5.244.090.3780.32518.41%
YuE 1Open weights4.923.730.2620.28836.38%
SongBloomOpen weights4.243.030.2700.19319.19%

Systems use their recorded candidate-selection protocols; this is not a matched-compute comparison. Full results and protocols.

🔁 Reproduce standard YuE2

Use YuE2-3B with YuE2-Vae-legacy for benchmark scoring. The scripts pin the tested checkpoints and inference version. The benchmark recipe retains inference version 0.1.3 with updated public repository defaults; model weights and numerical inference code are unchanged.

Run from the downloaded repository in a fresh Python 3.12 environment on Linux, with a C/C++ compiler for Q3O's key scorer. Q3O requires an 80 GB GPU; the other metrics support 24 GB. Public evaluator weights download once at fixed revisions (~83 GB for all metrics). The installer creates the required environments. Select your GPU by its numeric index below.

python -m pip install huggingface-hub==0.36.2
export CUDA_VISIBLE_DEVICES=0
python code/install_inference.py
tar --no-same-owner -xzf evaluation/wsb_metrics.tar.gz
python wsb_metrics/wsb_eval.py prepare \
  --metrics all --download huggingface --install

python code/generate.py --candidates 2 --backend torch --output runs/wsb
python wsb_metrics/wsb_eval.py score \
  --input runs/wsb/evaluation_inputs.jsonl \
  --output runs/scores --mode standard --metrics per,songbench
python wsb_metrics/wsb_eval.py score \
  --input runs/wsb/evaluation_inputs.jsonl \
  --per-results runs/scores/per_song.jsonl \
  --output runs/additional --metrics mulan,allmusiccaps,q3o

For prompt row i (zero-based, 0–191), generate two candidates with seeds 831001 + i and 831019 + i. The script applies each seed to symbolic planning, semantic generation and acoustic synthesis. Four ASR passes estimate each candidate's PER; the lower-PER candidate is selected for every metric. Score all 192 prompts and retain capped outputs. Q3O uses the paper's fixed candidate weights and traditional key scoring. The scripts handle preprocessing and tie breaks.

On a 24 GB GPU, prepare per,songbench,mulan,allmusiccaps and omit q3o from the last command. The second scoring command reuses the first run's PER selection and evaluates exactly those 192 songs.

Selected scores are in runs/scores/summary.json (SongBench/PER) and runs/additional/summary.json (other metrics), under standard_selected.groups.all.

Fresh SongBench scores are 6.73 (H800) and 6.74 (RTX 4090), against 6.73 in the paper. On the original 192 songs, MuQ-MuLan and AllMusicCaps mean scores match within 0.000001. Q3O gives 4.69 vs 4.68 on the original audio and 4.71 on fresh H800 generations; equality to two decimals remains unresolved. Best-of-8 has not been rerun in full.

📚 Citation

Technical report coming soon. For now, please cite YuE when using WildSongBench in your research.

@article{yuan2025yue,
  title = {{YuE}: Scaling Open Foundation Models for Long-Form Music Generation},
  author = {Yuan, Ruibin and Lin, Hanfeng and Guo, Shuyue and Zhang, Ge and Pan, Jiahao and Zang, Yongyi and Liu, Haohe and Liang, Yiming and Ma, Wenye and Du, Xingjian and Du, Xinrun and Ye, Zhen and Zheng, Tianyu and Jiang, Zhengxuan and Ma, Yinghao and Liu, Minghao and Tian, Zeyue and Zhou, Ziya and Xue, Liumeng and Qu, Xingwei and Li, Yizhi and Wu, Shangda and Shen, Tianhao and Ma, Ziyang and Zhan, Jun and Wang, Chunhui and Wang, Yatian and Chi, Xiaowei and Zhang, Xinyue and Yang, Zhenzhu and Wang, Xiangzhou and Liu, Shansong and Mei, Lingrui and Li, Peng and Wang, Junjie and Yu, Jianwei and Pang, Guojian and Li, Xu and Wang, Zihao and Zhou, Xiaohuan and Yu, Lijun and Benetos, Emmanouil and Chen, Yong and Lin, Chenghua and Chen, Xie and Xia, Gus and Zhang, Zhaoxiang and Zhang, Chao and Chen, Wenhu and Zhou, Xinyu and Qiu, Xipeng and Dannenberg, Roger and Liu, Jiaheng and Yang, Jian and Huang, Wenhao and Xue, Wei and Tan, Xu and Guo, Yike},
  journal = {arXiv preprint arXiv:2503.08638},
  year = {2025},
  eprint = {2503.08638},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/2503.08638}
}

Contributors

a43992899

1 commits

m-a-p/WildSongBench

Dataset

5

stars

1

commits

1

linked in READMEs

Sep 9, 2026

updated

benchmark
music-generation

README

🤗 WildSongBench

A benchmark for full-song music generation

192 prompts · 94 Chinese · 98 English

🎵 YuE2 project · 🚀 Quick start · 📊 Benchmarks · 🔁 Reproduce · 📚 Citation

🤗 YuE2-3B   🤗 YuE2-Vae   🤗 YuE2-Vae-legacy   🤗 MERT-v2-30s   🤗 MERT-v2-FullSong   🤗 WildSongBench   SheetSage2

WildSongBench (WSB) contains 192 song-generation prompts: 94 Chinese and 98 English, used in the YuE2 benchmarks. This repository provides prompts, exact inputs and seeds, reference scores, and a minimal evaluator for SongBench, Q3O, MuQ-MuLan, AllMusicCaps and Qwen3-ASR PER. Audio is not included.

🚀 Quick start

from datasets import load_dataset

wsb = load_dataset("m-a-p/WildSongBench", split="test")

Each record contains a prompt. Generation inputs contain the corresponding style, lyrics and exact seeds for every prompt.

📊 Benchmarks

Recorded paper results on all 192 prompts. SongBench averages seven quality dimensions; Q3O measures prompt control on a 0–5 scale. MuQ-MuLan and AllMusicCaps measure audio–text similarity. PER is phoneme error rate.

ModelAccessSongBench ↑Q3O ↑MuQ-MuLan ↑AllMusicCaps ↑PER ↓
YuE2Open weights6.734.680.5070.4058.44%
YuE2 (best-of-8)Open weights6.964.700.5050.3989.79%
Mureka 9Proprietary6.944.640.4390.41011.69%
Suno v5Proprietary6.874.590.5430.4358.10%
Suno v5.5Proprietary6.714.590.5090.3925.96%
Suno v4.5Proprietary6.704.410.5020.3875.80%
LeVo 2Open weights6.323.950.3540.26826.12%
MiniMax Music 2.6Proprietary6.324.570.4250.36724.55%
MiniMax Music 3Open weights6.284.440.3930.3616.27%
HeartMuLaOpen weights6.253.490.3820.27910.71%
MuseOpen weights6.034.400.3940.34733.42%
ACE-Step 1.5Open weights6.014.580.4370.3877.46%
DiffRhythm 2Open weights5.244.090.3780.32518.41%
YuE 1Open weights4.923.730.2620.28836.38%
SongBloomOpen weights4.243.030.2700.19319.19%

Systems use their recorded candidate-selection protocols; this is not a matched-compute comparison. Full results and protocols.

🔁 Reproduce standard YuE2

Use YuE2-3B with YuE2-Vae-legacy for benchmark scoring. The scripts pin the tested checkpoints and inference version. The benchmark recipe retains inference version 0.1.3 with updated public repository defaults; model weights and numerical inference code are unchanged.

Run from the downloaded repository in a fresh Python 3.12 environment on Linux, with a C/C++ compiler for Q3O's key scorer. Q3O requires an 80 GB GPU; the other metrics support 24 GB. Public evaluator weights download once at fixed revisions (~83 GB for all metrics). The installer creates the required environments. Select your GPU by its numeric index below.

python -m pip install huggingface-hub==0.36.2
export CUDA_VISIBLE_DEVICES=0
python code/install_inference.py
tar --no-same-owner -xzf evaluation/wsb_metrics.tar.gz
python wsb_metrics/wsb_eval.py prepare \
  --metrics all --download huggingface --install

python code/generate.py --candidates 2 --backend torch --output runs/wsb
python wsb_metrics/wsb_eval.py score \
  --input runs/wsb/evaluation_inputs.jsonl \
  --output runs/scores --mode standard --metrics per,songbench
python wsb_metrics/wsb_eval.py score \
  --input runs/wsb/evaluation_inputs.jsonl \
  --per-results runs/scores/per_song.jsonl \
  --output runs/additional --metrics mulan,allmusiccaps,q3o

For prompt row i (zero-based, 0–191), generate two candidates with seeds 831001 + i and 831019 + i. The script applies each seed to symbolic planning, semantic generation and acoustic synthesis. Four ASR passes estimate each candidate's PER; the lower-PER candidate is selected for every metric. Score all 192 prompts and retain capped outputs. Q3O uses the paper's fixed candidate weights and traditional key scoring. The scripts handle preprocessing and tie breaks.

On a 24 GB GPU, prepare per,songbench,mulan,allmusiccaps and omit q3o from the last command. The second scoring command reuses the first run's PER selection and evaluates exactly those 192 songs.

Selected scores are in runs/scores/summary.json (SongBench/PER) and runs/additional/summary.json (other metrics), under standard_selected.groups.all.

Fresh SongBench scores are 6.73 (H800) and 6.74 (RTX 4090), against 6.73 in the paper. On the original 192 songs, MuQ-MuLan and AllMusicCaps mean scores match within 0.000001. Q3O gives 4.69 vs 4.68 on the original audio and 4.71 on fresh H800 generations; equality to two decimals remains unresolved. Best-of-8 has not been rerun in full.

📚 Citation

Technical report coming soon. For now, please cite YuE when using WildSongBench in your research.

@article{yuan2025yue,
  title = {{YuE}: Scaling Open Foundation Models for Long-Form Music Generation},
  author = {Yuan, Ruibin and Lin, Hanfeng and Guo, Shuyue and Zhang, Ge and Pan, Jiahao and Zang, Yongyi and Liu, Haohe and Liang, Yiming and Ma, Wenye and Du, Xingjian and Du, Xinrun and Ye, Zhen and Zheng, Tianyu and Jiang, Zhengxuan and Ma, Yinghao and Liu, Minghao and Tian, Zeyue and Zhou, Ziya and Xue, Liumeng and Qu, Xingwei and Li, Yizhi and Wu, Shangda and Shen, Tianhao and Ma, Ziyang and Zhan, Jun and Wang, Chunhui and Wang, Yatian and Chi, Xiaowei and Zhang, Xinyue and Yang, Zhenzhu and Wang, Xiangzhou and Liu, Shansong and Mei, Lingrui and Li, Peng and Wang, Junjie and Yu, Jianwei and Pang, Guojian and Li, Xu and Wang, Zihao and Zhou, Xiaohuan and Yu, Lijun and Benetos, Emmanouil and Chen, Yong and Lin, Chenghua and Chen, Xie and Xia, Gus and Zhang, Zhaoxiang and Zhang, Chao and Chen, Wenhu and Zhou, Xinyu and Qiu, Xipeng and Dannenberg, Roger and Liu, Jiaheng and Yang, Jian and Huang, Wenhao and Xue, Wei and Tan, Xu and Guo, Yike},
  journal = {arXiv preprint arXiv:2503.08638},
  year = {2025},
  eprint = {2503.08638},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/2503.08638}
}

Contributors

a43992899

1 commits