Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -6,16 +6,18 @@ from huggingface_hub import hf_hub_download
|
|
6 |
import os
|
7 |
|
8 |
VARIANTS = ["model_1000000"]
|
9 |
-
models = {}
|
10 |
-
for variant in VARIANTS:
|
11 |
-
models[variant] = F5TTS(
|
12 |
-
ckpt_file=hf_hub_download("mrfakename/openf5-v2", f"{variant}.pt", token=os.getenv("HF_TOKEN")),
|
13 |
-
vocab_file=hf_hub_download("mrfakename/openf5-v2", "vocab.txt", token=os.getenv("HF_TOKEN"))
|
14 |
-
)
|
15 |
|
16 |
@spaces.GPU
|
17 |
-
def generate(text, ref_audio, variant, progress
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
api = models[variant]
|
|
|
19 |
with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as f:
|
20 |
api.infer(
|
21 |
ref_file=ref_audio,
|
|
|
6 |
import os
|
7 |
|
8 |
VARIANTS = ["model_1000000"]
|
9 |
+
models = {} # Global inside GPU process
|
|
|
|
|
|
|
|
|
|
|
10 |
|
11 |
@spaces.GPU
|
12 |
+
def generate(text, ref_audio, variant, progress=gr.Progress()):
|
13 |
+
if variant not in models:
|
14 |
+
print(f"⏬ Loading model for variant: {variant}")
|
15 |
+
ckpt_file = hf_hub_download("mrfakename/openf5-v2", f"{variant}.pt", token=os.getenv("HF_TOKEN"))
|
16 |
+
vocab_file = hf_hub_download("mrfakename/openf5-v2", "vocab.txt", token=os.getenv("HF_TOKEN"))
|
17 |
+
models[variant] = F5TTS(ckpt_file=ckpt_file, vocab_file=vocab_file)
|
18 |
+
|
19 |
api = models[variant]
|
20 |
+
|
21 |
with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as f:
|
22 |
api.infer(
|
23 |
ref_file=ref_audio,
|