Spaces:
Running
on
L4
Running
on
L4
Upload app.py with huggingface_hub
Browse files
app.py
CHANGED
@@ -7,6 +7,7 @@ import os
|
|
7 |
import tempfile
|
8 |
import time
|
9 |
import threading
|
|
|
10 |
import numpy as np
|
11 |
import gradio as gr
|
12 |
import librosa
|
@@ -15,41 +16,41 @@ import torch
|
|
15 |
from pathlib import Path
|
16 |
from typing import Iterator, Dict, Any
|
17 |
|
18 |
-
#
|
19 |
-
|
20 |
-
|
21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
|
23 |
try:
|
24 |
from vibevoice.modular.configuration_vibevoice import VibeVoiceConfig
|
25 |
from vibevoice.modular.modeling_vibevoice_inference import VibeVoiceForConditionalGenerationInference
|
26 |
from vibevoice.processor.vibevoice_processor import VibeVoiceProcessor
|
27 |
from vibevoice.modular.streamer import AudioStreamer
|
28 |
-
except ImportError:
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
if vibevoice_path.exists():
|
41 |
-
sys.path.insert(0, str(vibevoice_path))
|
42 |
-
from vibevoice.modular.configuration_vibevoice import VibeVoiceConfig
|
43 |
-
from vibevoice.modular.modeling_vibevoice_inference import VibeVoiceForConditionalGenerationInference
|
44 |
-
from vibevoice.processor.vibevoice_processor import VibeVoiceProcessor
|
45 |
-
from vibevoice.modular.streamer import AudioStreamer
|
46 |
-
else:
|
47 |
-
raise ImportError(
|
48 |
-
"VibeVoice module not found. Please install it:\n"
|
49 |
-
"git clone https://github.com/microsoft/VibeVoice.git\n"
|
50 |
-
"cd VibeVoice/\n"
|
51 |
-
"pip install -e ."
|
52 |
-
)
|
53 |
from transformers.utils import logging
|
54 |
from transformers import set_seed
|
55 |
|
|
|
7 |
import tempfile
|
8 |
import time
|
9 |
import threading
|
10 |
+
import subprocess
|
11 |
import numpy as np
|
12 |
import gradio as gr
|
13 |
import librosa
|
|
|
16 |
from pathlib import Path
|
17 |
from typing import Iterator, Dict, Any
|
18 |
|
19 |
+
# Clone and setup VibeVoice if not already present
|
20 |
+
import subprocess
|
21 |
+
|
22 |
+
vibevoice_dir = Path('./VibeVoice')
|
23 |
+
if not vibevoice_dir.exists():
|
24 |
+
print("Cloning VibeVoice repository...")
|
25 |
+
subprocess.run(['git', 'clone', 'https://github.com/microsoft/VibeVoice.git'], check=True)
|
26 |
+
print("Installing VibeVoice...")
|
27 |
+
subprocess.run(['pip', 'install', '-e', './VibeVoice'], check=True)
|
28 |
+
|
29 |
+
# Add the VibeVoice directory to path
|
30 |
+
import sys
|
31 |
+
sys.path.insert(0, str(vibevoice_dir))
|
32 |
+
|
33 |
+
# Change to VibeVoice directory for imports
|
34 |
+
original_cwd = os.getcwd()
|
35 |
+
os.chdir(vibevoice_dir)
|
36 |
|
37 |
try:
|
38 |
from vibevoice.modular.configuration_vibevoice import VibeVoiceConfig
|
39 |
from vibevoice.modular.modeling_vibevoice_inference import VibeVoiceForConditionalGenerationInference
|
40 |
from vibevoice.processor.vibevoice_processor import VibeVoiceProcessor
|
41 |
from vibevoice.modular.streamer import AudioStreamer
|
42 |
+
except ImportError as e:
|
43 |
+
os.chdir(original_cwd)
|
44 |
+
raise ImportError(
|
45 |
+
f"VibeVoice module not found. Error: {e}\n"
|
46 |
+
"Please ensure VibeVoice is properly installed:\n"
|
47 |
+
"git clone https://github.com/microsoft/VibeVoice.git\n"
|
48 |
+
"cd VibeVoice/\n"
|
49 |
+
"pip install -e .\n"
|
50 |
+
)
|
51 |
+
finally:
|
52 |
+
# Restore original directory after imports
|
53 |
+
os.chdir(original_cwd)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
from transformers.utils import logging
|
55 |
from transformers import set_seed
|
56 |
|