Download README.md from Serveurperso/YuE2-GGUF: direct link, hf CLI and curl.
- Browser
- Download file 4.97 kB
-
https://huggingface.co/Serveurperso/YuE2-GGUF/resolve/b715ef189171d4b011ecc48c099a470ce8c6ffc8/README.md
- Command line
-
hf download hf://Serveurperso/YuE2-GGUF@b715ef189171d4b011ecc48c099a470ce8c6ffc8/README.md
-
curl -L -o README.md https://huggingface.co/Serveurperso/YuE2-GGUF/resolve/b715ef189171d4b011ecc48c099a470ce8c6ffc8/README.md
language:
- en
- zh
- ja
- ko
- fr
- es
tags:
- music-generation
- text-to-music
- ggml
- gguf
- cpp
- yue2
- flow-matching
- abc-notation
license: cc-by-nc-4.0
base_model:
- m-a-p/YuE2-3B
- m-a-p/YuE2-Vae
YuE2 GGUF
Pre-quantized GGUF models for yue2.cpp, a portable C++17 implementation of YuE2 song generation using GGML.
Style tags and lyrics in, stereo 48kHz audio out, with the ABC score the model composed on the way. Runs on CPU, CUDA, Vulkan.
Quick start
git clone --recurse-submodules https://github.com/ServeurpersoCom/yue2.cpp
cd yue2.cpp
pip install hf
./models.sh # downloads the Q8_0 set (~4.4 GB)
mkdir build && cd build
cmake .. -DGGML_CUDA=ON
cmake --build . --config Release -j$(nproc)
cd ..
./build/yue-server --host 0.0.0.0 --port 8087 \
--model models/YuE2-3B-Q8_0.gguf \
--vae models/YuE2-Vae-F32.gguf
Open http://localhost:8087 in your browser. The embedded WebUI handles everything: write style tags and lyrics, generate, read the score the model wrote, play and download tracks.
CLI tools (without the server)
# full pipeline: score, semantic codes, flow matching, VAE
./build/yue-synth \
--model models/YuE2-3B-Q8_0.gguf \
--vae models/YuE2-Vae-F32.gguf \
--style style.txt \
--lyrics lyrics.txt \
--out song.mp3
# symbolic stage alone: the ABC score the model intends to play
./build/yue-plan \
--model models/YuE2-3B-Q8_0.gguf \
--style style.txt \
--lyrics lyrics.txt \
--out score.abc
Available models
Backbone (3.6B Mixture-of-Transformers)
| File | Quant | Size |
|---|---|---|
| YuE2-3B-BF16.gguf | BF16 | 7.17 GB |
| YuE2-3B-Q8_0.gguf | Q8_0 | 3.81 GB |
| YuE2-3B-Q6_K.gguf | Q6_K | 2.94 GB |
| YuE2-3B-Q5_K_M.gguf | Q5_K_M | 2.62 GB |
One file holds two complete transformers sharing their attention: the autoregressive half writes the score then the semantic codes, the non-autoregressive half renders them by flow matching. Q8_0 is near lossless and is what the scripts load. No Q4: an audio code LM breaks below Q5.
VAE
| File | Quant | Size |
|---|---|---|
| YuE2-Vae-F32.gguf | F32 | 530 MB |
Oobleck SnakeBeta decoder, 48 kHz stereo, 1920x upsample. Never quantized: its weights are the audio.
The converter keeps the native dtype of the source byte for byte, so no dtype exists in a GGUF that does not exist in the checkpoint.
Pipeline
Style tags + lyrics
v
backbone, autoregressive path ABC score, then semantic codes at 25 Hz
v KV cache, read not rebuilt
backbone, flow matching path midpoint ODE on 64 channel latents
v
Oobleck VAE decoder 1920x upsample -> 48 kHz stereo
The two halves share one KV cache: the flow matching side reads what the autoregressive side just wrote, so it never pays a prefill of its own. The ABC score is the white box of the pipeline: read it, edit a chord or a bar, hand it back, and the model realizes your version instead of writing a new one.
License
The model weights are licensed by their authors under Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0), and this repository redistributes them under the same terms. Non-commercial use only.
- Original work: YuE2 by MAP, from m-a-p/YuE2-3B and m-a-p/YuE2-Vae.
- Modifications: the checkpoint tensors are converted to the GGUF container, keeping their native dtype, and quantized to Q8_0, Q6_K and Q5_K_M for the backbone. No weight is retrained, fine tuned or otherwise altered in substance.
- The upstream license text ships in this repository as
LICENSE, and the weights are offered as-is, without warranties of any kind.
Nothing here is endorsed by or affiliated with the authors of YuE2.
Acknowledgements
Independent C++/GGML implementation based on YuE2 by MAP. All original model weights are theirs, this is a native backend.
@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 Ye, Zhen and Ma, Yinghao 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}
}
Links
- yue2.cpp - source code
- YuE - original Python implementation
- m-a-p on Hugging Face - original weights