Tailored news hub
homeAudio

¿Cómo funciona MOSS-SoundEffect v2.0?

Descubre la nueva generación de síntesis de efectos de sonido con Diffusion Transformer y Flow Matching para audio de alta fidelidad.

¿Cómo funciona MOSS-SoundEffect v2.0?
#Código Abierto#Entrenamiento#Generación de Contenido#LLM#Python

Explora MOSS-SoundEffect v2.0, el modelo de texto a audio que revoluciona la generación de efectos de sonido. Aprende sobre su arquitectura Diffusion Transformer, el uso de Flow Matching, y cómo genera audio de 48 kHz controlable en duración y multilingüe.

Una nueva generación de síntesis de efectos de sonido

MOSS-SoundEffect v2.0 es el modelo de texto a audio de la familia MOSS-TTS. A diferencia de la arquitectura autorregresiva con tokens discretos de la v1, la v2.0 utiliza un Diffusion Transformer (DiT) de espacio latente continuo, entrenado con un objetivo de Flow Matching. Genera audio de alta fidelidad a 48 kHz a partir de descripciones en lenguaje natural.

Su amplia cobertura incluye entornos naturales y urbanos, animales, acciones humanas y clips percutivos cortos. La duración de salida es controlable hasta 30 segundos, añadiendo una etiqueta de duración al inicio durante el entrenamiento. El modelo admite instrucciones tanto en inglés como en chino, lo que lo hace versátil para aplicaciones multilingües. Esta versión supone un salto sustancial en la calidad y flexibilidad de la generación de sonido.

Diffusion Transformer con Flow Matching

El núcleo de MOSS-SoundEffect v2.0 es un Diffusion Transformer de 1.3B parámetros que opera en un espacio latente comprimido proporcionado por un DAC VAE. Un Qwen3 text encoder convierte la instrucción en lenguaje natural en una incrustación de acondicionamiento.

El entrenamiento sigue el paradigma de Flow Matching, donde el modelo aprende a invertir un proceso de corrupción en tiempo continuo, mapeando ruido gaussiano a las representaciones latentes objetivo. En comparación con el modelo autorregresivo v1 que generaba tokens de audio discretos, este enfoque de espacio latente continuo permite transiciones más suaves y naturales, así como una mejor estructura a largo plazo. Para controlar la duración de salida, se antepone una etiqueta numérica de duración (hasta 30 s) a la instrucción durante el entrenamiento, lo que permite un tiempo de generación flexible sin alterar la arquitectura del modelo.

Variante del modelo y configuraciones recomendadas

MOSS-SoundEffect v2.0 está disponible como un único Diffusion Transformer de 1.3B parámetros. Las siguientes tablas detallan las características del modelo y las configuraciones sugeridas para una generación óptima.

ModeloArquitecturaVariante DiTParámetros
MOSS-SoundEffect-V2.0DiT + Flow Matching1.3B1.3B
ParámetroValor por defectoDescripción
num_inference_steps100Número de pasos del solucionador de flow-match.
cfg_scale4.0Peso de guía libre de clasificador.
sigma_shift5.0Desplazamiento del programador de flow-match aplicado por llamada.
seconds10.0Duración de salida.
Hasta 30.

Configuración rápida

Para empezar a usar MOSS-SoundEffect v2.0, crea un entorno aislado de Python 3.12 e instala las dependencias necesarias. Los siguientes comandos configuran un entorno conda, clonan el repositorio e instalan el paquete completo con soporte para PyTorch CUDA 12.8. También se proporciona una instalación mínima solo para inferencia.

conda create -n moss-soundeffect-v2 python=3.12 -y
conda activate moss-soundeffect-v2
git clone https://github.com/OpenMOSS/MOSS-TTS.git
cd MOSS-TTS/moss_soundeffect_v2

# Full install with fine-tuning support
pip install --extra-index-url https://download.pytorch.org/whl/cu128 -e ".[torch-cu128,finetune]"

# Alternatively, inference-only install (still includes Gradio demo)
pip install --extra-index-url https://download.pytorch.org/whl/cu128 -e ".[torch-cu128]"

Uso básico

El pipeline se puede cargar y usar con unas pocas líneas de Python. La primera llamada puede tardar varios minutos debido al calentamiento de torch.compile y Triton CUDA Graph. Para evitar problemas de compilación, establece TORCHDYNAMO_DISABLE=1 si es necesario.

import torch
from moss_soundeffect_v2 import MossSoundEffectPipeline

pipe = MossSoundEffectPipeline.from_pretrained(
    "OpenMOSS-Team/MOSS-SoundEffect-v2.0",
    torch_dtype=torch.bfloat16,
    device="cuda",
)

audio = pipe(
    prompt="A dog barking loudly in a park.",
    seconds=10,
    num_inference_steps=100,
    cfg_scale=4.0,
)  # (B, C, T) waveform tensor

pipe.save_audio(audio, "out.wav")

Notas importantes

Si encuentras errores de TorchDynamo o Triton durante la primera llamada de inferencia, deshabilita dynamo configurando TORCHDYNAMO_DISABLE=1 antes de iniciar Python. Una demo de Gradio está incluida en la instalación de solo inferencia. Para recetas de fine-tuning y más ejemplos, consulta el README de GitHub.

Artículos Relacionados