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.
| Modelo | Arquitectura | Variante DiT | Parámetros |
|---|---|---|---|
| MOSS-SoundEffect-V2.0 | DiT + Flow Matching | 1.3B | 1.3B |
| Parámetro | Valor por defecto | Descripción |
|---|---|---|
num_inference_steps | 100 | Número de pasos del solucionador de flow-match. |
cfg_scale | 4.0 | Peso de guía libre de clasificador. |
sigma_shift | 5.0 | Desplazamiento del programador de flow-match aplicado por llamada. |
seconds | 10.0 | Duració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.





