Tortoise TTS es una herramienta de síntesis de voz de código abierto desarrollada por neonbjb. Utiliza modelos de lenguaje de última generación para convertir texto en voz de forma rápida y sencilla. Con Tortoise TTS, puedes generar voces humanas realistas en varios idiomas y estilos.
-
Accede a Google Cloud Console: Ve a Google Cloud Console.
-
Crea una nueva instancia de VM:
- En el menú de la izquierda, selecciona Compute Engine y luego VM instances.
- Haz clic en Create instance.
-
Configura los detalles de tu instancia:
- Nombre:
tortoise-tts-vm
- Región y zona: Selecciona la que prefieras.
- Tipo de máquina: Escoge una con suficiente CPU y memoria. Una
n1-standard-4
debería ser suficiente. - Sistema operativo: Elige una imagen basada en Ubuntu (por ejemplo, Ubuntu 20.04 LTS).
- Nombre:
-
Permitir tráfico HTTP/HTTPS:
- En la sección de Firewall, marca las casillas para permitir tráfico HTTP y HTTPS.
-
Haz clic en Create.
- Conéctate mediante SSH:
- Una vez creada la instancia, haz clic en SSH para conectarte a la VM desde el navegador.
- Actualizar el sistema
sudo apt update
sudo apt upgrade -y
- Instalar dependencias esenciales
sudo apt install -y git python3 python3-venv python3-pip ffmpeg
- Clonar el repositorio y acceder a él
git clone https://github.com/neonbjb/tortoise-tts.git
cd tortoise-tts
- Crear y activar un entorno virtual
python3 -m venv venv
source venv/bin/activate
- Instalar las dependencias requeridas
pip install -r requirements.txt
- Desinstalar tokenizers si está instalado
pip uninstall tokenizers
- Instalar la versión específica de transformers
pip install transformers==4.31.0
- Instalar la versión requerida de tokenizers
pip install tokenizers==0.13.3
- Establecer la variable PYTHONPATH
export PYTHONPATH=$(pwd)
- Ejecutar el script de Tortoise TTS
python tortoise/do_tts.py --text "Hola, esto es una prueba de Tortoise TTS." --voice "random" --preset "fast"
-
Instalar
flask
para crear una API simple:pip install flask
-
Ir a la carpeta
cd tortoise-tts
-
Crear Carpeta para la API
mkdir api_tortoise cd api_tortoise
-
Crear Carpeta para la API
nano app.py
-
Añade el siguiente código:
from flask import Flask, request, send_file import subprocess app = Flask(__name__) @app.route('/synthesize', methods=['POST']) def synthesize(): text = request.form['text'] output_file = 'output.wav' subprocess.run(['python3', 'tortoise/do_tts.py', '--text', text, '--voice', 'random', '--preset', 'fast', '--output_path', output_file]) return send_file(output_file, as_attachment=True) if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)
-
Guardar y salir del archivo
Para guardar y salir del editor de texto Nano, puedes seguir estos pasos:
- Presiona
Ctrl + O
para guardar el archivo. - Aparecerá una línea en la parte inferior de la pantalla donde puedes confirmar el nombre del archivo. Simplemente presiona
Enter
para confirmar el nombre actual del archivo (app.py
). - Luego, presiona
Ctrl + X
para salir de Nano.
- Presiona
-
Ejecutar el servidor Flask:
cd ~/tortoise-tts/api_tortoise python3 app.py
-
Activar entorno virtual:
source ~/tortoise-tts/venv/bin/activate
-
Activar API flask
python3 ~/tortoise-tts/api_tortoise/app.py
- Enviar texto mediante
curl
desde tu ordenador:curl -X POST -F "text=Hola, esto es una prueba de Tortoise TTS." http://34.125.77.15:5000/synthesize --output output.wav