archivartaunik commited on
Commit
2ad7bbc
·
verified ·
1 Parent(s): 032e6a1

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +42 -0
app.py ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import torch
3
+ from TTS.tts.configs.xtts_config import XttsConfig
4
+ from TTS.tts.models.xtts import Xtts
5
+ from huggingface_hub import hf_hub_download
6
+
7
+ # Вызначэнне прылады (выкарыстоўваецца GPU, калі даступна)
8
+ device = "cuda:0" if torch.cuda.is_available() else "cpu"
9
+
10
+ # Шлях да мадэлі ў Hugging Face
11
+ repo_id = "archivartaunik/GPT_XTTS_V2_40EP" # Імя рэпазіторыя Hugging Face
12
+ checkpoint_file = hf_hub_download(repo_id, filename="model.pth") # Загружаем файл праверачнай кропкі
13
+ config_file = hf_hub_download(repo_id, filename="config.json") # Загружаем канфігурацыю
14
+ vocab_file = hf_hub_download(repo_id, filename="vocab.json") # Загружаем слоўнік
15
+
16
+ # Загрузка канфігурацыі мадэлі
17
+ config = XttsConfig()
18
+ config.load_json(config_file)
19
+
20
+ # Ініцыялізацыя і загрузка мадэлі
21
+ XTTS_MODEL = Xtts.init_from_config(config)
22
+ XTTS_MODEL.load_checkpoint(config, checkpoint_path=checkpoint_file, vocab_path=vocab_file, use_deepspeed=False)
23
+ XTTS_MODEL.to(device)
24
+
25
+ # Функцыя для пераўтварэння тэксту ў гукавы фармат
26
+ def text_to_speech(input_text):
27
+ # Генерацыя аўдыя на аснове ўваходнага тэксту
28
+ output = XTTS_MODEL.generate(input_text)
29
+ return output.cpu().numpy()
30
+
31
+ # Налада інтэрфейсу Gradio
32
+ demo = gr.Interface(
33
+ fn=text_to_speech, # Функцыя пераўтварэння
34
+ inputs="text", # Уваходныя дадзеныя (тэкст)
35
+ outputs="audio", # Выхадныя дадзеныя (аўдыя)
36
+ title="XTTS Belarusian Demo", # Назва праекта
37
+ description="Увядзіце тэкст, і мадэль пераўтворыць яго ў аўдыя.", # Апісанне
38
+ )
39
+
40
+ # Запуск прыкладання
41
+ if __name__ == "__main__":
42
+ demo.launch()