Jhjoon05 commited on
Commit
f9abd83
β€’
1 Parent(s): d289953

added attributes to whisper inference and changed variable names

Browse files
Files changed (2) hide show
  1. app.py +11 -12
  2. modules/model_Inference.py +3 -1
app.py CHANGED
@@ -1,6 +1,5 @@
1
  import gradio as gr
2
- from modules.model_Inference import ModelInference
3
- import whisper
4
  import os
5
  from ui.htmls import CSS,MARKDOWN
6
  from modules.youtube_manager import get_ytmetas
@@ -12,7 +11,7 @@ def open_output_folder():
12
  else:
13
  print(f"The folder {folder_path} does not exist.")
14
 
15
- inf = ModelInference()
16
  block = gr.Blocks(css=CSS).queue(api_open=False)
17
 
18
  with block:
@@ -24,8 +23,8 @@ with block:
24
  with gr.Row():
25
  input_file = gr.File(type="file", label="Upload File here")
26
  with gr.Row():
27
- dd_model = gr.Dropdown(choices=whisper.available_models(),value="large-v2",label="Model")
28
- dd_lang = gr.Dropdown(choices=["Automatic Detection"]+sorted(list(whisper.tokenizer.LANGUAGES.values())),value="Automatic Detection",label="Language")
29
  dd_subformat = gr.Dropdown(["SRT","WebVTT"],value="SRT",label="Subtitle Format")
30
  with gr.Row():
31
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
@@ -35,7 +34,7 @@ with block:
35
  tb_indicator = gr.Textbox(label="Output")
36
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
37
 
