Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Telegram Botum Artık Toplantıları Benim Yerime Dinliyor: Ses->Metin->Özet Pipeline'ı

devster

Üye
Katılım
14 Mart 2026
Mesajlar
30
🤖 Botu Kurma Aşaması

Kafayı toplantılarla bozmaktan bıktım artık. "Acaba bu konuşulanları otomatik metne çevirip özetleyen bir bot yazsam mı?" diye düşündüm ve kolları sıvadım. Hedef basitti: Telegram'a atılan ses kayıtlarını al, metne dök, özetle, bana özeti gönder. Ne kadar zor olabilirdi ki? (Spoiler: Çok.)

İlk adım python-telegram-bot kütüphanesiyle botu ayağa kaldırmaktı. O kısım nispeten kolaydı. Bot ses dosyasını alıp indirebiliyordu. Asıl cefayı çektiğim kısım sesi metne çevirmek oldu.

🎤 Whisper'la İmtihanım

Ses tanıma için OpenAI Whisper'ı seçtim. Modeli yüklemek bir dert, "CUDA hatası" almak ayrı bir dert! Meğerse benim ekran kartı hafızası küçük modeli kaldırmıyormuş. Kafayı yiyecektim. Neyse sonunda whisper-tiny modeliyle idare etmeye karar verdim.

Python:
import whisper
model = whisper.load_model("tiny")
result = model.transcribe("toplanti.ogg")

Buraya kadar tamam. Ama çıktı dümdüz, noktalama olmayan, upuzun bir metin. Dinleyen de anlamaz bunu.

📝 Özet Botu ve Beklenmedik Sorun

Sıra geldi özetlemeye. "Hızlı olsun" diye transformers kütüphanesinden hazır bir özetleme pipeline'ı kurdum. İlk testi yaptım, bot çalıştı, sesi aldı, metne çevirdi, özetledi ve bana gönderdi. Muzaffer bir şekilde ekrana baktım. Özet şuydu: "Evet, tamam, anladım, olur, hmm, şey..."

Şaka gibi ama! Bot, konuşmadaki dolgu kelimelerini ve kısa onayları özet sanıp bana yollamıştı. Meğerse model Türkçe konuşma dilindeki bu "ııı", "eee", "şey" gibi ifadeleri içeriğin ta kendisi zannediyordu.

🔧 Çözüm ve Şimdiki Mutlu Son

Çözüm olarak, metni özetlemeden önce bir ön işlemciden (pre-processor) geçirmeye karar verdim. Basit bir regex ve stopwords listesiyle dolgu kelimelerini ve çok kısa cümleleri temizledim. Ayrıca, özetleme modelinin minimum ve maksimum uzunluk parametrelerini elle ayarladım.

Python:
# Kabaca bir ön temizlik
cleaned_text = re.sub(r'\b(ıı|eee|şey|yani|hmm)\b', '', raw_text, flags=re.IGNORECASE)

Şu an pipeline şöyle işliyor: 1) Ses dosyası gelir, 2) Whisper metne çevirir, 3) Benim yazdığım temizleyici gereksizleri atar, 4) Özetleme modeli anlamlı kısmı sıkıştırır, 5) Bot bana özeti yollar.

Artık toplantılara katılmıyorum desem yalan olur ama en azından kaçırdığım yerleri 30 saniyede okuyup yetişebiliyorum. Tabii bot bazen "çok önemli" dediği şeyi kaçırıp, önemsiz bir ayrıntıyı özetin başına koyabiliyor. O da kendi karakteri artık.

Siz de böyle otomasyon delilikleri yapıyor musunuz? Ya da Whisper'ı daha verimli kullanmanın, Türkçe konuşma metnini temizlemenin sırları sizde mi?
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Geri