Нейросети в роли музыканта или как Google Magenta RealTime 2 генерирует звук на лету

09 июн 2026
1,799
199
26
3 недели

Знакомая история: вы пытаетесь использовать современную звуковую нейросеть, но она генерирует короткий отрывок за пару минут, пожирая всю видеопамять. Сочинять музыку вместе с таким инструментом в реальном времени не получится — задержка убивает любой творческий порыв. Ребята из Google DeepMind решили эту проблему, выпустив Magenta RealTime 2. Это не просто очередная модель для генерации аудио, а полноценный движок, который умеет создавать музыку быстрее, чем она звучит.

Что это такое

Magenta RealTime 2 (MRT2) — это проект с открытыми весами, предназначенный для потоковой генерации музыки. Главная фишка здесь в слове «streaming». Модель выдает аудио не целиком после долгого раздумья, а кусочками, с минимальной задержкой. В репозитории лежит всё необходимое: сама модель, Python-библиотека для экспериментов и C++ движок для тех, кто хочет встроить это в реальный софт.

Интересно, что проект максимально заточен под железо Apple. Модели работают на JAX и MLX, эффективно используя объединенную память макбуков. Для тех, у кого нет Mac, предусмотрена работа через классический Python на видеокартах NVIDIA, но настоящая магия «реального времени» во всей красе раскрывается именно на чипах M-серии.

Что внутри репозитория

Разработчики не стали ограничиваться одной библиотекой и насыпали гору полезного кода:

  • Core-движок на C++. Это сердце проекта, которое обеспечивает ту самую бесшовную генерацию.
  • Готовые приложения. В папке examples лежат полноценные плагины формата AUv3 для DAW (например, Logic Pro или Ableton) и десктопные приложения для macOS.
  • Инструменты управления. Есть Jam для контроля нот и Collider для поиска нужного звучания через текстовые промпты.

Кстати, в репозитории две версии модели. mrt2_small на 230 миллионов параметров «летает» даже на базовых MacBook Air. Если же у вас чип уровня Max, можно замахнуться на mrt2_base с 2.4 миллиардами параметров — звук там на порядок чище и сложнее.

Реклама

Как запустить и пощупать

Для начала работы понадобится Python 3.12 и менеджер пакетов uv (авторы проекта явно следят за трендами, так как uv сейчас объективно быстрее стандартного pip).

Быстрый старт выглядит так:

# Устанавливаем библиотеку с поддержкой MLX
uv pip install "magenta-rt[mlx]"

# Инициализируем модели
mrt models init
mrt models download

# Генерируем тестовый фрагмент
mrt mlx generate --prompt "disco funk" --duration 4.0 --model=mrt2_base

Если вы занимаетесь системной разработкой, можно собрать CLI-утилиту на C++. Это отличный пример того, как интегрировать тяжелые нейронки в нативный код без огромного оверхеда.

cmake . -B build
cmake --build build --target hello_mrt2 -j10

./build/examples/hello_mrt2/hello_mrt2 \
    ~/path/to/model \
    ~/path/to/resources \
    100 \
    --prompt "ambient pads with sub bass"

Почему это важно для разработчиков

Во-первых, это открытые веса. Google не просто показал красивое демо, а отдал рабочую технологию, которую можно дообучать под свои задачи (авторы обещают скоро добавить поддержку supervised fine-tuning).

Во-вторых, это архитектурный пример. Если вы когда-нибудь ломали голову над тем, как организовать инференс модели так, чтобы звук не заикался при нагрузке на процессор, исходники в папке core/ станут отличным учебником. Там наглядно показано взаимодействие высокоуровневого управления и низкоуровневой обработки сигналов.

Практические кейсы

Для кого этот проект станет находкой:

  • Разработчики музыкального софта. Можно создать бесконечный генератор фоновой музыки или умного помощника для композитора, который дописывает партии в реальном времени.
  • Геймдев. Динамический саундтрек, который меняется в зависимости от действий игрока, теперь реализовать проще.
  • Исследователи звука. Проект позволяет контролировать «пространство промптов», превращая текстовое описание в музыкальную структуру.

Magenta RealTime 2 — это редкий пример того, как академические наработки Google превращаются в осязаемый инструмент для разработчиков. Проект требователен к железу (Apple Silicon в приоритете), но результат того стоит. Если вы занимаетесь аудио или просто любите копаться в том, как устроены современные генеративные модели, этот репозиторий определенно заслуживает места в ваших закладках.

Начать изучение советую с ноутбуков в папке notebooks/ — там можно быстро прогнать модель через Python API и понять, подходит ли вам такое звучание, прежде чем погружаться в дебри C++.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.