跳到主要内容

实时音乐生成模型

Magenta 本地部署:2.4B 实时音乐模型要多大显存,该租哪张卡

Google Magenta 现在的主线是 Magenta RealTime 2,mrt2_base 的 fp32 检查点 9.84GB、mrt2_small 只有 1.13GB。这页把真实的显存账、真实的安装命令和一个绕不开的坑讲清楚。

先说一件很多人搜「Magenta 本地部署」时会踩空的事:那个 19.8k star 的 magenta/magenta 老仓库,已经在 2026 年 1 月 6 日归档转只读了,magenta-demos 同一天一起归档。它属于 TensorFlow 1 时代的 MelodyRNN、MusicVAE、GANSynth,装依赖比跑模型还费劲。今天 Magenta 组织里还在动的是 magenta-realtime、ddsp、mt3、magenta-js、magenta-studio 这几个仓库,音乐生成的主线就是 magenta-realtime。

Magenta RealTime 2 于 2026 年 6 月 4 日发布,开源权重两档:mrt2_base 2.4B、mrt2_small 230M。它不是「输入一段文字等三十秒出一首歌」的那种模型,而是逐帧自回归的实时流式模型——一帧 40ms,v1 是 2 秒一块,v2 改成逐帧,控制延迟从大约 3 秒压到大约 200ms,官方说法是延迟降低约 15 倍。结构上是 SpectroStream 音频编解码器加 MusicCoCa 文本/音频联合嵌入,再接一个带 Depthformer 的 decoder-only Transformer。v2 还新增了 MIDI 条件输入,每帧一个 128 维 multihot 向量,可以拿键盘直接弹进去。

但有个关键限制必须提前讲明白:真正的实时流式播放走的是 Apple Silicon 上的 C++ 引擎和 MLX 后端,NVIDIA 显卡上跑的是 JAX 后端的离线(非实时)推理。所以租 GPU 的正确姿势不是「租张卡当实时合成器」,而是批量出片、做风格向量提取、跑评估集、微调下游模型——这些恰恰是本地 Mac 最吃不消、按秒计费的云卡最划算的部分。

01 —

Magenta 家族现在有哪些东西可以跑

权重都在 HuggingFace 的 google/magenta-realtime-2,整仓 15.6GB

版本参数量显存上下文说明
Magenta RealTime 2 · mrt2_base2.4Bfp32 检查点 9.84GB,bf16 权重约 4.8GB,建议 24GB 卡起每层 25 帧窗口注意力 × 20 层,约 20s 有效感受野质量档。Apple Silicon 上要 M2 Max/M3 Pro 以上才能实时;在 NVIDIA 上做离线批量生成正合适。
Magenta RealTime 2 · mrt2_small230Mfp32 检查点 1.13GB,bf16 权重约 0.46GB,16GB 卡绰绰有余每层 41 帧窗口注意力 × 12 层,同样约 20s 有效感受野轻量档。任意 Apple Silicon(含 MacBook Air)都能实时;云上适合大批量扫参数、跑消融实验。
SpectroStream 音频编解码器随权重包一同分发含在 15.6GB 仓库内,与 LLM 同卡驻留48kHz 立体声 → 25Hz 帧率 / 64 层 RVQ / 10-bit 码 / 16kbps负责把波形 token 化再还原。它决定了输出是 48kHz 立体声,而不是很多开源音乐模型那种 32kHz 单声道。
MusicCoCa 风格嵌入模型随权重包一同分发单独跑只做 embedding 时占用极小输入 16kHz 单声道音频或文本 → 768 维向量,量化为 12 层 RVQ token文本提示和音频提示共用一个空间,风格混合、音色克隆全靠它。可以脱离 LLM 单独调用来批量提特征。
Magenta RealTime v1(legacy 分支)论文口径整体 750M;LLM 分 Base 220M / Large 770M 两档HuggingFace google/magenta-realtime 仓库 11.1GB(TF/Keras savedmodel)10s 音频上下文,每次生成 2s 分块论文报告 Large 配置在 H100 上 RTF=1.8,Demo 可在免费 Colab TPU v2-8 上实时跑。要复现 2025 年的论文结果才用它。
magenta/magenta 经典 Python 库MelodyRNN / MusicVAE / GANSynth / Performance RNN 等TF1 时代模型,CPU 也能跑,显存不是瓶颈符号化 MIDI 为主,非音频波形已于 2026-01-06 归档只读,仅作论文附录保留。新项目请直接用 magenta-realtime;做转录去 mt3,做可微分合成去 ddsp。

02 —

该租哪张卡:按你实际要做的事对号入座

