| import gradio as gr | |
| from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor | |
| import torch | |
| device = "cuda" if torch.cuda.is_available() else "cpu" | |
| model_id = "facebook/mms-tts-ava" | |
| processor = AutoProcessor.from_pretrained(model_id) | |
| model = AutoModelForSpeechSeq2Seq.from_pretrained(model_id).to(device) | |
| def tts_fn(text): | |
| inputs = processor(text=text, return_tensors="pt").to(device) | |
| with torch.no_grad(): | |
| waveform = model.generate(**inputs) | |
| audio = waveform.squeeze().cpu().numpy() | |
| return (16000, audio) | |
| gr.Interface(fn=tts_fn, | |
| inputs=gr.Textbox(label="Nhập văn bản bằng tiếng Avar"), | |
| outputs=gr.Audio(label="Âm thanh (16kHz)"), | |
| title="Avar TTS - facebook/mms-tts-ava", | |
| description="Dùng thử TTS tiếng Avar bằng mô hình MMS từ Meta (facebook/mms-tts-ava). Chỉ để thử nghiệm, không thương mại.").launch() |