Google Magenta RealTime 2:用 MacBook 实时弹 AI 音乐,延迟只有 200ms

Google Magenta 团队在 6 月 4 号悄咪咪放了个大招——Magenta RealTime 2。如果说上一代 MRT 更像一个能「离线渲染」的 AI 音乐生成器,那 MRT2 就是真正意义上的实时乐句工具:你弹一段 MIDI,它 200ms 内就跟着你的思路响。

而且全部本地运行,不需要联网,不需要 GPU——你的 MacBook Air 就能跑。

Magenta RealTime 2 架构概览:模型、推理引擎和示例应用
MRT2 整体架构:模型权重 → Python/C++ 推理引擎 → 4 个可直接运行的示例应用(来源:Google Magenta Blog)

为什么值得关注?

AI 生成音乐之前的问题很明确:延迟太大,没法实时交互。之前的模型(包括 MRT1)生成一段音频要等好几秒,放在 DAW 里你要先渲染、再听、再调,完全不是「弹奏」的体验。

MRT2 把控制延迟从 ~3 秒降到了 ~200ms,帧大小从 2 秒降到了 40ms。15 倍的提升。

MRT1 vs MRT2 对比图
MRT1 vs MRT2:15 倍延迟飞跃——控制延迟、帧大小、硬件要求、控制方式、模型大小和许可协议全面对比

这是什么概念?人类感知「实时」的阈值大概是 100-200ms(取决于场景)。200ms 已经足够让你跟着节拍做即兴发挥了——虽然不能说完全零感知,但已经进入了「可演奏」的范畴。

硬件门槛:低得惊人

模型 参数量 实时演奏 离线生成
mrt2_small 230M (~450MB) 所有 Apple Silicon(含 Air) 所有 Apple Silicon
mrt2_base 2.4B (~2.5GB) M3 Pro / M2 Max 及以上 同上

就是说你手上的 M1 MacBook Air 也能用 small 模型实时生成音乐。2.5GB 的大模型也不挑 GPU,M 系列的统一内存天然适合这种场景。

三模态控制:文本、音频、MIDI 一起上

MRT2 支持三种控制信号,可以同时用:

  • 文本提示——描述风格,比如 disco funk、ambient pads with sub bass
  • 音频参考——给一段现有音频做风格参考
  • MIDI 输入——直接弹一段旋律控制生成

这三个信号通过 Multi-signal CFG(分类器自由引导) 混合,你可以分别调节每个信号的强度。比如把 MIDI 强度拉满、文本放弱,就是「按我弹的即兴生成,但风格请参考这个提示词」。

另外还有个细节:MRT2 支持 Auto-Strum(自动琶音,模型决定触发时机)和 Explicit Onset(你精确控制每个音符的起止)两种模式,看你想要「跟着感觉走」还是「精确控制每一个音」。

技术架构:一边播一边算

MRT2 基于 SpectroStream 编解码器——48kHz 立体声压到 3 kbps,25Hz 帧率,每帧 12 个 RVQ token。生成时采用因果滑动窗口注意力(SWA),只保留最近一段 KV cache,可以持续流式生成。

有意思的一点是它用了 NoPE(No Positional Embeddings)——不做位置编码反而在长序列生成上更稳定。配合可学习的 attention sink,即使窗口滑动也不会丢掉上下文。

MRT2 推理延迟时序图
MRT2 端到端延迟约 200ms:输入缓冲 → 帧处理(40ms) → 深度解码 → 编解码器 → 输出缓冲(来源:Google Magenta Blog)

拿来就能用的 4 个应用

Google 直接给了四个成品应用,GitHub 上源码全开(Apache 2.0):

  1. Jam——独立 APP,带风格预设和完整的 MIDI 控制界面
  2. Collider——实时混合两种风格输入,生成过渡纹理。比如从 jazz 平滑过渡到 electronic
  3. MRT2 Plugin(AUv3)——直接插进 Logic Pro、GarageBand,在 DAW 里当插件用
  4. Creative Coding Extensions——自定义集成接口,适合做实验

对大多数用户来说,最实用的可能是 AUv3 插件——直接在 Logic Pro 里打开就能用,不用切窗口。

在 MacBook 上跑起来

快速体验只需要几条命令:

pip install magenta-rt[mlx]
mrt models init
mrt models download

# 生成 4 秒 disco funk
mrt mlx generate --prompt "disco funk" --duration 4.0 --model=mrt2_base

小模型(230M)第一次下载完大概占 450MB 磁盘,大模型(2.4B)约 2.5GB。推荐用 uv 管理 Python 环境,避免污染系统 Python。

如果要用 C++ 原生引擎做更低延迟的部署,需要从 GitHub 克隆源码并用 cmake 构建:

git clone --recurse-submodules https://github.com/magenta/magenta-realtime.git
cd magenta-realtime
uv pip install -e ".[mlx]"
uv pip install "cmake<3.28"
cmake . -B build
cmake --build build --target hello_mrt2 -j10

注意事项

  • 目前只支持 Apple Silicon(M 系列),Intel Mac 别想了。项目有计划支持 NVIDIA GPU 的 C++ 后端,但还没出来
  • 权重许可 CC-BY-4.0,可以商用但需要署名
  • Small 模型实时没问题,但音质不如 Base 模型。Base 模型实时要求 M3 Pro 或 M2 Max 以上
  • 首次使用需要从 HuggingFace 下载模型权重(约 2.5GB / 450MB)
  • 暂不支持微调,官方说未来会加

总结

MRT2 是一个真正的转折点:AI 音乐生成从「离线渲染」进入了「实时演奏」时代。它不依赖云端、不需要高端 GPU、有 DAW 插件可以直接用——对于一个开源模型来说,这个完成度相当高。

如果你有一台 Apple Silicon MacBook,又对音乐生成感兴趣,现在就可以上手试试——pip install 加一条命令就能听到结果,没什么比这更方便的了。


来源:Google Magenta Blog · GitHub · HuggingFace

发表评论