Home
Login
2noise/ChatTTS

Modelo de voz generativo diseñado específicamente para escenarios de diálogo, compatible con entrada mixta en chino e inglés y capacidad para múltiples hablantes.

AGPL-3.0Python 36.8k2noise Last Updated: 2025-05-23
https://github.com/2noise/ChatTTS

ChatTTS - Modelo de Texto a Voz Profesional para Escenarios de Diálogo

Resumen del Proyecto

ChatTTS es un modelo generativo de texto a voz (TTS) diseñado específicamente para escenarios de diálogo, desarrollado por el equipo 2noise. El proyecto ha obtenido más de 35,000 estrellas en GitHub, convirtiéndose en uno de los proyectos de TTS de código abierto más populares en la actualidad.

Dirección del Proyecto: https://github.com/2noise/ChatTTS Equipo de Desarrollo: 2noise Licencia de Código Abierto: AGPLv3+ (código) / CC BY-NC 4.0 (modelo) Principales Idiomas Soportados: Chino, Inglés

El objetivo principal de ChatTTS es proporcionar una experiencia de interacción de voz natural y fluida para aplicaciones de diálogo como asistentes LLM. En comparación con los modelos TTS tradicionales, ofrece un rendimiento superior en escenarios de diálogo.

Funciones y Características Principales

🎯 Diseño Optimizado para Diálogo

  • Optimizado para Escenarios de Diálogo: Optimizado específicamente para aplicaciones de diálogo como chatbots y asistentes LLM.
  • Experiencia de Diálogo Natural: Genera voz más natural y fluida, adecuada para escenarios de diálogo persona-máquina.
  • Diálogo Interactivo: Admite la coherencia de la voz en conversaciones de múltiples turnos.

🎭 Soporte para Múltiples Oradores

  • Capacidad para Múltiples Oradores: Admite el cambio entre diferentes oradores, permitiendo diálogos con múltiples personajes.
  • Muestreo de Oradores: Puede muestrear aleatoriamente las características del orador de una distribución gaussiana.
  • Control de Tono: Admite la personalización y la fijación de tonos específicos, manteniendo la coherencia del personaje.

🎵 Control de Prosodia Detallado

  • Control de la Risa: Admite la adición de diferentes niveles de efectos de risa [laugh][laugh_0-2].
  • Control de Pausas: Control preciso de las pausas e intervalos en la voz [uv_break][lbreak][break_0-7].
  • Control de Entonación: Admite el ajuste del nivel de coloquialismo [oral_0-9].
  • Expresión Emocional: Capaz de predecir y controlar características de prosodia de grano fino, incluyendo cambios de entonación.

🌐 Soporte Multilingüe

  • Mezcla de Chino e Inglés: Admite de forma nativa la entrada mixta de chino e inglés, sin necesidad de etiquetas de idioma.
  • Adaptación de Idioma: Reconoce y procesa automáticamente el contenido de texto en diferentes idiomas.
  • Expansión Futura: Planea admitir más idiomas.

⚡ Ventajas Técnicas

  • Arquitectura Avanzada: Basada en una arquitectura de modelo autorregresivo, inspirada en tecnologías avanzadas como Bark y Valle.
  • Ventaja de Prosodia: Supera a la mayoría de los modelos TTS de código abierto en términos de rendimiento de prosodia.
  • Pre-entrenamiento de Alta Calidad: El modelo principal se entrena con más de 100,000 horas de datos de audio en chino e inglés.
  • Amigable con el Código Abierto: Proporciona un modelo base pre-entrenado de 40,000 horas para uso en investigación.

Especificaciones y Rendimiento del Modelo

Datos de Entrenamiento

  • Modelo Principal: Entrenado con más de 100,000 horas de datos de audio en chino e inglés.
  • Versión de Código Abierto: Modelo pre-entrenado de 40,000 horas (sin SFT).
  • Fuente de Datos: Fuentes de datos de audio disponibles públicamente.

Indicadores de Rendimiento

  • Requisitos de GPU: Se necesitan al menos 4 GB de memoria de GPU para generar 30 segundos de audio.
  • Velocidad de Generación: Una GPU 4090 genera aproximadamente 7 tokens semánticos por segundo.
  • Factor de Tiempo Real (RTF): Aproximadamente 0.3
  • Calidad de Audio: Salida con una frecuencia de muestreo de 24 kHz.

Requisitos de Hardware

  • Configuración Mínima: 4 GB+ de memoria de GPU.
  • Configuración Recomendada: Tarjetas gráficas de gama alta como RTX 3090/4090.
  • CPU: Admite la aceleración de procesadores multinúcleo.
  • Memoria: Se recomienda 16 GB+ de memoria del sistema.

Instalación y Uso

Instalación Rápida

# Clonar el proyecto
git clone https://github.com/2noise/ChatTTS
cd ChatTTS

# Instalar dependencias
pip install --upgrade -r requirements.txt

# O usar un entorno conda
conda create -n chattts python=3.11
conda activate chattts
pip install -r requirements.txt

