Skip to content

feat: [new model] minimax music3 - #5345

Merged
qinxuye merged 10 commits into
xorbitsai:mainfrom
Minamiyama:models/minimax-music3
Aug 17, 2026
Merged

feat: [new model] minimax music3#5345
qinxuye merged 10 commits into
xorbitsai:mainfrom
Minamiyama:models/minimax-music3

Conversation

@Minamiyama

@Minamiyama Minamiyama commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR adds initial MiniMax-Music3 support as a built-in audio model with the new text2music ability.

  • Adds MiniMax-Music3 using Diffusers ModularPipeline
  • Supports Hugging Face and ModelScope model sources
  • Adds a dedicated Music Generation Web UI
  • Reuses the OpenAI-compatible POST /v1/audio/speech endpoint
  • Adds user documentation and request examples

Backend

  • Model family: minimax_music3
  • Model ability: text2music
  • Engine: Diffusers only
  • Accelerator: NVIDIA CUDA only
  • Default dtype: BF16
  • Supports optional CPU and group offload
  • Loads pipeline components from the local Xinference model cache to avoid duplicate downloads
  • Pins the Diffusers commit containing MiniMax-Music3 ModularPipeline support
  • Preserves the pipeline's native 44.1 kHz, stereo, float32 audio without resampling or quantization
  • Encodes the result as a standards-compliant IEEE-float WAV

The model is registered under the MiniMax-Music3 Community License.

API

Music generation reuses /v1/audio/speech:

  • input: lyrics
  • kwargs.instruct: music description
  • kwargs.seed: non-negative random seed, default 0
  • kwargs.duration: maximum duration in seconds, default 60, range 0.04 to 360
  • response_format: wav only

Unsupported speech or sampling parameters are rejected with model-specific validation errors.

Web UI

Adds a distinct Music Generation capability with:

  • Multiline lyrics input
  • Music description input
  • Seed input with a random-seed button
  • Duration in seconds
  • WAV audio playback

Regular TTS and voice-cloning forms retain their existing behavior.

1eec3e0c37196c411e0e52a72dc0bf7e
@XprobeBot XprobeBot added the gpu label Aug 16, 2026
@XprobeBot XprobeBot added this to the v3.x milestone Aug 16, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request integrates the MiniMax-Music3 text-to-music model into Xinference, adding backend support via the Diffusers ModularPipeline engine, updating model specifications, and introducing a new 'text2music' capability. It also updates the frontend UI to support music generation with localized translations and dedicated form fields. The review feedback suggests fixing a conflict between group offloading and CPU offloading in the backend, supporting 'bf16' as a data type alias, using safer number parsing with fallbacks in the frontend configuration, improving the lyrics input placeholder text, and adding the new model to the legacy dispatch chain for robustness.

Comment thread xinference/model/audio/minimax_music3.py
Comment thread xinference/model/audio/minimax_music3.py
Comment thread xinference/model/audio/core.py
@qinxuye qinxuye changed the title Models/minimax music3 Aug 16, 2026
@Minamiyama
Minamiyama force-pushed the models/minimax-music3 branch from 8d76a44 to e255c84 Compare August 16, 2026 14:58
Comment thread xinference/model/audio/engine.py Outdated
Comment thread xinference/model/audio/engine.py
Comment thread frontend/src/components/pages/running-model-detail/capability-config.tsx Outdated

@qinxuye qinxuye left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@qinxuye
qinxuye merged commit a9b4ced into xorbitsai:main Aug 17, 2026
14 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

3 participants