YuE2 is an open music generation model that turns lyrics and a style prompt into a complete song with vocals and accompaniment, by way of a symbolic melody-and-chord plan you can read and change before anything is rendered to audio. It comes from the multimodal-art-projection group with collaborators credited from HKUST, M-A-P, Tokenwave.AI, NYU, Stanford, MBZUAI, NOIZ and ACE Studio, is written in Python, and is released under Apache-2.0. It is for songwriters and producers who want more control than a prompt box gives them, and for machine-learning people working on music who want weights and code they can open up.
What it does
The project presents three jobs as one model:
- Write. Feed it lyrics and a style prompt, and it composes a melody-and-chord plan, then realizes that plan as a full song with vocals and accompaniment.
- Cover. Give it an existing song, and it produces a zero-shot cover.
- Edit. Ask it to change something — the harmony, say — and it revises the plan and re-renders the audio.
On quality, the authors state that YuE2 is competitive with Suno v5 and v6 on WildSongBench, and report that YuE2 with best-of-8 sampling reaches a SongBench Avg of 6.9632, the highest mean they observed among the settings they evaluated. That is the team's own measurement on the team's own benchmark, so treat it as a claim worth checking rather than a settled ranking.
How it works
The distinguishing idea is the two-step pipeline the README describes as white-box music generation. A typical song generator maps a prompt straight to a waveform: the musical decisions are locked inside the audio, so when the result is wrong there is nothing to fix except the prompt, and nothing to read that explains why it sounds the way it does. YuE2 instead writes the symbolic plan first — melody and chords — and then performs that plan as sound.
That plan is an artifact in its own right. You can read it, decide whether the chord movement is what you asked for, change it, and render from the edited version. The same mechanism is what makes covering and editing feel like one system rather than three separate features bolted together: covers and edits are operations on the plan, and the audio follows from it.
The repository publishes more than the generator itself. Alongside the YuE2-3B weights on Hugging Face, the README links MERT2 (MERT-v2-FullSong), SheetSage2 and the WildSongBench dataset, plus a demo page of generated audio and a benchmarks section.
Getting started
Everything starts from the README, which has a quick-start section, a benchmarks section, and a section on an agent skill for driving the model from an agent — the agentic editing side of the project. The weights live on Hugging Face as m-a-p/YuE2-3B, and there is a tagged release, yue2-v0.1.6, plus a Discord for questions and a public demo page if you want to hear output before installing anything.
One detail worth knowing: this repository has moved on from the original YuE. The code, documentation and license for version one are preserved on the YuE-v1 branch, so older tutorials and scripts still have a home, but the default branch is YuE2 and the two are not interchangeable. The project has roughly 7,200 stars and 813 forks, was created in January 2025, and was still being pushed to in September 2026.
When to use it / when not
Reach for YuE2 when the thing you care about is control: you want to see the musical decisions, adjust the harmony rather than reroll a prompt, iterate on one song instead of generating twenty and picking one, or build something on top of open weights under a permissive license. The cover and edit paths make it a reasonable base for tooling that has to do more than emit a finished track.
Skip it if you want a song in a browser tab in thirty seconds. This is a Python repository with model weights you run yourself, not a hosted service, and the setup work is real. If you never intend to look at the symbolic plan, the main advantage of the design is one you will not collect.
Alternatives
The comparison the project chooses for itself is Suno v5 and v6, which is a hosted commercial product rather than something you run; the trade is convenience against transparency and self-hosting. Within the repository, the YuE-v1 branch remains an alternative if you have existing work pinned to the original model. The materials here do not name other open music generators, so that is the honest extent of the comparison.
Anyone building music tooling, or doing research on symbolic and audio music generation together, should look at this seriously: an openly licensed model that exposes its composition as an editable plan is a different starting point from an audio-only black box, and the cover and edit capabilities fall out of that structure instead of being separate products. Musicians willing to work in Python get something closer to a collaborator whose decisions are visible. Everyone else is better served by a hosted generator until someone wraps this one in an interface.