tool

MiniMax Music 3.0 正式登場:新一代音樂生成模型,實現高傳真與深度創意掌控

August 14, 2026
Updated Aug 14
3 min read
MiniMax Music 3.0 正式登場:新一代音樂生成模型,實現高傳真與深度創意掌控

MiniMax Music 3.0:音樂生成技術解析與本地部署指南

只要輸入幾行文字,MiniMax Music 3.0 就能為你創作並錄製一首長達五分鐘的完整歌曲。這款模型不只拼湊音軌,還能根據你的描述,處理編曲、演奏與製作流程。

相比其他模型,它的優勢在於長篇音樂的結構控制。透過架構與算法的全面重新設計,它能維持前奏、主歌、副歌、橋段到尾奏等完整音樂段落的一致性,顯著減少長曲生成中常見的旋律失控、人聲漂移或音色破碎問題。

圖片來源: MiniMax Music 3.0: Next-Generation Open-Weights, Production-Ready & Versatile Music Model - MiniMax Research | MiniMax


運作原理

MiniMax Music 3.0 重新設計了整個音樂生成管線,其核心架構由多層殘差向量量化、雙層層級語言模型(Hybrid-LM)以及連續隱狀態合成技術協同運作:

                    【 lyrics 】 + 【 music description 】
                                    ↓
                     Multi-layer RVQ (8-layer)
                                    ↓
            ┌───────────────────────┴───────────────────────┐
            ↓                                               ↓
      Global LLM (8B)                                 Local LLM (0.6B)
 (Qwen3.5-8B / Frame-level)                      (Acoustic-level / Depth-axis)
            │                                               │
            └───────────────────────┬───────────────────────┘
                                    ↓
                           Hidden-State Fusion
                                    ↓
                          Flow Matching (2.4B)
                                    ↓
                           Flow-VAE Latent
                                    ↓
                        Flow-VAE Decoder (123M)
                                    ↓
                         32 kHz Stereo Audio

1. 多層 RVQ 離散表徵

模型在編碼階段採用了 八層殘差向量量化(Residual Vector Quantization, RVQ) 技術:

  • 第一層(語義碼本): 包含 16,384 個條目,專門用來捕捉核心音樂語義與全域宏觀結構。
  • 第二至八層(聲學碼本): 每層包含 1,024 個條目,負責逐步編碼音樂的細微聲學殘差。
  • 訓練與推論分離: 訓練時分階段進行,先獨立訓練第一層,再聯合訓練八個碼本,平衡語義容量與細節重建。而在推論合成時,波形重建可以直接使用融合後的連續隱狀態特徵,不需透過離散 Token 進行解碼。

2. Hybrid-LM 架構(雙層層級語言模型)

為了解決長序列預測中結構與細節的權衡,模型採用了分層協同架構:

  • Global LLM (8B): 初始化自 Qwen3.5-8B。負責在時序(逐影格)上預測第一層 RVQ 代碼,管理整首歌的長期語義、段落結構和動態發展邏輯。
  • Local LLM (0.6B): 隨機初始化。專注於在單一影格內,沿著深度軸預測剩餘的七層聲學代碼,補全即時的聲學細節。

3. 連續隱狀態合成(Continuous Hidden-State Synthesis)

傳統系統通常將離散 Token 直接送入解碼器,容易引入高頻數位偽影。MiniMax Music 3.0 則是將 Global LLM 與 Local LLM 的最末層連續隱狀態進行特徵融合(Hidden-State Fusion)

  • 這些連續的高維特徵完整保留了人聲吐字、樂器質感與時間連續性。
  • 融合特徵隨後被送入一個 2.4B 參數的流匹配(Flow Matching) 模組,將特徵映射至 VAE 潛在空間。
  • 最後,由一個 123M 參數的 Flow-VAE 解碼器(改編自 MiniMax Speech 並針對音樂動態範圍優化)直接渲染輸出 32 kHz、16-bit 雙聲道高保真立體聲 WAV 音訊

提示詞與精細化控制技巧

MiniMax Music 3.0 支援高精度的細粒度生成控制,主要接收兩類輸入:歌詞(Lyrics)音樂描述(Music description)

1. 歌詞段落標籤

在歌詞中,可以利用大括號或中括號標籤來定義歌曲的宏觀結構。模型能辨識並對應生成適當的編曲張力:

  • [Intro](前奏)
  • [Verse](主歌)
  • [Pre-Chorus](前副歌)
  • [Chorus](副歌)
  • [Post-Chorus](後副歌)
  • [Bridge](橋段)
  • [Instrumental] / [Solo](間奏/獨奏)
  • [Outro](尾奏)

2. 結構化標籤描述(Structured Caption)

為了避免簡單自然語言提示詞容易發生的「配器漂移」或「情感弱化」問題,官方推薦使用包含三個層次的 結構化標籤(Structured Caption) 來編寫音樂描述:

  • 全域元資料(Global Metadata): 音樂風格(Genre)、子風格(Subgenre)、節奏(BPM)、主音調(Key)、音階(Scale)、情感發展軌跡、收聽場景及混音製作風格。
  • 人聲細節(Vocal Details): 歌手性別、音色特徵(如沙啞、甜美)、演唱技巧(如 falsetto、breathiness)、和聲配置與混響效果(如 Auto-Tune)。
  • 編曲與配器(Arrangement): 主奏與伴奏樂器、段落配器演進、節奏律動(Groove)、低頻能量(Bass/Percussion)、空間與立體聲效果。

3. 提示詞增強系統(Prompt Enhancement)

官方在 GitHub 中隨附了專屬的提示詞優化工具 music-caption-rewriter 代理技能(Agent Skill)。開發者可以使用此技能將簡短的自然語言描述擴展為結構完整的 Structured Caption:

