chinmayc3 commited on
Commit
a758b55
Β·
1 Parent(s): 27d993f

Improved status messages using toasts

Browse files
Files changed (2) hide show
  1. app.py +17 -14
  2. pages/scoreboard.py +16 -16
app.py CHANGED
@@ -178,22 +178,20 @@ def call_function(model_name):
178
  return transcript
179
 
180
  def transcribe_audio():
181
- with st.spinner("🎯 Transcribing audio... this may take up to 30 seconds"):
182
- models_list = ["Ori Apex", "Ori Apex XT", "deepgram", "Ori Swift", "Ori Prime","azure"]
183
- model1_name, model2_name = random.sample(models_list, 2)
184
 
185
- st.session_state.option_1_model_name = model1_name
186
- st.session_state.option_2_model_name = model2_name
187
 
188
- time_1 = time.time()
189
- transcript1 = call_function(model1_name)
190
- time_2 = time.time()
191
- transcript2 = call_function(model2_name)
192
- time_3 = time.time()
193
-
194
- st.session_state.option_2_response_time = round(time_3 - time_2,3)
195
- st.session_state.option_1_response_time = round(time_2 - time_1,3)
196
 
 
 
197
 
198
  return transcript1, transcript2
199
 
@@ -212,6 +210,7 @@ def reset_state():
212
 
213
  def on_option_1_click():
214
  if st.session_state.transcribed and not st.session_state.option_selected:
 
215
  st.session_state.option_1_model_name_state = f"πŸ‘‘ {st.session_state.option_1_model_name} πŸ‘‘"
216
  st.session_state.option_2_model_name_state = f"πŸ‘Ž {st.session_state.option_2_model_name} πŸ‘Ž"
217
  st.session_state.choice = f"You chose Option 1. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
@@ -227,6 +226,7 @@ def on_option_1_click():
227
 
228
  def on_option_2_click():
229
  if st.session_state.transcribed and not st.session_state.option_selected:
 
230
  st.session_state.option_2_model_name_state = f"πŸ‘‘ {st.session_state.option_2_model_name} πŸ‘‘"
231
  st.session_state.option_1_model_name_state = f"πŸ‘Ž {st.session_state.option_1_model_name} πŸ‘Ž"
232
  st.session_state.choice = f"You chose Option 2. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
@@ -242,6 +242,7 @@ def on_option_2_click():
242
 
243
  def on_option_both_click():
244
  if st.session_state.transcribed and not st.session_state.option_selected:
 
245
  st.session_state.option_2_model_name_state = f"πŸ‘‘ {st.session_state.option_2_model_name} πŸ‘‘"
246
  st.session_state.option_1_model_name_state = f"πŸ‘‘ {st.session_state.option_1_model_name} πŸ‘‘"
247
  st.session_state.choice = f"You chose Prefer both. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
@@ -258,6 +259,7 @@ def on_option_both_click():
258
 
259
  def on_option_none_click():
260
  if st.session_state.transcribed and not st.session_state.option_selected:
 
261
  st.session_state.option_1_model_name_state = f"πŸ‘Ž {st.session_state.option_1_model_name} πŸ‘Ž"
262
  st.session_state.option_2_model_name_state = f"πŸ‘Ž {st.session_state.option_2_model_name} πŸ‘Ž"
263
  st.session_state.choice = f"You chose none option. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
@@ -274,6 +276,7 @@ def on_option_none_click():
274
 
275
  def on_click_transcribe():
276
  if st.session_state.has_audio:
 
277
  option_1_text, option_2_text = transcribe_audio(
278
  )
279
  st.session_state.option_1 = option_1_text
@@ -285,6 +288,7 @@ def on_click_transcribe():
285
 
286
  def on_random_click():
287
  reset_state()
 
288
  fetch_audio_payload = {"task": "fetch_audio"}
289
  array, sampling_rate, filepath = send_task(fetch_audio_payload)
