onepunchgin commited on
Commit
515c6f5
·
verified ·
1 Parent(s): 03fab21

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -0
app.py ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import torchaudio
3
+ import torch
4
+ from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
5
+
6
+ # Load local model
7
+ model_dir = "ccc_wav2vec_model"
8
+ processor = Wav2Vec2Processor.from_pretrained(model_dir)
9
+ model = Wav2Vec2ForCTC.from_pretrained(model_dir)
10
+ model.eval()
11
+
12
+ def transcribe(audio):
13
+ waveform, sr = torchaudio.load(audio)
14
+ if sr != 16000:
15
+ resampler = torchaudio.transforms.Resample(orig_freq=sr, new_freq=16000)
16
+ waveform = resampler(waveform)
17
+ inputs = processor(waveform.squeeze().numpy(), sampling_rate=16000, return_tensors="pt", padding=True)
18
+ with torch.no_grad():
19
+ logits = model(**inputs).logits
20
+ predicted_ids = torch.argmax(logits, dim=-1)
21
+ transcription = processor.batch_decode(predicted_ids)[0]
22
+ return transcription
23
+
24
+ iface = gr.Interface(fn=transcribe,
25
+ inputs=gr.Audio(type="filepath"),
26
+ outputs="text",
27
+ title="Kannada Speech Recognition",
28
+ description="Upload a Kannada audio file to transcribe using CCC-wav2vec model")
29
+
30
+ iface.launch()