38
- btn_run.click(fn=inf.transcribe_file,inputs=[input_file,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
39
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
40
 
41
  with gr.TabItem("Youtube"): # tab2
@@ -48,8 +47,8 @@ with block:
48
  tb_title = gr.Label(label="Youtube Title")
49
  tb_description = gr.Textbox(label="Youtube Description",max_lines=15)
50
  with gr.Row():
51
- dd_model = gr.Dropdown(choices=whisper.available_models(),value="large-v2",label="Model")
52
- dd_lang = gr.Dropdown(choices=["Automatic Detection"]+sorted(list(whisper.tokenizer.LANGUAGES.values())),value="Automatic Detection",label="Language")
53
  dd_subformat = gr.Dropdown(choices=["SRT","WebVTT"],value="SRT",label="Subtitle Format")
54
  with gr.Row():
55
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
@@ -59,7 +58,7 @@ with block:
59
  tb_indicator = gr.Textbox(label="Output")
60
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
61
 
62
- btn_run.click(fn=inf.transcribe_youtube,inputs=[tb_youtubelink,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
63
  tb_youtubelink.change(get_ytmetas,inputs=[tb_youtubelink],outputs=[img_thumbnail,tb_title,tb_description])
64
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
65
 
@@ -67,8 +66,8 @@ with block:
67
  with gr.Row():
68
  mic_input = gr.Microphone(label="Record with Mic",type="filepath",interactive=True)
69
  with gr.Row():
70
- dd_model = gr.Dropdown(choices=whisper.available_models(),value="large-v2",label="Model")
71
- dd_lang = gr.Dropdown(choices=["Automatic Detection"]+sorted(list(whisper.tokenizer.LANGUAGES.values())),value="Automatic Detection",label="Language")
72
  dd_subformat = gr.Dropdown(["SRT","WebVTT"],value="SRT",label="Subtitle Format")
73
  with gr.Row():
74
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
@@ -78,7 +77,7 @@ with block:
78
  tb_indicator = gr.Textbox(label="Output")
79
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
80
 
81
- btn_run.click(fn=inf.transcribe_mic,inputs=[mic_input,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
82
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
83
 
84
  block.launch()
 
1
  import gradio as gr
2
+ from modules.model_Inference import WhisperInference
 
3
  import os
4
  from ui.htmls import CSS,MARKDOWN
5
  from modules.youtube_manager import get_ytmetas
 
11
  else:
12
  print(f"The folder {folder_path} does not exist.")
13
 
14
+ whisper_inf = WhisperInference()
15
  block = gr.Blocks(css=CSS).queue(api_open=False)
16
 
17
  with block:
 
23
  with gr.Row():
24
  input_file = gr.File(type="file", label="Upload File here")
25
  with gr.Row():
26
+ dd_model = gr.Dropdown(choices=whisper_inf.available_models,value="large-v2",label="Model")
27
+ dd_lang = gr.Dropdown(choices=["Automatic Detection"]+whisper_inf.available_langs,value="Automatic Detection",label="Language")
28
  dd_subformat = gr.Dropdown(["SRT","WebVTT"],value="SRT",label="Subtitle Format")
29
  with gr.Row():
30
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
 
34
  tb_indicator = gr.Textbox(label="Output")
35
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
36
 
37
+ btn_run.click(fn=whisper_inf.transcribe_file,inputs=[input_file,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
38
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
39
 
40
  with gr.TabItem("Youtube"): # tab2
 
47
  tb_title = gr.Label(label="Youtube Title")
48
  tb_description = gr.Textbox(label="Youtube Description",max_lines=15)
49
  with gr.Row():
50
+ dd_model = gr.Dropdown(choices=whisper_inf.available_models,value="large-v2",label="Model")
51
+ dd_lang = gr.Dropdown(choices=["Automatic Detection"]+whisper_inf.available_langs,value="Automatic Detection",label="Language")
52
  dd_subformat = gr.Dropdown(choices=["SRT","WebVTT"],value="SRT",label="Subtitle Format")
53
  with gr.Row():
54
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
 
58
  tb_indicator = gr.Textbox(label="Output")
59
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
60
 
61
+ btn_run.click(fn=whisper_inf.transcribe_youtube,inputs=[tb_youtubelink,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
62
  tb_youtubelink.change(get_ytmetas,inputs=[tb_youtubelink],outputs=[img_thumbnail,tb_title,tb_description])
63
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
64
 
 
66
  with gr.Row():
67
  mic_input = gr.Microphone(label="Record with Mic",type="filepath",interactive=True)
68
  with gr.Row():
69
+ dd_model = gr.Dropdown(choices=whisper_inf.available_models,value="large-v2",label="Model")
70
+ dd_lang = gr.Dropdown(choices=["Automatic Detection"]+whisper_inf.available_langs,value="Automatic Detection",label="Language")
71
  dd_subformat = gr.Dropdown(["SRT","WebVTT"],value="SRT",label="Subtitle Format")
72
  with gr.Row():
73
  cb_translate = gr.Checkbox(value=False,label="Translate to English?",interactive=True)
 
77
  tb_indicator = gr.Textbox(label="Output")
78
  btn_openfolder = gr.Button('πŸ“‚').style(full_width=False)
79
 
80
+ btn_run.click(fn=whisper_inf.transcribe_mic,inputs=[mic_input,dd_model,dd_lang,dd_subformat,cb_translate],outputs=[tb_indicator])
81
  btn_openfolder.click(fn=open_output_folder,inputs=[],outputs=[])
82
 
83
  block.launch()
modules/model_Inference.py CHANGED
@@ -5,11 +5,13 @@ import gradio as gr
5
  import os
6
  from datetime import datetime
7
 
8
- class ModelInference():
9
  def __init__(self):
10
  print("\nInitializing Model..\n")
11
  self.current_model_size = "large-v2"
12
  self.model = whisper.load_model(self.current_model_size)
 
 
13
 
14
  def transcribe_file(self,fileobj
15
  ,model_size,lang,subformat,istranslate,
 
5
  import os
6
  from datetime import datetime
7
 
8
+ class WhisperInference():
9
  def __init__(self):
10
  print("\nInitializing Model..\n")
11
  self.current_model_size = "large-v2"
12
  self.model = whisper.load_model(self.current_model_size)
13
+ self.available_models = whisper.available_models()
14
+ self.available_langs = sorted(list(whisper.tokenizer.LANGUAGES.values()))
15
 
16
  def transcribe_file(self,fileobj
17
  ,model_size,lang,subformat,istranslate,