290
  st.session_state.audio = {"data":array,"sample_rate":sampling_rate,"format":"audio/wav"}
@@ -359,7 +363,6 @@ def main():
359
  with tempfile.NamedTemporaryFile(delete=False, suffix='.wav') as tmp_file:
360
  tmp_file.write(audio_bytes)
361
  os.makedirs(TEMP_DIR, exist_ok=True)
362
- # s3_client.put_object(Bucket=os.getenv('AWS_BUCKET_NAME'), Key=f"{os.getenv('AUDIOS_KEY')}/{tmp_file.name.split('/')[-1]}", Body=audio_bytes)
363
  st.session_state.audio_path = tmp_file.name
364
  st.session_state.option_selected = None
365
 
 
178
  return transcript
179
 
180
  def transcribe_audio():
181
+ models_list = ["Ori Apex", "Ori Apex XT", "deepgram", "Ori Swift", "Ori Prime","azure"]
182
+ model1_name, model2_name = random.sample(models_list, 2)
 
183
 
184
+ st.session_state.option_1_model_name = model1_name
185
+ st.session_state.option_2_model_name = model2_name
186
 
187
+ time_1 = time.time()
188
+ transcript1 = call_function(model1_name)
189
+ time_2 = time.time()
190
+ transcript2 = call_function(model2_name)
191
+ time_3 = time.time()
 
 
 
192
 
193
+ st.session_state.option_2_response_time = round(time_3 - time_2,3)
194
+ st.session_state.option_1_response_time = round(time_2 - time_1,3)
195
 
196
  return transcript1, transcript2
197
 
 
210
 
211
  def on_option_1_click():
212
  if st.session_state.transcribed and not st.session_state.option_selected:
213
+ st.toast("Saving and loading results... please wait",icon="πŸ’Ύ")
214
  st.session_state.option_1_model_name_state = f"πŸ‘‘ {st.session_state.option_1_model_name} πŸ‘‘"
215
  st.session_state.option_2_model_name_state = f"πŸ‘Ž {st.session_state.option_2_model_name} πŸ‘Ž"
216
  st.session_state.choice = f"You chose Option 1. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
 
226
 
227
  def on_option_2_click():
228
  if st.session_state.transcribed and not st.session_state.option_selected:
229
+ st.toast("Saving and loading results... please wait",icon="πŸ’Ύ")
230
  st.session_state.option_2_model_name_state = f"πŸ‘‘ {st.session_state.option_2_model_name} πŸ‘‘"
231
  st.session_state.option_1_model_name_state = f"πŸ‘Ž {st.session_state.option_1_model_name} πŸ‘Ž"
232
  st.session_state.choice = f"You chose Option 2. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
 
242
 
243
  def on_option_both_click():
244
  if st.session_state.transcribed and not st.session_state.option_selected:
245
+ st.toast("Saving and loading results... please wait",icon="πŸ’Ύ")
246
  st.session_state.option_2_model_name_state = f"πŸ‘‘ {st.session_state.option_2_model_name} πŸ‘‘"
247
  st.session_state.option_1_model_name_state = f"πŸ‘‘ {st.session_state.option_1_model_name} πŸ‘‘"
248
  st.session_state.choice = f"You chose Prefer both. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
 
259
 
260
  def on_option_none_click():
261
  if st.session_state.transcribed and not st.session_state.option_selected:
262
+ st.toast("Saving and loading results... please wait",icon="πŸ’Ύ")
263
  st.session_state.option_1_model_name_state = f"πŸ‘Ž {st.session_state.option_1_model_name} πŸ‘Ž"
264
  st.session_state.option_2_model_name_state = f"πŸ‘Ž {st.session_state.option_2_model_name} πŸ‘Ž"
265
  st.session_state.choice = f"You chose none option. Option 1 was {st.session_state.option_1_model_name} Option 2 was {st.session_state.option_2_model_name}"
 
276
 
