Neal Caren commited on
Commit
9908ddd
1 Parent(s): 72b225f

Model size is now a choice.

Browse files
Files changed (1) hide show
  1. app.py +13 -2
app.py CHANGED
@@ -6,7 +6,6 @@ from simple_diarizer.diarizer import Diarizer
6
  import streamlit as st
7
  import base64
8
 
9
- model_size = 'small'
10
 
11
 
12
 
@@ -16,6 +15,7 @@ def create_download_link(val, filename, label):
16
 
17
 
18
  def speech_to_text(uploaded):
 
19
  model = whisper.load_model(model_size)
20
  result = model.transcribe(uploaded,verbose=True)
21
  return f'You said: {result["text"]}'
@@ -59,7 +59,7 @@ def transcribe(uploaded, nu_speakers):
59
  audio_bytes = audio_file.read()
60
  st.audio('mono.wav', format='audio/wav')
61
 
62
- with st.spinner(text="Transcribing..."):
63
  tdf = audio_to_df(uploaded)
64
  with st.spinner(text="Segmenting..."):
65
  sdf = segment(nu_speakers)
@@ -107,10 +107,21 @@ st.markdown(descript)
107
  form = st.form(key='my_form')
108
  uploaded = form.file_uploader("Choose a file")
109
  nu_speakers = form.slider('Number of speakers in recording:', min_value=1, max_value=8, value=2, step=1)
 
 
 
 
110
  submit = form.form_submit_button("Transcribe!")
111
 
112
 
113
  if submit:
 
 
 
 
 
 
 
114
  bytes_data = uploaded.getvalue()
115
  with open('temp_audio', 'wb') as outfile:
116
  outfile.write(bytes_data)
 
6
  import streamlit as st
7
  import base64
8
 
 
9
 
10
 
11
 
 
15
 
16
 
17
  def speech_to_text(uploaded):
18
+ st.write(f'Using {model_size} model.')
19
  model = whisper.load_model(model_size)
20
  result = model.transcribe(uploaded,verbose=True)
21
  return f'You said: {result["text"]}'
 
59
  audio_bytes = audio_file.read()
60
  st.audio('mono.wav', format='audio/wav')
61
 
62
+ with st.spinner(text=f"Transcribing using {model_size} model..."):
63
  tdf = audio_to_df(uploaded)
64
  with st.spinner(text="Segmenting..."):
65
  sdf = segment(nu_speakers)
 
107
  form = st.form(key='my_form')
108
  uploaded = form.file_uploader("Choose a file")
109
  nu_speakers = form.slider('Number of speakers in recording:', min_value=1, max_value=8, value=2, step=1)
110
+ models = form.selectbox(
111
+ 'Which Whisper model?',
112
+ ('Tiny (fast)', 'Base (good)', 'Small (great but slow)'), index=1)
113
+
114
  submit = form.form_submit_button("Transcribe!")
115
 
116
 
117
  if submit:
118
+ if models == 'Tiny (fast)':
119
+ model_size = 'tiny'
120
+ elif models == 'Base (good)':
121
+ model_size ='base'
122
+ elif models == 'Small (great but slow)':
123
+ model_size = 'small'
124
+
125
  bytes_data = uploaded.getvalue()
126
  with open('temp_audio', 'wb') as outfile:
127
  outfile.write(bytes_data)