ginic commited on
Commit
557f37f
·
1 Parent(s): 86bf20d

Updated model list

Browse files
Files changed (1) hide show
  1. app.py +48 -35
app.py CHANGED
@@ -2,57 +2,70 @@ import gradio as gr
2
 
3
  from transformers import pipeline
4
 
5
- DEFAULT_MODEL = "ginic/data_seed_4_wav2vec2-large-xlsr-buckeye-ipa"
 
6
 
7
  VALID_MODELS = [
8
  "ctaguchi/wav2vec2-large-xlsr-japlmthufielta-ipa-plus-2000",
9
- "ginic/hyperparam_tuning_1_wav2vec2-large-xlsr-buckeye-ipa",
10
- "ginic/data_seed_1_wav2vec2-large-xlsr-buckeye-ipa",
11
- "ginic/data_seed_2_wav2vec2-large-xlsr-buckeye-ipa",
12
- "ginic/data_seed_3_wav2vec2-large-xlsr-buckeye-ipa",
13
- "ginic/data_seed_4_wav2vec2-large-xlsr-buckeye-ipa",
14
- "ginic/gender_split_30_female_1_wav2vec2-large-xlsr-buckeye-ipa",
15
- "ginic/gender_split_30_female_2_wav2vec2-large-xlsr-buckeye-ipa",
16
- "ginic/gender_split_30_female_3_wav2vec2-large-xlsr-buckeye-ipa",
17
- "ginic/gender_split_30_female_4_wav2vec2-large-xlsr-buckeye-ipa",
18
- "ginic/gender_split_30_female_5_wav2vec2-large-xlsr-buckeye-ipa",
19
- "ginic/gender_split_70_female_1_wav2vec2-large-xlsr-buckeye-ipa",
20
- "ginic/gender_split_70_female_2_wav2vec2-large-xlsr-buckeye-ipa",
21
- "ginic/gender_split_70_female_3_wav2vec2-large-xlsr-buckeye-ipa",
22
- "ginic/gender_split_70_female_4_wav2vec2-large-xlsr-buckeye-ipa",
23
- "ginic/gender_split_70_female_5_wav2vec2-large-xlsr-buckeye-ipa",
24
- "ginic/vary_individuals_old_only_1_wav2vec2-large-xlsr-buckeye-ipa",
25
- "ginic/vary_individuals_old_only_2_wav2vec2-large-xlsr-buckeye-ipa",
26
- "ginic/vary_individuals_old_only_3_wav2vec2-large-xlsr-buckeye-ipa",
27
- "ginic/vary_individuals_young_only_1_wav2vec2-large-xlsr-buckeye-ipa",
28
- "ginic/vary_individuals_young_only_2_wav2vec2-large-xlsr-buckeye-ipa",
29
- "ginic/vary_individuals_young_only_3_wav2vec2-large-xlsr-buckeye-ipa"
30
  ]
31
 
 
32
  def load_model_and_predict(model_name, audio_in, model_state):
33
  if model_state["model_name"] != model_name:
34
- model_state = {"loaded_model":pipeline(task="automatic-speech-recognition", model=model_name),
35
- "model_name": model_name}
36
-
 
 
 
 
37
  return model_state["loaded_model"](audio_in)["text"], model_state
38
 
 
39
  def launch_demo():
40
- initial_model = {"loaded_model":pipeline(task="automatic-speech-recognition", model=DEFAULT_MODEL),
41
- "model_name": DEFAULT_MODEL}
42
- demo= gr.Interface(
43
- fn=load_model_and_predict,
44
- inputs= [
45
- gr.Dropdown(VALID_MODELS, value=DEFAULT_MODEL, label="IPA transcription ASR model", info="Select the model to use for prediction."),
 
 
 
 
 
 
 
 
 
46
  gr.Audio(type="filepath"),
47
- gr.State(value=initial_model) #Store the name of the currently loaded model
48
- ],
 
 
49
  outputs=[gr.Textbox(label="Predicted IPA transcription"), gr.State()],
50
  allow_flagging="never",
51
  title="Automatic International Phonetic Alphabet Transcription",
52
- description="This demo allows you to experiment with producing phonetic transcriptions of uploaded or recorded audio using a selected automatic speech recognition (ASR) model."
53
  )
