Views
No views yet
1import torch
2import torchaudio
3from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
4processor = Wav2Vec2Processor.from_pretrained("arijitx/wav2vec2-large-xlsr-bengali")
5model = Wav2Vec2ForCTC.from_pretrained("arijitx/wav2vec2-large-xlsr-bengali")
6# model = model.to("cuda")
7resampler = torchaudio.transforms.Resample(TEST_AUDIO_SR, 16_000)
8def speech_file_to_array_fn(batch):
9 speech_array, sampling_rate = torchaudio.load(batch)
10 speech = resampler(speech_array).squeeze().numpy()
11 return speech
12speech_array = speech_file_to_array_fn("test_file.wav")
13inputs = processor(speech_array, sampling_rate=16_000, return_tensors="pt", padding=True)
14with torch.no_grad():
15 logits = model(inputs.input_values).logits
16
17predicted_ids = torch.argmax(logits, dim=-1)
18preds = processor.batch_decode(predicted_ids)[0]
19print(preds.replace("[PAD]",""))