minnan_test / app.py
happy0708's picture
Update app.py
d9e57de verified
Raw
History Blame Contribute Delete
826 Bytes
import tempfile
import gradio as gr
import soundfile as sf
from transformers import (
AutoTokenizer,
VitsModel
)
import torch
MODEL_NAME = "facebook/mms-tts-nan"
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
model = VitsModel.from_pretrained(MODEL_NAME)
def tts(text):
inputs = tokenizer(text, return_tensors="pt")
with torch.no_grad():
output = model(**inputs)
waveform = output.waveform.squeeze().cpu().numpy()
file = tempfile.NamedTemporaryFile(
suffix=".wav",
delete=False
)
sf.write(
file.name,
waveform,
model.config.sampling_rate
)
return file.name
demo = gr.Interface(
fn=tts,
inputs=gr.Textbox(label="輸入文字"),
outputs=gr.Audio(type="filepath"),
title="Taiwanese TTS"
)
demo.launch()