m6011's picture
Update app.py
c3cb969 verified
raw
history blame
1.26 kB
# app.py
import gradio as gr
import torch
from espnet2.bin.tts_inference import Text2Speech
from espnet_model_zoo.downloader import ModelDownloader
from transformers import AutoTokenizer
# تحميل قائمة التوكينات
with open('tokens.txt', 'r', encoding='utf-8') as f:
token_list = [line.strip() for line in f]
# تحميل النموذج المدرب
model_path = 'exp/tts_fastspeech2/train.total_count.ave_10best.pth' # تأكد من مسار النموذج الصحيح
config_path = 'exp/tts_fastspeech2/config.yaml'
# إعداد Text2Speech
device = 'cuda' if torch.cuda.is_available() else 'cpu'
text2speech = Text2Speech.from_pretrained(
model_file=model_path,
config_file=config_path,
device=device,
threshold=0.5,
maxlenratio=10.0,
minlenratio=0.0,
use_att_constraint=False,
backward_window=1,
forward_window=3,
)
# دالة لتحويل النص إلى كلام
def tts_najdi(text):
with torch.no_grad():
wav = text2speech(text)["wav"]
return wav.view(-1).cpu().numpy(), 22050 # تأكد من استخدام معدل العينة الصحيح
# واجهة Gradio
iface = gr.Interface(fn=tts_najdi, inputs="text", outputs="audio", title="Najdi TTS Model")
iface.launch()