NexGPU 列表价,按秒计量按小时计价,停机即停止计算计费

  • 跑 mrt2_small、批量提 MusicCoCa 风格向量、扫提示词

    RTX 3090 24GB$0.193/卡·时

    1.13GB 的检查点在 24GB 上根本不占地方,而 3090 是整个价目表里最便宜又满足 JAX CUDA 13 的 sm_75 门槛的卡,比 Tesla T4 还便宜。

  • mrt2_base 2.4B 离线生成、bulk_generate 出片

    RTX 4090 24GB$0.540/卡·时

    9.84GB 的 fp32 检查点加上 SpectroStream 与 JAX 显存池,24GB 是稳妥起点,Ada 架构的吞吐比 3090 明显更适合长时间连续生成。

  • 同时驻留 codec、LLM 和一份微调副本,或做下游模型训练

    RTX A6000 48GB$0.817/卡·时

    48GB 能让你把 mrt2_base、SpectroStream、MusicCoCa 和优化器状态一起放下,不用反复换出换入,也不必和 JAX 的预分配策略斗智斗勇。

  • 追求最高单卡吞吐、逼近实时的离线流水线

    H100 SXM 80GB$3.582/卡·时

    Live Music Models 论文里唯一给出的 GPU 实测数字就是 H100 上 RTF=1.8(v1 Large 配置),要按这个基准做容量规划就直接上同款卡。

03 —

在 NexGPU 上把 Magenta RealTime 2 跑起来

Python 3.12 + uv + jax[cuda13],四步,从开机到出第一段音频

  1. 01

    开实例,先确认算力等级

    在 console.nexgpu.net 选一台 NVIDIA 实例,用 Ubuntu CLI 或 PyTorch 预置镜像即可,2000+ 镜像里不需要额外申请配额。开机第一件事是确认计算能力:jax[cuda13] 的下限是 sm_75(Turing),Volta 的 Tesla V100(sm_70)和 Pascal 的 Tesla P40(sm_61)在 CUDA 13 轮子上不受支持,得退回 jax[cuda12] 这条 legacy 路径(CUDA 12 支持 sm_52 及以上)。驱动方面 CUDA 13 要求 ≥ 580。

    nvidia-smi --query-gpu=name,compute_cap,memory.total --format=csv
  2. 02

    装 magenta-rt 和对应的 JAX 轮子

    官方要求 Python 3.12,并推荐用 uv 建环境。基础安装自带 CPU 版 JAX,必须自己额外装匹配硬件的加速轮子——这一步漏了,模型会安安静静地在 CPU 上跑,你只会觉得「怎么这么慢」。macOS 上那个 [mlx] extra 在 Linux 上没有意义,别照抄 README 的快速开始。

    uv venv --python 3.12 && source .venv/bin/activate && uv pip install "magenta-rt" "jax[cuda13]"
  3. 03

    拉权重(注意这一步是交互式的)

    mrt models init 先拉共享资源,mrt models download 再选模型。它是交互式选单,纯脚本化的无人值守部署要留意这一点,建议在 tmux 或 Jupyter 终端里跑完再转后台。权重默认落在 ~/Documents/Magenta/magenta-rt-v2/,在 Linux 服务器上是个挺意外的路径,做持久化存储挂载时记得对上——整仓 15.6GB。

    mrt models init && mrt models download
  4. 04

    生成音频,并按住 JAX 的显存池

    JAX 默认会预分配约 75% 的显存,多进程或同卡还要跑别的东西时会直接爆掉,先关掉预分配。mrt jax generate 出一段 4 秒的样例验证链路;批量出片用仓库里的 bulk_generate.py,结果落在 outputs/eval_audio/<size>/。想单独调风格嵌入,from magenta_rt.musiccoca import MusicCoCa 之后 m.tokenize(m.embed('a jazz piano trio')) 就能拿到 token。

    export XLA_PYTHON_CLIENT_PREALLOCATE=false && mrt jax generate && python scripts/bulk_generate.py --size=mrt2_base

一次批量出片到底花多少钱

以 mrt2_base 批量生成为例,选 RTX 4090 24GB,$0.540/卡·时。开机、拉镜像并跑完 mrt models init && mrt models download(整仓 15.6GB)约 12 分钟,即 0.2 小时 × $0.540 = $0.108;接着 bulk_generate.py --size=mrt2_base 连跑 3 小时,3 × $0.540 = $1.62。计算部分合计 3.2 小时 = $1.728,实例一停计算立刻停止计费,不存在最低时长或开通费。产物按 48kHz 16-bit 立体声 WAV 计,每分钟约 11.52MB,100 分钟约 1.15GB,按中位出网价 $0.0081/GB 下载回本地是 $0.009——不到一分钱。权重加输出占 40GB 存储,当天销毁实例只摊一天:40 × $0.414 ÷ 30 ≈ $0.55;整月保留才是 40 × $0.414 = $16.56,注意存储在实例销毁前会一直计费。合计一轮 3 小时的批量生成含下载不到 $1.8;若这一轮产出 100 分钟音频,折合每分钟音频约 $0.017。只跑 mrt2_small 的话换成 RTX 3090 24GB($0.193/卡·时),同样 3.2 小时只要 $0.618。

