text-to-speech / app.py
DJONG-WANG's picture
Update app.py
60d096c verified
raw
history blame contribute delete
No virus
936 Bytes
import gradio as gr
from transformers import VitsModel, AutoTokenizer
import torch
import scipy.io.wavfile
# Charger le modèle Vits
model = VitsModel.from_pretrained("joefox/tts_vits_ru_hf")
tokenizer = AutoTokenizer.from_pretrained("joefox/tts_vits_ru_hf")
def generate_audio(text):
# Prétraiter le texte
text = text.lower()
inputs = tokenizer(text, return_tensors="pt")
inputs['speaker_id'] = 3
# Générer l'audio
with torch.no_grad():
output = model(**inputs).waveform
# Enregistrer l'audio dans un fichier
scipy.io.wavfile.write("output.wav", rate=model.config.sampling_rate, data=output[0].cpu().numpy())
return "output.wav"
# Créer une interface Gradio
iface = gr.Interface(fn=generate_audio, inputs="text", outputs="audio", title="Text to Speech (Vits russe)", description="Saisissez votre texte russe pour convertir en discours audio russe.")
iface.launch()