Korla commited on
Commit
c1701de
·
1 Parent(s): 5f7ee8f

Upload folder using huggingface_hub

Browse files
.DS_Store CHANGED
Binary files a/.DS_Store and b/.DS_Store differ
 
app.py CHANGED
@@ -1,18 +1,9 @@
1
- from transformers import (
2
- AutoProcessor,
3
- Wav2Vec2ForCTC,
4
- WhisperProcessor,
5
- WhisperForConditionalGeneration,
6
- )
7
  import gradio as gr
8
  import librosa
9
  import torch
10
 
11
 
12
- processor = WhisperProcessor.from_pretrained("openai/whisper-small")
13
- model = WhisperForConditionalGeneration.from_pretrained("./hsb_whisper")
14
- model.config.forced_decoder_ids = None
15
-
16
  if torch.cuda.is_available():
17
  device = torch.device("cuda")
18
  elif (
@@ -24,30 +15,49 @@ elif (
24
  else:
25
  device = torch.device("cpu")
26
 
27
- model.to(device)
28
-
29
-
30
- def transcribe(audio):
31
- sample = librosa.load(audio, sr=16_000, mono=True)[0]
32
 
33
- input_features = processor(
34
- sample, sampling_rate=16_000, return_tensors="pt"
35
- ).input_features
36
-
37
- input_features = input_features.to(device)
 
 
 
 
 
 
 
 
 
 
 
38
 
39
- predicted_ids = model.generate(input_features)
40
 
41
- transcription_whspr = processor.batch_decode(
42
- predicted_ids, skip_special_tokens=True
43
- )[0]
 
 
44
 
 
 
 
 
45
  return transcription_whspr
46
 
47
 
48
  iface = gr.Interface(
49
  fn=transcribe,
50
- inputs=gr.Audio(source="microphone", type="filepath"),
 
 
 
 
 
 
 
 
51
  outputs="text",
52
  title="Serbski STT",
53
  description="Gradio demo za spóznawanje rěće w hornjoserbšćinje",
 
1
+ from transformers import pipeline
 
 
 
 
 
2
  import gradio as gr
3
  import librosa
4
  import torch
5
 
6
 
 
 
 
 
7
  if torch.cuda.is_available():
8
  device = torch.device("cuda")
9
  elif (
 
15
  else:
16
  device = torch.device("cpu")
17
 
 
 
 
 
 
18
 
19
+ pipe1 = pipeline(
20
+ "automatic-speech-recognition",
21
+ model="base",
22
+ tokenizer="openai/whisper-base",
23
+ chunk_length_s=26,
24
+ device=device,
25
+ stride_length_s=(4, 2),
26
+ )
27
+ pipe2 = pipeline(
28
+ "automatic-speech-recognition",
29
+ model="tiny",
30
+ tokenizer="openai/whisper-tiny",
31
+ chunk_length_s=26,
32
+ device=device,
33
+ stride_length_s=(4, 2),
34
+ )
35
 
 
36
 
37
+ def transcribe(audio, x, model):
38
+ if audio == None:
39
+ sample = librosa.load(x, sr=16_000, mono=True)[0]
40
+ else:
41
+ sample = librosa.load(audio, sr=16_000, mono=True)[0]
42
 
43
+ if model == "base":
44
+ transcription_whspr = pipe1(sample, batch_size=8)["text"]
45
+ elif model == "tiny":
46
+ transcription_whspr = pipe2(sample, batch_size=8)["text"]
47
  return transcription_whspr
48
 
49
 
50
  iface = gr.Interface(
51
  fn=transcribe,
52
+ inputs=[
53
+ gr.Audio(source="microphone", type="filepath"),
54
+ gr.Audio(source="upload", type="filepath"),
55
+ gr.Dropdown(
56
+ choices=["base", "tiny"],
57
+ info="model k wuzwolenju",
58
+ value="base",
59
+ ),
60
+ ],
61
  outputs="text",
62
  title="Serbski STT",
63
  description="Gradio demo za spóznawanje rěće w hornjoserbšćinje",
base/config.json ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "openai/whisper-base",
3
+ "activation_dropout": 0.0,
4
+ "activation_function": "gelu",
5
+ "apply_spec_augment": false,
6
+ "architectures": [
7
+ "WhisperForConditionalGeneration"
8
+ ],
9
+ "attention_dropout": 0.0,
10
+ "begin_suppress_tokens": [
11
+ 220,
12
+ 50257
13
+ ],
14
+ "bos_token_id": 50257,
15
+ "classifier_proj_size": 256,
16
+ "d_model": 512,
17
+ "decoder_attention_heads": 8,
18
+ "decoder_ffn_dim": 2048,
19
+ "decoder_layerdrop": 0.0,
20
+ "decoder_layers": 6,
21
+ "decoder_start_token_id": 50258,
22
+ "dropout": 0.0,
23
+ "encoder_attention_heads": 8,
24
+ "encoder_ffn_dim": 2048,
25
+ "encoder_layerdrop": 0.0,
26
+ "encoder_layers": 6,
27
+ "eos_token_id": 50257,
28
+ "forced_decoder_ids": null,
29
+ "init_std": 0.02,
30
+ "is_encoder_decoder": true,
31
+ "mask_feature_length": 10,
32
+ "mask_feature_min_masks": 0,
33
+ "mask_feature_prob": 0.0,
34
+ "mask_time_length": 10,
35
+ "mask_time_min_masks": 2,
36
+ "mask_time_prob": 0.05,
37
+ "max_length": 448,
38
+ "max_source_positions": 1500,
39
+ "max_target_positions": 448,
40
+ "median_filter_width": 7,
41
+ "model_type": "whisper",
42
+ "num_hidden_layers": 6,
43
+ "num_mel_bins": 80,
44
+ "pad_token_id": 50257,
45
+ "scale_embedding": false,
46
+ "suppress_tokens": [],
47
+ "torch_dtype": "float32",
48
+ "transformers_version": "4.35.0.dev0",
49
+ "use_cache": true,
50
+ "use_weighted_layer_sum": false,
51
+ "vocab_size": 51865
52
+ }
base/generation_config.json ADDED
@@ -0,0 +1,255 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alignment_heads": [
3
+ [
4
+ 3,
5
+ 1
6
+ ],
7
+ [
8
+ 4,
9
+ 2
10
+ ],
11
+ [
12
+ 4,
13
+ 3
14
+ ],
15
+ [
16
+ 4,
17
+ 7
18
+ ],
19
+ [
20
+ 5,
21
+ 1
22
+ ],
23
+ [
24
+ 5,
25
+ 2
26
+ ],
27
+ [
28
+ 5,
29
+ 4
30
+ ],
31
+ [
32
+ 5,
33
+ 6
34
+ ]
35
+ ],
36
+ "begin_suppress_tokens": [
37
+ 220,
38
+ 50257
39
+ ],
40
+ "bos_token_id": 50257,
41
+ "decoder_start_token_id": 50258,
42
+ "eos_token_id": 50257,
43
+ "forced_decoder_ids": [
44
+ [
45
+ 1,
46
+ null
47
+ ],
48
+ [
49
+ 2,
50
+ 50359
51
+ ]
52
+ ],
53
+ "is_multilingual": true,
54
+ "lang_to_id": {
55
+ "<|af|>": 50327,
56
+ "<|am|>": 50334,
57
+ "<|ar|>": 50272,
58
+ "<|as|>": 50350,
59
+ "<|az|>": 50304,
60
+ "<|ba|>": 50355,
61
+ "<|be|>": 50330,
62
+ "<|bg|>": 50292,
63
+ "<|bn|>": 50302,
64
+ "<|bo|>": 50347,
65
+ "<|br|>": 50309,
66
+ "<|bs|>": 50315,
67
+ "<|ca|>": 50270,
68
+ "<|cs|>": 50283,
69
+ "<|cy|>": 50297,
70
+ "<|da|>": 50285,
71
+ "<|de|>": 50261,
72
+ "<|el|>": 50281,
73
+ "<|en|>": 50259,
74
+ "<|es|>": 50262,
75
+ "<|et|>": 50307,
76
+ "<|eu|>": 50310,
77
+ "<|fa|>": 50300,
78
+ "<|fi|>": 50277,
79
+ "<|fo|>": 50338,
80
+ "<|fr|>": 50265,
81
+ "<|gl|>": 50319,
82
+ "<|gu|>": 50333,
83
+ "<|haw|>": 50352,
84
+ "<|ha|>": 50354,
85
+ "<|he|>": 50279,
86
+ "<|hi|>": 50276,
87
+ "<|hr|>": 50291,
88
+ "<|ht|>": 50339,
89
+ "<|hu|>": 50286,
90
+ "<|hy|>": 50312,
91
+ "<|id|>": 50275,
92
+ "<|is|>": 50311,
93
+ "<|it|>": 50274,
94
+ "<|ja|>": 50266,
95
+ "<|jw|>": 50356,
96
+ "<|ka|>": 50329,
97
+ "<|kk|>": 50316,
98
+ "<|km|>": 50323,
99
+ "<|kn|>": 50306,
100
+ "<|ko|>": 50264,
101
+ "<|la|>": 50294,
102
+ "<|lb|>": 50345,
103
+ "<|ln|>": 50353,
104
+ "<|lo|>": 50336,
105
+ "<|lt|>": 50293,
106
+ "<|lv|>": 50301,
107
+ "<|mg|>": 50349,
108
+ "<|mi|>": 50295,
109
+ "<|mk|>": 50308,
110
+ "<|ml|>": 50296,
111
+ "<|mn|>": 50314,
112
+ "<|mr|>": 50320,
113
+ "<|ms|>": 50282,
114
+ "<|mt|>": 50343,
115
+ "<|my|>": 50346,
116
+ "<|ne|>": 50313,
117
+ "<|nl|>": 50271,
118
+ "<|nn|>": 50342,
119
+ "<|no|>": 50288,
120
+ "<|oc|>": 50328,
121
+ "<|pa|>": 50321,
122
+ "<|pl|>": 50269,
123
+ "<|ps|>": 50340,
124
+ "<|pt|>": 50267,
125
+ "<|ro|>": 50284,
126
+ "<|ru|>": 50263,
127
+ "<|sa|>": 50344,
128
+ "<|sd|>": 50332,
129
+ "<|si|>": 50322,
130
+ "<|sk|>": 50298,
131
+ "<|sl|>": 50305,
132
+ "<|sn|>": 50324,
133
+ "<|so|>": 50326,
134
+ "<|sq|>": 50317,
135
+ "<|sr|>": 50303,
136
+ "<|su|>": 50357,
137
+ "<|sv|>": 50273,
138
+ "<|sw|>": 50318,
139
+ "<|ta|>": 50287,
140
+ "<|te|>": 50299,
141
+ "<|tg|>": 50331,
142
+ "<|th|>": 50289,
143
+ "<|tk|>": 50341,
144
+ "<|tl|>": 50348,
145
+ "<|tr|>": 50268,
146
+ "<|tt|>": 50351,
147
+ "<|uk|>": 50280,
148
+ "<|ur|>": 50290,
149
+ "<|uz|>": 50337,
150
+ "<|vi|>": 50278,
151
+ "<|yi|>": 50335,
152
+ "<|yo|>": 50325,
153
+ "<|zh|>": 50260
154
+ },
155
+ "max_initial_timestamp_index": 1,
156
+ "max_length": 448,
157
+ "no_timestamps_token_id": 50363,
158
+ "pad_token_id": 50257,
159
+ "return_timestamps": false,
160
+ "suppress_tokens": [
161
+ 1,
162
+ 2,
163
+ 7,
164
+ 8,
165
+ 9,
166
+ 10,
167
+ 14,
168
+ 25,
169
+ 26,
170
+ 27,
171
+ 28,
172
+ 29,
173
+ 31,
174
+ 58,
175
+ 59,
176
+ 60,
177
+ 61,
178
+ 62,
179
+ 63,
180
+ 90,
181
+ 91,
182
+ 92,
183
+ 93,
184
+ 359,
185
+ 503,
186
+ 522,
187
+ 542,
188
+ 873,
189
+ 893,
190
+ 902,
191
+ 918,
192
+ 922,
193
+ 931,
194
+ 1350,
195
+ 1853,
196
+ 1982,
197
+ 2460,
198
+ 2627,
199
+ 3246,
200
+ 3253,
201
+ 3268,
202
+ 3536,
203
+ 3846,
204
+ 3961,
205
+ 4183,
206
+ 4667,
207
+ 6585,
208
+ 6647,
209
+ 7273,
210
+ 9061,
211
+ 9383,
212
+ 10428,
213
+ 10929,
214
+ 11938,
215
+ 12033,
216
+ 12331,
217
+ 12562,
218
+ 13793,
219
+ 14157,
220
+ 14635,
221
+ 15265,
222
+ 15618,
223
+ 16553,
224
+ 16604,
225
+ 18362,
226
+ 18956,
227
+ 20075,
228
+ 21675,
229
+ 22520,
230
+ 26130,
231
+ 26161,
232
+ 26435,
233
+ 28279,
234
+ 29464,
235
+ 31650,
236
+ 32302,
237
+ 32470,
238
+ 36865,
239
+ 42863,
240
+ 47425,
241
+ 49870,
242
+ 50254,
243
+ 50258,
244
+ 50358,
245
+ 50359,
246
+ 50360,
247
+ 50361,
248
+ 50362
249
+ ],
250
+ "task_to_id": {
251
+ "transcribe": 50359,
252
+ "translate": 50358
253
+ },
254
+ "transformers_version": "4.35.0.dev0"
255
+ }
base/preprocessor_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "chunk_length": 30,
3
+ "feature_extractor_type": "WhisperFeatureExtractor",
4
+ "feature_size": 80,
5
+ "hop_length": 160,
6
+ "n_fft": 400,
7
+ "n_samples": 480000,
8
+ "nb_max_frames": 3000,
9
+ "padding_side": "right",
10
+ "padding_value": 0.0,
11
+ "processor_class": "WhisperProcessor",
12
+ "return_attention_mask": false,
13
+ "sampling_rate": 16000
14
+ }
base/pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ccac15200b555443fe7f00bfa134baffe235a1d9fefa7d6b673076de5c1c1f21
3
+ size 290459230
tiny/config.json ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "openai/whisper-tiny",
3
+ "activation_dropout": 0.0,
4
+ "activation_function": "gelu",
5
+ "apply_spec_augment": false,
6
+ "architectures": [
7
+ "WhisperForConditionalGeneration"
8
+ ],
9
+ "attention_dropout": 0.0,
10
+ "begin_suppress_tokens": [
11
+ 220,
12
+ 50257
13
+ ],
14
+ "bos_token_id": 50257,
15
+ "classifier_proj_size": 256,
16
+ "d_model": 384,
17
+ "decoder_attention_heads": 6,
18
+ "decoder_ffn_dim": 1536,
19
+ "decoder_layerdrop": 0.0,
20
+ "decoder_layers": 4,
21
+ "decoder_start_token_id": 50258,
22
+ "dropout": 0.0,
23
+ "encoder_attention_heads": 6,
24
+ "encoder_ffn_dim": 1536,
25
+ "encoder_layerdrop": 0.0,
26
+ "encoder_layers": 4,
27
+ "eos_token_id": 50257,
28
+ "forced_decoder_ids": [
29
+ [
30
+ 1,
31
+ 50259
32
+ ],
33
+ [
34
+ 2,
35
+ 50359
36
+ ],
37
+ [
38
+ 3,
39
+ 50363
40
+ ]
41
+ ],
42
+ "init_std": 0.02,
43
+ "is_encoder_decoder": true,
44
+ "mask_feature_length": 10,
45
+ "mask_feature_min_masks": 0,
46
+ "mask_feature_prob": 0.0,
47
+ "mask_time_length": 10,
48
+ "mask_time_min_masks": 2,
49
+ "mask_time_prob": 0.05,
50
+ "max_length": 448,
51
+ "max_source_positions": 1500,
52
+ "max_target_positions": 448,
53
+ "median_filter_width": 7,
54
+ "model_type": "whisper",
55
+ "num_hidden_layers": 4,
56
+ "num_mel_bins": 80,
57
+ "pad_token_id": 50257,
58
+ "scale_embedding": false,
59
+ "suppress_tokens": [
60
+ 1,
61
+ 2,
62
+ 7,
63
+ 8,
64
+ 9,
65
+ 10,
66
+ 14,
67
+ 25,
68
+ 26,
69
+ 27,
70
+ 28,
71
+ 29,
72
+ 31,
73
+ 58,
74
+ 59,
75
+ 60,
76
+ 61,
77
+ 62,
78
+ 63,
79
+ 90,
80
+ 91,
81
+ 92,
82
+ 93,
83
+ 359,
84
+ 503,
85
+ 522,
86
+ 542,
87
+ 873,
88
+ 893,
89
+ 902,
90
+ 918,
91
+ 922,
92
+ 931,
93
+ 1350,
94
+ 1853,
95
+ 1982,
96
+ 2460,
97
+ 2627,
98
+ 3246,
99
+ 3253,
100
+ 3268,
101
+ 3536,
102
+ 3846,
103
+ 3961,
104
+ 4183,
105
+ 4667,
106
+ 6585,
107
+ 6647,
108
+ 7273,
109
+ 9061,
110
+ 9383,
111
+ 10428,
112
+ 10929,
113
+ 11938,
114
+ 12033,
115
+ 12331,
116
+ 12562,
117
+ 13793,
118
+ 14157,
119
+ 14635,
120
+ 15265,
121
+ 15618,
122
+ 16553,
123
+ 16604,
124
+ 18362,
125
+ 18956,
126
+ 20075,
127
+ 21675,
128
+ 22520,
129
+ 26130,
130
+ 26161,
131
+ 26435,
132
+ 28279,
133
+ 29464,
134
+ 31650,
135
+ 32302,
136
+ 32470,
137
+ 36865,
138
+ 42863,
139
+ 47425,
140
+ 49870,
141
+ 50254,
142
+ 50258,
143
+ 50358,
144
+ 50359,
145
+ 50360,
146
+ 50361,
147
+ 50362
148
+ ],
149
+ "torch_dtype": "float32",
150
+ "transformers_version": "4.35.0.dev0",
151
+ "use_cache": true,
152
+ "use_weighted_layer_sum": false,
153
+ "vocab_size": 51865
154
+ }
tiny/preprocessor_config.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "chunk_length": 30,
3
+ "feature_extractor_type": "WhisperFeatureExtractor",
4
+ "feature_size": 80,
5
+ "hop_length": 160,
6
+ "n_fft": 400,
7
+ "n_samples": 480000,
8
+ "nb_max_frames": 3000,
9
+ "padding_side": "right",
10
+ "padding_value": 0.0,
11
+ "processor_class": "WhisperProcessor",
12
+ "return_attention_mask": false,
13
+ "sampling_rate": 16000
14
+ }
tiny/pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f2e05249ea5a98f42aa99be561d7a808ed000252dbb534eefa6ea891bc430050
3
+ size 151099494