npx skills add MiniMax-AI/MiniMax-Music3 --skill music-caption-rewriter

該工具會自動提取歌詞中的段落標籤,將相應的樂器演進與細節編入 Arrangement 段落中,同時保持歌詞的乾淨。


本地部署與推理實戰指南

1. 模型權重下載

首先使用 Hugging Face CLI 下載完整模型權重:

hf download MiniMaxAI/MiniMax-Music3 --local-dir /path/to/minimax_ttm

2. 方案 A:使用 SGLang-Omni 提供 API 服務(雙卡環境)

目前官方原生地由 sglang-omni 推理引擎提供 Serving 支援:

# 從 sglang-omni 專案根目錄執行服務
sgl-omni serve --model-path MiniMaxAI/MiniMax-Music3 --port 8000
  • 多卡分流邏輯: 此 Serving 必須在兩張 CUDA GPU 下運行。其中 GPU 0 負責 Qwen3 語言模型與八碼本 RVQ 自回歸生成;GPU 1 則運行 2.4B Flow Matching 與 Waveform 聲學解碼。
  • API 呼叫範例(使用共享 Speech API):
curl http://127.0.0.1:8000/v1/audio/speech \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "MiniMaxAI/MiniMax-Music3",
    "input": "[Verse]\\nMorning light filtering through the pine\\n[Chorus]\\nSoftly the world begins to breathe",
    "instructions": "Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. Vocals: soft female lead, close and breathy.",
    "response_format": "wav",
    "seed": 7,
    "max_new_tokens": 9000,
    "stream": false
  }' \
  --output minimax_music3.wav

3. 方案 B:使用 🧨 Diffusers 本地單卡與低顯存部署(8GB VRAM)

如果您希望在單張 GPU(甚至消費級 8GB 顯卡)上運行,可以採用 Diffusers 的模組化管線。

首先,安裝指定的 Diffusers 分支與相依套件:

pip install git+https://github.com/huggingface/diffusers@dafe3733fcfdbf3c48915fe77be3aef65b5d6a2d transformers accelerate soundfile

24GB+ 完整顯示卡單卡推論代碼:

import soundfile as sf
import torch
from diffusers import ModularPipeline

# 載入模組化管線
pipe = ModularPipeline.from_pretrained("MiniMaxAI/MiniMax-Music3")
pipe.load_components(dtype=torch.bfloat16)
pipe.to("cuda")

lyrics = """[verse]
Morning light filtering through the pine
Every quiet street is yours and mine
[chorus]
Softly the world begins to breathe"""

prompt = (
    "Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. "
    "Vocals: soft female lead, close and breathy, light stacked harmonies in the chorus. "
    "Arrangement: fingerpicked guitar and soft piano; brushed drums and upright bass enter in the chorus."
)

# 執行音樂生成
audio = pipe(
    prompt=prompt,
    lyrics=lyrics,
    audio_duration=60.0, # 設定生成長度
    generator=torch.Generator("cuda").manual_seed(7),
    output="audios",
)[0]

# 儲存為 32kHz 雙聲道音訊
sf.write("song.wav", audio.T.float().cpu().numpy(), pipe.sampling_rate)

8GB 顯存低配版分流推論(Low VRAM):

藉由啟用 CPU 自動分流(Auto CPU Offload)與語言模型層級流式分流(Group Layer-by-layer Offloading),可在 8GB VRAM 的顯示卡上順暢運算(速度稍慢,但能避免顯存溢出):

import torch
from diffusers import ComponentsManager, ModularPipeline
from diffusers.hooks import apply_group_offloading

# 建立組件管理器並啟用 CPU 分流(顯存佔用降至約 22GB)
manager = ComponentsManager()
manager.enable_auto_cpu_offload(device="cuda")

pipe = ModularPipeline.from_pretrained("MiniMaxAI/MiniMax-Music3", components_manager=manager)
pipe.load_components(dtype=torch.bfloat16)

# 核心優化:將語言模型進行層級分流(VRAM 需求進一步降至 8GB)
apply_group_offloading(
    pipe.language_model, 
    onload_device=torch.device("cuda"), 
    offload_type="leaf_level", 
    use_stream=True
)

限制與常見問題

1. 當前系統局限性

  • 硬體依賴: 本地推理需要硬體支援 CUDA 計算,目前 SGLang-Omni 部署強制需要兩張 GPU。
  • 無串流輸出: 目前版本僅支援非串流式生成(Non-streaming generation),必須等整首歌曲渲染完畢後方能輸出。
  • 輸入與長度上限: 歌詞與描述的 Token 數量上限為 5,000 個;單次音訊生成上限為 9,000 個聲學影格(每秒 25 影格,因此最大實際生成長度受此硬性約束)。
  • 非嚴格控制: 段落標籤與結構化描述是做為引導性的生成條件,並不提供 100% 絕對的符號約束(即生成的 BPM、Key 或段落有時可能存在微小隨機漂移)。

2. 常見問題解答

Q: 最長可以生成多久的歌曲? 答:模型原生支持最長 5 分鐘的完整音軌生成。

Q: 是否可以同時控制音色與情緒? 答:可以。由於模型在隱空間中融合了連續隱狀態,它原生支持音色與情緒特徵的分離,能靈活將參考音色與結構化 caption 中指定的情緒指令結合渲染。

Q: 如何開始最簡單的測試? 答:如果您不想本地配置環境,可以直接前往 MiniMax Music 3 官方 Demo 網頁 體驗或參考 Hugging Face 的 Spaces 託管工作流。


分享至:
Featured Partners

© 2026 Communeify. All rights reserved.