MusicGen Melody — это melody-guided чекпоинт MusicGen от Meta FAIR (facebook/musicgen-melody на Hugging Face): вы даёте текстовое описание и аудио-мелодию, модель держит chroma-контур и собирает новый инструментальный фрагмент. Ниже — старт через Audiocraft, метрики с карточки и границы лицензии. Обзор семейства — MusicGen.
Соседи: Stable Audio, Stable Audio Open, Beatoven, MiniMax Music. Локальный стек рядом — Ollama / LM Studio. Pillar новичка — нейросети для начинающих.
Melody vs text-only чекпоинты
| Чекпоинт | Ориентир | Вход | MusicCaps (карточка HF) |
|---|---|---|---|
| musicgen-small | ~300M | text | FAD 4.88 · KLD 1.42 · Text 0.27 |
| musicgen-medium | ~1.5B | text | FAD 5.14 · KLD 1.38 · Text 0.28 |
| musicgen-large | ~3.3B | text | FAD 5.48 · KLD 1.37 · Text 0.28 |
| musicgen-melody | ~1.5B melody | text + melody/audio | FAD 4.93 · KLD 1.41 · Text 0.27 · Chroma 0.44 |
Источник: huggingface.co/facebook/musicgen-melody (+ sibling-карточки), статья arXiv:2306.05284, github.com/facebookresearch/audiocraft. Сверка 2026-09-22. Веса CC-BY-NC 4.0, код MIT. Цен в ₽ у open-weights нет.
Как устроен контроль мелодии
MusicGen — single-stage Transformer над EnCodec 32 kHz с 4 codebooks @ 50 Hz: все codebooks в одном проходе (без отдельного semantic LM как у MusicLM). Вариант melody учится на melody-guided задаче: кроме текста модель видит chroma-условие с референсной мелодии.
В Audiocraft демо: MusicGen.get_pretrained('melody') → set_generation_params(duration=8) → torchaudio.load(...) → generate_with_chroma(descriptions, melody, sr) → audio_write с loudness -14 LUFS.
Маршрут за один вечер
- Железо: без GPU — HF Space/демо MusicGen; с GPU — локальный Audiocraft.
pip install git+https://github.com/facebookresearch/audiocraft.gitи ffmpeg.- Подготовьте короткий melody-файл (фраза/хук), не весь альбом.
- Один английский description на дубль: genre + instruments + mood.
- Сгенерируйте 2-3 варианта с duration 8-15 с; сравните удержание мелодии на слух.
- Права: CC-BY-NC на веса ≠ «можно в платную рекламу клиента». Для sync-лицензии смотрите SaaS.
import torchaudio
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write
model = MusicGen.get_pretrained('melody')
model.set_generation_params(duration=8)
descriptions = ['happy rock', 'energetic EDM', 'sad jazz']
melody, sr = torchaudio.load('./assets/bach.mp3')
wav = model.generate_with_chroma(
descriptions,
melody[None].expand(3, -1, -1),
sr,
)
for idx, one_wav in enumerate(wav):
audio_write(f'{idx}', one_wav.cpu(), model.sample_rate, strategy='loudness')
Ограничения (карточка HF)
- Нет realistic vocals.
- Английские описания сильнее.
- Не все жанры/культуры равны.
- Иногда обрыв в тишину в конце.
- Downstream без risk mitigation — out-of-scope.
Типичные ошибки
- Кормить melody-чекпоинт без аудио-условия и ждать «магии chroma».
- Писать только по-русски и винить модель.
- Ставить large-ожидания на weak GPU с melody 1.5B.
- Считать NC-веса коммерческой sync-лицензией.
- Путать research-демо с кабинетом Beatoven/Mubert.
FAQ: MusicGen Melody
Что такое MusicGen Melody?
facebook/musicgen-melody — melody-guided чекпоинт MusicGen (Meta FAIR / Audiocraft): текст + мелодия/аудио-условие → инструментальный фрагмент. Размер около 1.5B параметров; веса CC-BY-NC 4.0.
Чем melody отличается от small/medium/large?
Small/medium/large — text-to-music. Melody добавляет контроль мелодии через chroma (generate_with_chroma в Audiocraft). На MusicCaps у melody указан Chroma Cosine Similarity 0.44.
Как запустить новичку?
Установка audiocraft + ffmpeg, MusicGen.get_pretrained(‘melody’), set_generation_params(duration=8), загрузка melody WAV/MP3 через torchaudio, затем generate_with_chroma(descriptions, melody, sr). Либо HF Spaces/демо, если железо слабое.
Поёт ли MusicGen Melody?
Нет. Limitations HF: модель не умеет realistic vocals; вокал вырезали из данных (в т.ч. HT-Demucs). Ждите инструментал.
Можно ли коммерчески использовать выход?
Веса CC-BY-NC 4.0; код Audiocraft — MIT. Карточка: downstream без доп. risk evaluation — out-of-scope. Для явной sync-лицензии под монетизацию ролика чаще SaaS вроде Beatoven/Mubert.
Какой язык промпта лучше?
Карточка: модель обучена на английских описаниях и на других языках работает слабее. Пишите genre + instruments + mood на английском.
Вывод
MusicGen Melody берите, когда нужен контроль мелодии в open research-стеке Meta, а не песня с вокалом из облака. Старт: melody-файл + английский промпт + 2-3 дубля. Для монетизируемого BGM с явной licence чаще SaaS. Разбор пайплайна под задачу — на странице обучения.
Хотите нейросети под свои задачи, а не «для всех»?
Когда базовых гайдов уже мало, помогает разбор под вашу работу. Наставничество, курсы и подписка Артёма Денисова — все форматы на странице обучения. Креатив-pillar — Midjourney для начинающих.