Eğitim ve genel olarak sosyal bilimler araştırmalarında ve elbette gazetecilikte bir durumu bir sorunu anlamak için araştırmacılar röportajları, sohbetleri, diyalogları yani genel olarak konuşmayı ham veri olarak kullanır. Nitel araştırmalar olarak genelleyebileceğimiz bu yaklaşımın ilk adımı konuşulanları sesli olarak kaydetmek, ikinci adımı ise yazıya dökmektir.
Konuşmayı yazıya dökme işi yapay zeka teknolojilerinin icadından önce çok meşakkatliydi. Bir dakikalık sesin yazıya çevrilmesi 5 ila 10 dakika sürebiliyordu. Artık bu iş görece daha rahat. Yerli ve uluslararası transkripsiyon hizmetleri var artık. Henüz kendim denemedim. Yakın zamanda denemeyi düşünüyorum. Deneyimlerimi denedikçe paylaşırım.
Ama acaba ses verimi başka bir platforma yüklemeden, böylece gizliliğin korunduğuna biraz daha emin olarak kendi bilgisayarımda yazıya dönüştürebilir miyim?
İşte whisper
Hikayem ChatGPT’den bir ses dosyasının yazıya dökümünü (transkripsiyon veya deşifre de deniyor) istememle başladı. Bana bir dakikalık bir çözümleme yapabileceğini söyledi. Ben bir dakikalık çözümlemeyi ne yapayım! Ama alternatif sundu kendi bilgisayarında yapabilmen için kod verebilirim dedi. Verdiği kod, OpenAI’ın geliştirdiği bir Automatic Speech Recognition (asr) modeli olan whisper kütüphanesinin kullanımıydı.
Bilgisayarımın ekran kartı GeForce GTX 1070. 8 GB VRAM’i var. Bu kadar VRAM ile çalışacak mı acaba diye düşünürken whisper’ın large modeli hariç çalışacağını okudum ve denemeye karar verdim.
whisper’ı Kurmak
Ben işletim sistemi olarak Ubuntu 24.04 kullanıyorum. Windows ve Mac için pip komutu nasıl oluyor bir araştırmak lazım. Dolayısıyla Ubuntu’daki deneyimimi anlatıyorum.
Öncelikle GitHub’daki belgelerde şu komut yeterli deniyor. Bunun whisper’ı ve gerekli kütüphaneleri kuracağı söyleniyor.
pip install -U openai-whisper
Ama Ubuntu bu pip komutunu sistem çapında çalıştıramam bir sanal ortam (virtual environment) oluşturman gerekli dedi. Ben de epeyce boş yerim olan bir drive’da sanal ortamlı python oluşturdum. Komut şöyleydi.
python3 -m venv /home2/fm/python_projects
Sonra bu klasörün içine girdim.
cd /home2/fm/python_projects
Sonra pip komutunu bin klasörünün içinde olduğu için şu komutla whisper’ı kurabildim.
bin/pip install -U openai-whisper
whisper İşbaşında
Denemek için bilgisayarımda küçük bir sesli not kaydettim. Sonra da şu komutla whisper’ı çalıştırdım.
bin/whisper deneme.mp3 --model turbo --language Turkish
Yaklaşık ses dosyasının çalma süresi kadar bir sürede whisper işini tamamladı. Sesi yazıya çevirdi. whisper çalışırken terminalde (komut satırı istemcisinde) zaman damgaları ve metin çıktı olarak veriliyor. whisper’ın işi bitince çeşitli formatlarda (txt,srt,tsv,vtt,json) bu bilgiler zaman damgaları ve konuşma metni saklanıyor.
whisper’ın çeşitli büyüklükte modelleri var: tiny, base, small, medium, large ve turbo gibi. Modeller hakkında daha fazla bilgiyi whisperx github sayfasından öğrenebilirsiniz.
whisper nerelerde eksik kalıyor?
Konuşmayı metne çevirebiliyor. Ama eğer birden fazla konuşan varsa kimin ne zaman ne dediğini whisper ayırt edemiyor. Konuşmacıların belirlenmesine diarizasyon (diarization) deniyor. Bu işlemi yapabilen başka yazılımlar var. Örneğin whisperX. whisper X’i denedim ama hata verdi bu nedenle istediğim sonucu alamadım. Daha sonra tekrar bakmayı düşünüyorum.
whisper hala görece yavaş. faster-whisper‘ın dört kata kadar daha hızlı çalışabildiği söyleniyor. Onu da denedim, o da hata verdi. Daha sonra tekrar deneyeceğim.
Diarizasyon için pyannotate-audio‘i denedim ama sonucu istediğim kalitede olmadı. Epeyce yanlış çıkıyor. mp3 dosyasını wav’a çevirip tekrar deneyeceğim.
whisper Hangi İşler için İyi?
Kendinize aldığınız sesli notlar için gayet iyi bir araç. Tek konuşmacının olduğu monologlar için de çok kullanışlı. Ayrıca defterinize aldığınız notları telefonunuzda sesli nota çevirip sonra bu sesli notların yazılı dökümlerini elde etmek için de kullanışlı.
whisper’ın Güvenirliği Ne Durumda?
whisper’ın large modelinin Word Error Rate (WER)(Kelime Hata Oranı) %9-%13 aralığında bulunmuş (Shafer,2024). whisper’ın small modelinin WER’si %18 civarı bulunmuş (Oyucu, 2023)
Bunlar yüksek hata oranları. Dolayısıyla özellikle araştırma gibi işlerde whisper’ı kullanırken, yazıya dökülmüş çıktıyı bir kez ses dosyasını arkada çalarak kontrol etmek mantıklı olabilir.