277
  def on_click_transcribe():
278
  if st.session_state.has_audio:
279
+ st.toast('Transcribing audio... this may take up to 30 seconds',icon="🎯")
280
  option_1_text, option_2_text = transcribe_audio(
281
  )
282
  st.session_state.option_1 = option_1_text
 
288
 
289
  def on_random_click():
290
  reset_state()
291
+ st.toast("Fetching random audio... please wait",icon="🎲")
292
  fetch_audio_payload = {"task": "fetch_audio"}
293
  array, sampling_rate, filepath = send_task(fetch_audio_payload)
294
  st.session_state.audio = {"data":array,"sample_rate":sampling_rate,"format":"audio/wav"}
 
363
  with tempfile.NamedTemporaryFile(delete=False, suffix='.wav') as tmp_file:
364
  tmp_file.write(audio_bytes)
365
  os.makedirs(TEMP_DIR, exist_ok=True)
 
366
  st.session_state.audio_path = tmp_file.name
367
  st.session_state.option_selected = None
368
 
pages/scoreboard.py CHANGED
@@ -171,23 +171,23 @@ def create_metric_container(label, value, full_name=None):
171
  st.markdown(f"<h3 style='margin-top: 0;'>{value}</h3>", unsafe_allow_html=True)
172
 
173
  def on_refresh_click():
174
- with st.spinner("Refreshing data... please wait"):
175
- with fs.open(SAVE_PATH, 'rb') as f:
176
- st.session_state.df = pd.read_csv(f)
177
 
178
- try:
179
- with fs.open(ELO_JSON_PATH,'r') as f:
180
- st.session_state.elo_json = json.load(f)
181
- except Exception as e:
182
- logger.error("Error while reading elo json file %s",e)
183
- st.session_state.elo_json = None
184
 
185
- try:
186
- with fs.open(ELO_CSV_PATH,'rb') as f:
187
- st.session_state.elo_df = pd.read_csv(f)
188
- except Exception as e:
189
- logger.error("Error while reading elo csv file %s",e)
190
- st.session_state.elo_df = None
191
 
192
  def dashboard():
193
  st.title('Model Arena Scoreboard')
@@ -204,7 +204,7 @@ def dashboard():
204
  elo_df = pd.read_csv(f)
205
  st.session_state.elo_df = elo_df
206
 
207
- st.button("Refresh",on_click=on_refresh_click,key="refresh_btn")
208
 
209
  if len(st.session_state.df) != 0:
210
  metrics = calculate_metrics(st.session_state.df)
 
171
  st.markdown(f"<h3 style='margin-top: 0;'>{value}</h3>", unsafe_allow_html=True)
172
 
173
  def on_refresh_click():
174
+ st.toast("Refreshing data... please wait",icon="πŸ”„")
175
+ with fs.open(SAVE_PATH, 'rb') as f:
176
+ st.session_state.df = pd.read_csv(f)
177
 
178
+ try:
179
+ with fs.open(ELO_JSON_PATH,'r') as f:
180
+ st.session_state.elo_json = json.load(f)
181
+ except Exception as e:
182
+ logger.error("Error while reading elo json file %s",e)
183
+ st.session_state.elo_json = None
184
 
185
+ try:
186
+ with fs.open(ELO_CSV_PATH,'rb') as f:
187
+ st.session_state.elo_df = pd.read_csv(f)
188
+ except Exception as e:
189
+ logger.error("Error while reading elo csv file %s",e)
190
+ st.session_state.elo_df = None
191
 
192
  def dashboard():
193
  st.title('Model Arena Scoreboard')
 
204
  elo_df = pd.read_csv(f)
205
  st.session_state.elo_df = elo_df
206
 
207
+ st.button("πŸ”„ Refresh",on_click=on_refresh_click,key="refresh_btn")
208
 
209
  if len(st.session_state.df) != 0:
210
  metrics = calculate_metrics(st.session_state.df)