Views
No views yet
pip install transformers librosa soundfile torch1import torch
2import librosa
3import numpy as np
4from transformers import WhisperForConditionalGeneration, WhisperProcessor
5
6# Load model and processor
7model = WhisperForConditionalGeneration.from_pretrained(
8 "seyam2023/bangla-whisper-large-v3",
9 torch_dtype=torch.float16,
10 device_map="auto"
11)
12processor = WhisperProcessor.from_pretrained("seyam2023/bangla-whisper-large-v3")
13
14# Load audio file
15audio, _ = librosa.load("your_audio.wav", sr=16000, mono=True)
16audio = audio / (np.max(np.abs(audio)) + 1e-8)
17
18# Process and transcribe
19inputs = processor.feature_extractor(audio, sampling_rate=16000, return_tensors="pt")
20input_features = inputs.input_features.to(model.device, dtype=torch.float16)
21
22with torch.no_grad():
23 pred_ids = model.generate(
24 input_features,
25 max_new_tokens=128,
26 num_beams=1,
27 do_sample=False
28 )
29
30transcription = processor.batch_decode(pred_ids, skip_special_tokens=True)[0]
31print(transcription)1# Process multiple audio files
2audio_files = ["file1.wav", "file2.wav", "file3.wav"]
3
4for audio_file in audio_files:
5 audio, _ = librosa.load(audio_file, sr=16000, mono=True)
6 audio = audio / (np.max(np.abs(audio)) + 1e-8)
7
8 inputs = processor.feature_extractor(audio, sampling_rate=16000, return_tensors="pt")
9 input_features = inputs.input_features.to(model.device, dtype=torch.float16)
10
11 with torch.no_grad():
12 pred_ids = model.generate(input_features, max_new_tokens=128)
13
14 text = processor.batch_decode(pred_ids, skip_special_tokens=True)[0]
15 print(f"{audio_file}: {text}")1@misc{bangla-whisper-large-v3,
2 author = {Touhidul Alam Seyam and Md Abtahee Kabir and Noore Tamanna Orny},
3 title = {Bangla Whisper Large V3: Bengali Speech Recognition},
4 year = {2025},
5 publisher = {Hugging Face},
6 howpublished = {\url{https://huggingface.co/seyam2023/bangla-whisper-large-v3}}
7}