default_concurrency_limit
Browse files
app.py
CHANGED
@@ -6,11 +6,25 @@ from faster_whisper import WhisperModel
|
|
6 |
from languages import get_language_names, get_language_from_name
|
7 |
from subtitle_manager import Subtitle
|
8 |
from pathlib import Path
|
|
|
|
|
9 |
|
10 |
logging.basicConfig(level=logging.INFO)
|
11 |
last_model = None
|
12 |
model = None
|
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
def transcribe_webui_simple_progress(modelName, languageName, urlData, multipleFiles, microphoneData, task,
|
15 |
chunk_length, compute_type, beam_size, vad_filter, min_silence_duration_ms,
|
16 |
progress=gr.Progress()):
|
@@ -132,5 +146,5 @@ with gr.Blocks(title="Fast Whisper WebUI") as demo:
|
|
132 |
)
|
133 |
|
134 |
if __name__ == "__main__":
|
135 |
-
demo.launch(share=True)
|
136 |
|
|
|
6 |
from languages import get_language_names, get_language_from_name
|
7 |
from subtitle_manager import Subtitle
|
8 |
from pathlib import Path
|
9 |
+
import psutil
|
10 |
+
import torch
|
11 |
|
12 |
logging.basicConfig(level=logging.INFO)
|
13 |
last_model = None
|
14 |
model = None
|
15 |
|
16 |
+
|
17 |
+
def get_workers_count():
|
18 |
+
if torch.cuda.is_available():
|
19 |
+
memory = torch.cuda.get_device_properties(0).total_memory
|
20 |
+
else:
|
21 |
+
memory = psutil.virtual_memory().total
|
22 |
+
|
23 |
+
workers = int(memory / 2_000_000_000)
|
24 |
+
logging.info(f"workers:{workers}")
|
25 |
+
logging.info(f"memory:{memory/ 1_000_000_000} GB")
|
26 |
+
return workers
|
27 |
+
|
28 |
def transcribe_webui_simple_progress(modelName, languageName, urlData, multipleFiles, microphoneData, task,
|
29 |
chunk_length, compute_type, beam_size, vad_filter, min_silence_duration_ms,
|
30 |
progress=gr.Progress()):
|
|
|
146 |
)
|
147 |
|
148 |
if __name__ == "__main__":
|
149 |
+
demo.launch(share=True, default_concurrency_limit=get_workers_count())
|
150 |
|