Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1,15 +1,27 @@
|
|
1 |
import gradio as gr
|
2 |
-
from transformers import
|
|
|
|
|
3 |
|
4 |
-
# Charger le modèle
|
5 |
-
|
|
|
6 |
|
7 |
-
def
|
8 |
-
#
|
9 |
-
|
10 |
-
|
11 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
13 |
-
# Créer une interface Gradio
|
14 |
-
iface = gr.Interface(fn=
|
15 |
iface.launch()
|
|
|
1 |
import gradio as gr
|
2 |
+
from transformers import VitsModel, AutoTokenizer
|
3 |
+
import torch
|
4 |
+
import scipy.io.wavfile
|
5 |
|
6 |
+
# Charger le modèle Vits
|
7 |
+
model = VitsModel.from_pretrained("joefox/tts_vits_ru_hf")
|
8 |
+
tokenizer = AutoTokenizer.from_pretrained("joefox/tts_vits_ru_hf")
|
9 |
|
10 |
+
def generate_audio(text):
|
11 |
+
# Prétraiter le texte
|
12 |
+
text = text.lower()
|
13 |
+
inputs = tokenizer(text, return_tensors="pt")
|
14 |
+
inputs['speaker_id'] = 3
|
15 |
+
|
16 |
+
# Générer l'audio
|
17 |
+
with torch.no_grad():
|
18 |
+
output = model(**inputs).waveform
|
19 |
+
|
20 |
+
# Enregistrer l'audio dans un fichier
|
21 |
+
scipy.io.wavfile.write("output.wav", rate=model.config.sampling_rate, data=output[0].cpu().numpy())
|
22 |
+
|
23 |
+
return "output.wav"
|
24 |
|
25 |
+
# Créer une interface Gradio
|
26 |
+
iface = gr.Interface(fn=generate_audio, inputs="text", outputs="audio", title="Text to Speech (Vits)", description="Saisissez votre texte pour convertir en discours audio.")
|
27 |
iface.launch()
|