54
 
55
  demo.launch()
56
 
 
57
  if __name__ == "__main__":
58
- launch_demo()
 
2
 
3
  from transformers import pipeline
4
 
5
+ DEFAULT_MODEL = "ginic/data_seed_bs64_4_wav2vec2-large-xlsr-53-buckeye-ipa"
6
+
7
 
8
  VALID_MODELS = [
9
  "ctaguchi/wav2vec2-large-xlsr-japlmthufielta-ipa-plus-2000",
10
+ "ginic/data_seed_bs64_1_wav2vec2-large-xlsr-53-buckeye-ipa",
11
+ "ginic/data_seed_bs64_2_wav2vec2-large-xlsr-53-buckeye-ipa",
12
+ "ginic/data_seed_bs64_3_wav2vec2-large-xlsr-53-buckeye-ipa",
13
+ "ginic/data_seed_bs64_4_wav2vec2-large-xlsr-53-buckeye-ipa",
14
+ "ginic/gender_split_30_female_1_wav2vec2-large-xlsr-53-buckeye-ipa",
15
+ "ginic/gender_split_30_female_2_wav2vec2-large-xlsr-53-buckeye-ipa",
16
+ "ginic/gender_split_30_female_3_wav2vec2-large-xlsr-53-buckeye-ipa",
17
+ "ginic/gender_split_30_female_4_wav2vec2-large-xlsr-53-buckeye-ipa",
18
+ "ginic/gender_split_30_female_5_wav2vec2-large-xlsr-53-buckeye-ipa",
19
+ "ginic/gender_split_70_female_1_wav2vec2-large-xlsr-53-buckeye-ipa",
20
+ "ginic/gender_split_70_female_2_wav2vec2-large-xlsr-53-buckeye-ipa",
21
+ "ginic/gender_split_70_female_3_wav2vec2-large-xlsr-53-buckeye-ipa",
22
+ "ginic/gender_split_70_female_4_wav2vec2-large-xlsr-53-buckeye-ipa",
23
+ "ginic/gender_split_70_female_5_wav2vec2-large-xlsr-53-buckeye-ipa",
24
+
 
 
 
 
 
 
25
  ]
26
 
27
+
28
  def load_model_and_predict(model_name, audio_in, model_state):
29
  if model_state["model_name"] != model_name:
30
+ model_state = {
31
+ "loaded_model": pipeline(
32
+ task="automatic-speech-recognition", model=model_name
33
+ ),
34
+ "model_name": model_name,
35
+ }
36
+
37
  return model_state["loaded_model"](audio_in)["text"], model_state
38
 
39
+
40
  def launch_demo():
41
+ initial_model = {
42
+ "loaded_model": pipeline(
43
+ task="automatic-speech-recognition", model=DEFAULT_MODEL
44
+ ),
45
+ "model_name": DEFAULT_MODEL,
46
+ }
47
+ demo = gr.Interface(
48
+ fn=load_model_and_predict,
49
+ inputs=[
50
+ gr.Dropdown(
51
+ VALID_MODELS,
52
+ value=DEFAULT_MODEL,
53
+ label="IPA transcription ASR model",
54
+ info="Select the model to use for prediction.",
55
+ ),
56
  gr.Audio(type="filepath"),
57
+ gr.State(
58
+ value=initial_model
59
+ ), # Store the name of the currently loaded model
60
+ ],
61
  outputs=[gr.Textbox(label="Predicted IPA transcription"), gr.State()],
62
  allow_flagging="never",
63
  title="Automatic International Phonetic Alphabet Transcription",
64
+ description="This demo allows you to experiment with producing phonetic transcriptions of uploaded or recorded audio using a selected automatic speech recognition (ASR) model.",
65
  )
66
 
67
  demo.launch()
68
 
69
+
70
  if __name__ == "__main__":
71
+ launch_demo()