Ejemplo de Uso Básico

import ChatTTS
import torch
import torchaudio

# Inicializar el modelo
chat = ChatTTS.Chat()
chat.load(compile=False)  # Establecer en True para obtener un mejor rendimiento

# Texto a voz
texts = ["你好,我是ChatTTS", "Hello, I am ChatTTS"]
wavs = chat.infer(texts)

# Guardar archivos de audio
for i, wav in enumerate(wavs):
    torchaudio.save(f"output_{i}.wav", torch.from_numpy(wav).unsqueeze(0), 24000)

Funciones de Control Avanzado

# Muestreo aleatorio de orador
rand_spk = chat.sample_random_speaker()

# Establecer parámetros de inferencia
params_infer_code = ChatTTS.Chat.InferCodeParams(
    spk_emb=rand_spk,      # Incrustación del orador
    temperature=0.3,        # Parámetro de temperatura
    top_P=0.7,             # Muestreo top-P
    top_K=20,              # Muestreo top-K
)

# Establecer parámetros de refinamiento de texto
params_refine_text = ChatTTS.Chat.RefineTextParams(
    prompt='[oral_2][laugh_0][break_6]',  # Agregar control de prosodia
)

# Generar voz
wavs = chat.infer(
    texts,
    params_refine_text=params_refine_text,
    params_infer_code=params_infer_code,
)

Escenarios de Aplicación

🤖 Asistentes de IA y Chatbots

  • Salida de voz para sistemas de diálogo LLM.
  • Sistemas de atención al cliente inteligentes.
  • Aplicaciones de asistentes virtuales.

📚 Educación y Formación

  • Plataformas de educación en línea.
  • Aplicaciones de aprendizaje de idiomas.
  • Producción de audiolibros.

🎬 Creación de Contenido

  • Producción de podcasts.
  • Doblaje de videos.
  • Generación de contenido de audio.

🏢 Aplicaciones Empresariales

  • Transmisión de resúmenes de reuniones.
  • Vocalización de avisos y anuncios.
  • Funciones de asistencia de accesibilidad.

Arquitectura Técnica

Componentes Principales

  • Codificador de Texto: Procesa la comprensión semántica del texto de entrada.
  • Predictor de Prosodia: Predice y controla las características de prosodia de la voz.
  • Vocoder: Convierte las características en formas de onda de audio de alta calidad.
  • Codificador de Orador: Procesa la incrustación de características de múltiples oradores.

Características del Modelo

  • Arquitectura Autorregresiva: Modelo de generación autorregresivo basado en Transformer.
  • Entrenamiento de Extremo a Extremo: Marco de entrenamiento unificado de extremo a extremo.
  • Fusión Multimodal: Fusión efectiva de información de texto, prosodia y orador.

Precauciones y Limitaciones

Restricciones de Uso

  • Uso Académico: Los modelos publicados están limitados al uso en investigación académica.
  • Restricciones Comerciales: No debe utilizarse para fines comerciales o ilegales.
  • Consideraciones Éticas: Se ha añadido ruido de alta frecuencia para evitar el uso malicioso.

Limitaciones Técnicas

  • Longitud del Audio: La calidad puede disminuir en audios más largos.
  • Requisitos de Cálculo: Requiere altos recursos de cálculo de GPU.
  • Soporte de Idiomas: Actualmente, admite principalmente chino e inglés.

Preguntas Frecuentes

  • Velocidad de Generación: Se puede mejorar optimizando la configuración del hardware y ajustando los parámetros.
  • Calidad de Audio: El formato de compresión MP3 puede afectar la calidad final.
  • Estabilidad: El modelo autorregresivo puede mostrar una salida inestable.

Resumen

ChatTTS, como modelo TTS diseñado específicamente para escenarios de diálogo, destaca en los siguientes aspectos:

🎯 Profesionalidad: Optimizado específicamente para escenarios de diálogo, con un rendimiento excelente en aplicaciones como chatbots y asistentes de IA.

🚀 Avance Tecnológico: Adopta las últimas tecnologías de aprendizaje profundo, liderando en control de prosodia y soporte para múltiples oradores.

🌟 Valor de Código Abierto: Proporciona una solución completa de código abierto, reduciendo la barrera de entrada para el uso de tecnología TTS de alta calidad.

🤝 Comunidad Activa: Cuenta con una comunidad de desarrolladores activa y abundantes recursos del ecosistema.

⚡ Practicidad: Proporciona funciones completas desde el uso básico hasta el control avanzado, satisfaciendo las necesidades de diferentes niveles.

La aparición de ChatTTS llena el vacío de los modelos TTS dedicados a escenarios de diálogo, proporcionando un fuerte soporte técnico para construir una experiencia de interacción de voz persona-máquina más natural. Con el continuo desarrollo de la tecnología y la continua contribución de la comunidad, creemos que ChatTTS desempeñará un papel cada vez más importante en el campo de la síntesis de voz.