Views
No views yet
1 from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
2 from datasets import load_dataset
3 import torch
4
5 # load model and processor
6 processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-lv-60-espeak-cv-ft")
7 model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-lv-60-espeak-cv-ft")
8
9 # load dummy dataset and read soundfiles
10 ds = load_dataset("patrickvonplaten/librispeech_asr_dummy", "clean", split="validation")
11
12 # tokenize
13 input_values = processor(ds[0]["audio"]["array"], return_tensors="pt").input_values
14
15 # retrieve logits
16 with torch.no_grad():
17 logits = model(input_values).logits
18
19 # take argmax and decode
20 predicted_ids = torch.argmax(logits, dim=-1)
21 transcription = processor.batch_decode(predicted_ids)
22 # => should give ['m ɪ s t ɚ k w ɪ l t ɚ ɹ ɪ z ð ɪ ɐ p ɑː s əl ʌ v ð ə m ɪ d əl k l æ s ᵻ z æ n d w iː ɑːɹ ɡ l æ d t ə w ɛ l k ə m h ɪ z ɡ ɑː s p əl']