Inglés README | Proyecto de sugerencias | Grupo de discusión de Discord
Una interfaz web local simple que utiliza ChatTTS para sintetizar texto en voz en una página web, admite chino, inglés y números mixtos y proporciona una interfaz API.
Proyecto ChatTTS original. A partir de la versión 0.96, la implementación del código fuente primero debe instalar ffmpeg. Los archivos de timbre anteriores csv y pt ya no están disponibles. Complete los valores de timbre y regenere.
[Patrocinador]
302.AI es un supermercado de IA que reúne a las principales marcas del mundo, con pago por uso, tarifas mensuales cero y umbral cero para el uso de varios tipos de IA.
Funciones completas, simples y fáciles de usar, umbral cero para pagos bajo demanda, separación de administradores y usuarios
Vista previa de la interfaz
Efecto mixto de carácter de control de símbolo alfanumérico
Descargue el paquete comprimido de Versiones, descomprímalo y haga doble clic en app.exe para usarlo
Algunos programas de seguridad pueden informar sobre virus; salga o utilice la implementación del código fuente.
Si la tarjeta gráfica NVIDIA tiene más memoria de video 4G y está instalado CUDA11.8+, se habilitará la aceleración de GPU.
Por primera vez, descargue el modelo de huggingface.co o github al directorio de activos. Si la red es inestable, la descarga puede fallar. Si falla, descárguelo por separado.
Después de descargar y descomprimir, verá la carpeta de activos, que contiene varios archivos pt. Copie todos los archivos pt al directorio de activos y luego reinicie el software.
Dirección de descarga de GitHub: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/all-models.7z
Dirección de descarga del disco de red de Baidu: https://pan.baidu.com/s/1yGDZM9YNN7kW9e7SFo8lLw?pwd=ct5x
Extraer repositorio de proyectos
Clona el proyecto en cualquier ruta, por ejemplo:
clon de git https://github.com/jianchang512/ChatTTS-ui.git chat-tts-ui
Iniciar corredor
Ingrese al directorio del proyecto:
cd chat-tts-ui
Inicie el contenedor y vea el registro de inicialización:
versión gpu docker compose -f docker-compose.gpu.yaml arriba -d versión de la CPU ventana acoplable componer -f docker-compose.cpu.yaml arriba -d ventana acoplable componer registros -f --no-log-prefix
Visita ChatTTS WebUI
启动:['0.0.0.0', '9966']
, es decir, acceda a IP:9966
, por ejemplo:
Esta máquina: http://127.0.0.1:9966
Servidor: http://192.168.1.100:9966
Obtenga el código más reciente de la rama principal:
git pago principal git pull origen principal
Vaya al siguiente paso y actualice a la imagen más reciente:
ventana acoplable componer versión de gpu docker compose -f docker-compose.gpu.yaml up -d --build versión de la CPU docker compose -f docker-compose.cpu.yaml up -d --build ventana acoplable componer registros -f --no-log-prefix
Configure el entorno python3.9-3.11 e instale ffmpeg. yum install ffmpeg
o apt-get install ffmpeg
etc.
Cree un directorio vacío /data/chattts
y ejecute el comando cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
Crear un entorno virtual python3 -m venv venv
Activar source ./venv/bin/activate
Instalar dependencias pip3 install -r requirements.txt
Si no se requiere aceleración CUDA, ejecute
pip3 install torch==2.2.0 torchaudio==2.2.0
Si se requiere aceleración CUDA, ejecute
pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118 pip install nvidia-cublas-cu11 nvidia-cudnn-cu11
También necesita instalar CUDA11.8+ ToolKit; busque el método de instalación usted mismo o consulte https://juejin.cn/post/7318704408727519270
Además de CUDA, las GPU AMD también se pueden utilizar para la aceleración, lo que requiere la instalación de las versiones ROCm y PyTorch_ROCm. La GPU AMG utiliza ROCm de fábrica en PyTorch sin modificaciones de código adicionales.
pip3 install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/rocm6.0
Una vez completada la instalación, puede usar el comando rocm-smi para ver la GPU AMD en el sistema. También puede utilizar el siguiente código de Torch (query_gpu.py) para consultar el dispositivo GPU AMD actual.
import torch print(torch.__version__) if torch.cuda.is_available(): device = torch.device("cuda") # a CUDA device object print('Using GPU:', torch.cuda.get_device_name(0)) else: device = torch.device("cpu") print('Using CPU') torch.cuda.get_device_properties(0)
Usando el código anterior, tomando AMD Radeon Pro W7900 como ejemplo, consulte el dispositivo de la siguiente manera.
$ python ~/query_gpu.py 2.4.0.dev20240401+rocm6.0 Using GPU: AMD Radeon PRO W7900
Consulte https://rocm.docs.amd.com/projects/install-on-linux/en/latest/tutorial/quick-start.html para instalar el controlador AMD GPU y ROCm.
Luego instale la versión PyTorch_ROCm a través de https://pytorch.org/.
Ejecute python3 app.py
para comenzar y la ventana del navegador se abrirá automáticamente con la dirección predeterminada http://127.0.0.1:9966
(Nota: el modelo se descarga desde Modelscope Magic Tower de forma predeterminada y no se puede utilizar la descarga de proxy. Por favor apague el proxy)
Configure el entorno python3.9-3.11, instale git y ejecute el comando brew install libsndfile git [email protected]
para continuar la ejecución.
brew install ffmpeg export PATH="/usr/local/opt/[email protected]/bin:$PATH" source ~/.bash_profile source ~/.zshrc
Cree un directorio vacío /data/chattts
y ejecute el comando cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
Crear un entorno virtual python3 -m venv venv
Activar source ./venv/bin/activate
Instalar dependencias pip3 install -r requirements.txt
Instalar la antorcha pip3 install torch==2.2.0 torchaudio==2.2.0
Ejecute python3 app.py
para comenzar y la ventana del navegador se abrirá automáticamente con la dirección predeterminada http://127.0.0.1:9966
(Nota: el modelo se descarga desde Modelscope Magic Tower de forma predeterminada y no se puede utilizar la descarga de proxy. Por favor apague el proxy)
Descargue python3.9-3.11, asegúrese de seleccionar Add Python to environment variables
durante la instalación.
Descargue ffmpeg.exe y colóquelo en la carpeta ffmpeg en el directorio del software
Descargue e instale git, https://github.com/git-for-windows/git/releases/download/v2.45.1.windows.1/Git-2.45.1-64-bit.exe
Cree una carpeta vacía D:/chattts
e ingrésela. Ingrese cmd
en la barra de direcciones y presione Enter. En la ventana emergente de cmd, ejecute el comando git clone https://github.com/jianchang512/chatTTS-ui .
Cree un entorno virtual y ejecute el comando python -m venv venv
Para activar el entorno virtual, ejecute .venvscriptsactivate
Para instalar dependencias, ejecute pip install -r requirements.txt
Si no se requiere aceleración CUDA,
Ejecutar pip install torch==2.2.0 torchaudio==2.2.0
Si se requiere aceleración CUDA, ejecute
pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
También necesita instalar CUDA11.8+ ToolKit; busque el método de instalación usted mismo o consulte https://juejin.cn/post/7318704408727519270
Ejecute python app.py
para comenzar y la ventana del navegador se abrirá automáticamente con la dirección predeterminada http://127.0.0.1:9966
(Nota: el modelo se descarga desde Modelscope Magic Tower de forma predeterminada y no se puede utilizar la descarga proxy. Por favor apague el proxy)
Si la memoria de la GPU es inferior a 4G, se forzará el uso de la CPU.
En Windows o Linux, si la memoria de video es mayor que 4G y es una tarjeta gráfica NVIDIA, pero la CPU aún se usa después de la implementación del código fuente, puede intentar desinstalar torch primero y luego reinstalarlo. Desinstalar pip uninstall -y torch torchaudio
y reinstale la versión cuda de torch. pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
. Se debe instalar CUDA11.8+
De forma predeterminada, detecta si modelscope se puede conectar. Si puede, descargue el modelo de modelscope; de lo contrario, descargue el modelo de huggingface.co.
Después de la versión 0.96, debido a la actualización del kernel ChatTTS, ya no es posible utilizar directamente el archivo pt descargado de este sitio (https://modelscope.cn/studios/ttwwaaa/ChatTTS_Speaker)
Por lo tanto, al agregar el script de conversión cover-pt.py, el paquete de integración de Win puede descargar directamente el archivo cover-pt.exe y colocarlo en el mismo directorio que app.exe y hacer doble clic para ejecutarlo.
Después de ejecutar python cover-pt.py
, el archivo que comienza con seed_
y termina con _emb.pt
en speaker
, es decir, el nombre de archivo predeterminado pt después de la descarga, se convertirá a un formato de codificación disponible. renombrado Terminando con _emb-covert.pt
.
ejemplo:
Si este archivo existe en speaker/seed_2155_restored_emb.pt
, se convertirá a speaker/seed_2155_restored_emb-cover.pt
y luego se eliminará el archivo pt original, dejando solo el archivo convertido.
La dirección predeterminada es http://127.0.0.1:9966
. Si desea modificarla, puede abrir el archivo .env
en el directorio y cambiar WEB_ADDRESS=127.0.0.1:9966
a la IP y el puerto apropiados, como WEB_ADDRESS=192.168.0.10:9966
para que se pueda acceder a él mediante la LAN
Método de solicitud: PUBLICAR
Dirección de solicitud: http://127.0.0.1:9966/tts
Parámetros de solicitud:
texto: str| Obligatorio, el texto que se sintetizará en voz
voz: Opcional, el valor predeterminado es 2222, el número que determina la voz, 2222 | 6653 | 5099, puedes elegir uno de ellos, o se usará cualquier voz de forma aleatoria.
mensaje: str| opcional, vacío predeterminado, establece risa y pausa, por ejemplo [oral_2][risa_0][pausa_6]
temperatura: flotador | opcional, predeterminado 0.3
top_p: flotante| opcional, predeterminado 0.7
top_k: int| opcional, predeterminado 20
skip_refine: int| Opcional, predeterminado 0, 1=omitir texto refinado, 0=no omitir
custom_voice: int| Opcional, predeterminado 0, valor inicial personalizado al obtener el valor del timbre, necesita un número entero mayor que 0, si está configurado, esto prevalecerá, voice
se ignorará
Devolución: datos json
Devolución exitosa: {código:0,msg:ok,audio_files:[dict1,dict2]}
其中 audio_files 是字典数组,每个元素dict为 {filename:wav文件绝对路径,url:可下载的wav网址}
Retorno en caso de fracaso:
{code:1,msg:错误原因}
# API调用代码 import requests res = requests.post('http://127.0.0.1:9966/tts', data={ "text": "若不懂无需填写", "prompt": "", "voice": "3333", "temperature": 0.3, "top_p": 0.7, "top_k": 20, "skip_refine": 0, "custom_voice": 0 }) print(res.json()) #ok {code:0, msg:'ok', audio_files:[{filename: E:/python/chattts/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav, url: http://127.0.0.1:9966/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav}]} #error {code:1, msg:"error"}
Actualice pyVideoTrans a 1.82+ https://github.com/jianchang512/pyvideotrans
Haga clic en Menú-Configuración-ChatTTS y complete la dirección de solicitud. De forma predeterminada, se debe completar http://127.0.0.1:9966.
Después de que la prueba no tenga problemas, seleccione ChatTTS
en la interfaz principal