04 —

常见问题

pip install magenta 一直装不上,Magenta 老仓库是不是废弃了?

是的,magenta/magenta 和 magenta-demos 都在 2026 年 1 月 6 日归档转只读,README 明确说仓库现在只作为部分论文的补充材料保留。它是 TensorFlow 1 时代的产物,依赖链在今天的 Python 上几乎不可能装干净。音乐生成请转 magenta-realtime,多轨转录用 mt3,可微分合成用 ddsp,浏览器端用 magenta-js。这三个新仓库都是标准 Python 包,在 NexGPU 的 PyTorch 预置镜像上开箱即用,省掉你和 TF1 死磕的那两天。

Magenta RealTime 2 能在 NVIDIA 显卡上实时跑吗?

不能,这一点官方写得很直白:实时流式播放依赖 Apple Silicon 上的 C++ 推理引擎(magentart::core)和 MLX 后端,硬件支持表列的全是 M 系列芯片;两档模型都可以在任意 Apple Silicon Mac 或 NVIDIA GPU 上跑离线(非实时)推理,走 Python 库的 JAX 后端。所以租云 GPU 的价值在批量出片、风格向量提取、评估集跑分和下游微调——正是本地 Mac 最慢的部分。NexGPU 按秒计费,跑完就停,不用为闲置时间买单。

mrt2_base 需要多大显存?24GB 够不够?

够,而且是推荐起点。mrt2_base.safetensors 是 9.84GB,对 2.4B 参数正好是 fp32;折成 bf16 权重约 4.8GB。真正吃显存的是它之外的东西:SpectroStream 编解码器、MusicCoCa 嵌入模型,以及 JAX 默认预分配约 75% 显存的行为。把 XLA_PYTHON_CLIENT_PREALLOCATE 关掉之后,24GB 卡跑得很从容。NexGPU 的 RTX 4090 24GB 是 $0.540/卡·时,要更宽裕就上 RTX A6000 48GB $0.817/卡·时。

便宜的 Tesla V100 和 P40 能跑 magenta-rt 吗?

要看你装哪条 JAX 路径。当前推荐的 jax[cuda13] 最低要求 sm_75(Turing),Volta 的 V100 是 sm_70、Pascal 的 P40 是 sm_61,都在 CUDA 13 轮子的支持范围之外;legacy 的 jax[cuda12] 支持 sm_52 及以上,理论上能跑,但你要自己承担旧轮子的兼容风险。省事的做法是直接选 RTX 3090 24GB,$0.193/卡·时 比 Tesla T4 16GB 的 $0.298 还便宜,架构却新得多,NexGPU 上随时可开。

官方提到的 4-bit / 8-bit 量化能不能帮我用小显存跑 mrt2_base?

别指望。文档里的量化导出(mrt mlx export --bits=8,以及 --bits=4 --quantize-method=gptq --gptq-cal-steps=128)产出的是 .mlxfn 格式,服务对象是 Apple Silicon 上的 C++ 引擎,不是 CUDA 推理路径。在 NVIDIA 上你跑的是原始 safetensors 经 JAX 加载,显存账要按 fp32 的 9.84GB 起算。与其折腾量化,不如按小时租一张真正装得下的卡——NexGPU 上 24GB 的 RTX 4090 一小时 $0.540,一次实验的成本比你调通量化管线的时间便宜得多。

Magenta RealTime 2 的权重许可能商用吗?

代码是 Apache-2.0,模型权重是 Creative Commons Attribution 4.0(CC-BY-4.0),也就是署名即可商用,这在音乐生成模型里算相当宽松的。训练数据是约 71,000 小时的版权音乐库素材,以器乐为主;模型卡同时明确禁止用它生成侵犯他人版权作品的内容。要在自己的基础设施里评估这条许可、跑完整的合规测试集,NexGPU 覆盖 51 个国家/地区、1,175 个可租节点,可以按数据落地要求挑区域,支持走 Telegram 中英双语直连,没有工单队列。

开始使用 NexGPU

无论你是企业研发团队还是独立开发者,都可以在几分钟内跑起第一个任务。

注册即可浏览全网实时价格,无需绑定支付方式。