Altyazı İçin Whisper Model Karşılaştırması: Tiny, Small, Turbo ve Large-v3
Altyazı için Whisper model karşılaştırması: tiny, small, turbo ve large-v3'ün parametresi, indirme boyutu ve hızı — büyük model her zaman daha iyi değildir.
Whisper altı boyutta gelir. OpenAI'nin kendi rakamlarına göre tiny 39 milyon, base 74 milyon, small 244 milyon, medium 769 milyon, large 1,55 milyar ve turbo 809 milyon parametreye sahiptir; ilk dördünün yalnızca İngilizce çalışan .en sürümleri de vardır. Masaüstü uygulamalarının indirdiği faster-whisper derlemeleri olarak bunlar tiny için yaklaşık 78 MB ile large-v3 için yaklaşık 3,1 GB arasında değişir.
Yine de en büyük model, altyazı için otomatik olarak en iyi model değildir. large-v3-turbo, large-v3'ün kabaca yarısı kadar parametreye sahiptir ve yaklaşık sekiz kat daha hızlı çalışır; sıradan görüntülerde bitmiş altyazı dosyasındaki fark, hızın kararı vermesine yetecek kadar küçüktür. Bunun yanında, daha küçük bir modelin daha büyük bir modelden daha iyi bir transkript ürettiği gerçek durumlar da vardır.
İşte rakamlar, bunların özellikle altyazı işi için ne anlama geldiği ve bir modeli gerçekte olduğundan daha kötü gösteren başarısızlık biçimleri.
Modeller yan yana
Parametre sayıları ve bağıl hız OpenAI'nin Whisper README'sinden geliyor; boyutlar ise yuvarlanmış tahminler değil, Hugging Face'teki faster-whisper (CTranslate2) derlemelerinin, yani Sablate'ın kademeleri için indirdiği aynı derlemelerin gerçek toplamlarıdır.
| Model | Parametre | İndirme | large-v3'e göre hız | Sablate kademesi |
|---|---|---|---|---|
tiny | 39 M | ~78 MB | ~10× | Fast |
tiny.en | 39 M | ~78 MB | ~10× | — |
base | 74 M | ~148 MB | ~7× | — |
base.en | 74 M | ~148 MB | ~7× | — |
small | 244 M | ~486 MB | ~4× | Balanced |
small.en | 244 M | ~486 MB | ~4× | — |
medium | 769 M | ~1,53 GB | ~2× | Yerini turbo'ya bıraktı |
medium.en | 769 M | ~1,53 GB | ~2× | — |
large-v3-turbo | 809 M | ~1,62 GB | ~8× | Accurate |
large-v3 | 1550 M | ~3,09 GB | 1× | Best |
Örüntüyü bozan satır turbo'nunki. medium'dan daha fazla parametresi var, ama yine de yaklaşık dört kat daha hızlı çalışıyor — bu da sadece parametre sayısına bakarak tahmin edilebilecek bir şey değil. Sablate'in dört kademesi çok dilli modelleri kullanır; base ve .en sürümleri karşılaştırma için tabloda yer alıyor.
İngilizce'ye özel .en modellerini kullanmalı mısın?
OpenAI, tiny, base, small ve medium'un yalnızca İngilizce çalışan sürümlerini yayımlıyor. README'sine göre bunlar İngilizcede daha iyi sonuç verme eğiliminde, özellikle tiny.en ve base.en; fark small.en ve medium.en'de daha az belirgin hale geliyor. large ya da turbo'nun .en sürümü yok.
Altyazı için bu basit bir kural çıkarıyor. Ses İngilizceyse ve küçük bir modelle sınırlıysan — eski bir dizüstü, yalnızca CPU, hızlı bir taslak — aynı boyut ve hızda .en sürümü daha iyi tercihtir. Sesin herhangi bir kısmı başka bir dildeyse çok dilli modeli kullan, çünkü bir .en modeli yalnızca İngilizce bilir. large-v3-turbo ve üstünde soru ortadan kalkar, çünkü yalnızca çok dilli sürümler var.
Turbo, öneriyi neden değiştiriyor
Turbo, sıfırdan eğitilmiş daha küçük bir model değildir. Kod çözücüsü 32 katmandan 4'e budanmış, sonra aynı çok dilli transkripsiyon verisi üzerinde iki epoch daha ince ayarlanmış bir large-v3'tür. Whisper zamanının çoğunu kod çözücüde geçirir, bu yüzden onu bu kadar sert kesmek çok büyük bir hız kazancı sağlar; asıl dinleyen kısım olan kodlayıcı ise dokunulmadan kalır.
Bunun yanında iki uyarı geliyor; ikisi de söylenceden değil, OpenAI'nin kendi belgelerinden geliyor:
- Çeviri verisi olmadan ince ayarlandı. Turbo bir transkripsiyon modelidir. Whisper'ın konuşmadan İngilizceye çeviri görevini istiyorsan turbo yanlış araçtır; kaynak dilde transkript çıkar, metni sonra çevir — zaten daha iyi olan iş akışı da bu.
- Bazı dillerde kalite kaybı daha fazladır. Turbo, çoğu dilde
large-v2'yi takip eder, ama Tayca ve Kantoncada belirgin şekilde daha fazla kalite kaybeder. Bu dillerle çalışıyorsan, karar vermeden önce test et.
Bunların dışındaki her şey için turbo, altyazıda mantıklı varsayılan seçimdir: large'a yakın kalite, iki saatlik bir kaydı bile pratik bir işe dönüştüren bir hızda.
En büyük model en iyi altyazıyı mı verir?
Her zaman değil; bu istisnayı bilmeye değer, çünkü onunla karşılaştığında bir hata gibi görünür.
Bunu 101 saniyelik bir Türkçe klip üzerinde, float16 ile bir RTX 3060 Ti'de, uygulamanın kendi transkripsiyon yolundan ölçtük. Her modelin konuşmanın ne kadarını gerçekten yakaladığına göre sıralandığında medium birinci çıktı. large-v3, medium'un doğru şekilde yazıya döktüğü konuşmaları atladı — klibin açılış sözleri ve birkaç kısa ünlem ortaya hiç çıkmadı. Alışılmış kollardan hiçbiri onları geri getirmedi: ses etkinliği filtresini kapatmak, konuşma-yok eşiğini yükseltmek, log-olabilirlik eşiğini kaldırmak, sıcaklığı sabitlemek. Log-olabilirlik eşiğini kaldırmak durumu çok daha kötüleştirdi ve transkripti yaklaşık 1.110 karakterden 429'a düşürdü.
Toplulukta sık tekrarlanan, large-v3 yerine large-v2 kullanma önerisini de test ettik. Bu klipte setin en kötüsü çıktı: 28,7 saniyeden 58,7 saniyeye kadar 30 saniyelik sürekli bir konuşma bölümünü tamamen atladı ve medium'un 178 kelime ürettiği yerde sadece 106 kelime üretti.
Tek bir klip bir benchmark değildir; bu klip de kısa, Türkçe ve sohbet tarzındaydı. Sıralamayı değil yöntemi al: aynı dosyayı iki modelle transkript et, yanlış yazılana değil eksik olana bak ve her şeyi duyan modeli seç. Altyazıda eksikler, yazım hatalarından çok daha maliyetlidir; çünkü izleyici yanlış bir kelimeyi okuyup geçebilir, ama orada olmayan bir satırı okuyamaz.
İyi bir model ne zaman kötü görünür
Üç başarısızlık biçimi, modelle hiçbir ilgisi olmayan "büyük model daha kötü" şikayetlerini doğurur.
1. Kelime zaman damgalarındaki eşitlikler satır bölmeyi bozar. Whisper, kelime başına zaman damgası üretir ve ardışık kelimeler sık sık sınırı tam olarak paylaşır — incelediğimiz klipte 177 kelime boşluğunun 172'si tam olarak 0,000 saniyeydi. Uzun bir altyazı satırını en büyük boşluktan bölen bir bölücü bu yüzden her adayı eşit bulur, ilkini alır ve yeniden çalışır — bu da her seferinde bir kelime koparır. Belirti, tek kelimelik altyazılara parçalanmış bir transkripttir ve bu, en çok kelime üreten modelle daha da kötüleşir. Eşitlik bozma kuralını zamansal orta noktayı tercih edecek şekilde düzeltmek bir klibi 90 altyazı satırından (78'i tek kelimelik) tek bir tek-kelimelik satır içeren 28 altyazı satırına indirdi. Model hiç değişmedi.
2. Seçtiğin model, çalışan model değildir. Model depoları, indirme kayıt defterleri ile çıkarım kütüphaneleri arasında tutarsız şekilde adlandırılır. Diskte bir depo adı altında duran indirilmiş bir model, yükleyici başka bir adı ararken, ya sessiz bir yedek modele düşer ya da doğru modelin 1,6 GB'ı zaten diskte hazır dururken bir ağ sorunu gibi okunan bir hata verir.
3. Başarısız bir yeniden transkripsiyon, ekranda eski transkripti bırakır. Bir yeniden çalıştırma başarısız olur ve uygulama işi geri alırken istenen model adını korursa, artık önceki modelin çıktısına yeni modelin çıktısı diye bakıyorsundur. Bu durumdan yapılan her karşılaştırma yanlıştır. Benchmark yapıyorsan, sonuca varmadan önce metnin gerçekten değiştiğini doğrula — iki farklı modelden aynı çıktı gelmesi bir bulgu değil, bir uyarı işaretidir.
VRAM, disk ve makinen ne çalıştırabilir
OpenAI'nin README'si, kendi PyTorch uygulaması için yaklaşık VRAM değerlerini veriyor: tiny ve base için yaklaşık 1 GB, small için 2 GB, medium için 5 GB, turbo için 6 GB ve large için 10 GB. faster-whisper derlemeleri bundan daha azına ihtiyaç duyar; yukarıdaki tablodaki indirme boyutları da gerçekte göreceğin bellek yükü için iyi bir gösterge sayılır. Pratik öneriler:
- 4 GB VRAM veya daha az, ya da ayrık GPU yok — doğru tercih
small.tinytaslak çıkarmak ve zamanlama kontrolü için, teslim için değil. - 6-8 GB VRAM —
large-v3-turbogönül rahatlığıyla çalışır. Çoğu kişinin bulunması gereken yapılandırma bu. - 10 GB VRAM veya daha fazla — ses buna gerçekten ihtiyaç duyuyorsa
large-v3: ağır aksanlar, üst üste binen konuşmacılar, kötü mikrofonlar. - Sadece CPU — bugün ihtiyacın olan her şey için
small, çalışır halde bırakabiliyorsanturbo.
Burada hassasiyet, model boyutu kadar önemlidir. Whisper'ın üzerinde çalıştığı CTranslate2 derlemeleri float16 ve int8'i destekler; hassasiyeti düşürmek belleği önemli ölçüde azaltır ve bunun kalite maliyeti int8'de küçük, GPU'da float16 için ise genellikle fark edilmezdir.
GPU'da, aynı makinenin CPU'suna kıyasla kabaca beş ile on kat hız artışı bekle. Sablate'in Windows sürümünde NVIDIA CUDA çalışma zamanı, yükleyiciyle birlikte gelmez; ilk GPU çalıştırmasında indirilir — bu da onu hiç kullanmayacak kişiler için indirmeyi küçük tutar.
Gerçekte hangi modeli seçmelisin?
| Durum | Model | Neden |
|---|---|---|
| Zamanlamayı kontrol etmek veya bir altyazı stili denemek | tiny | Saniyeler içinde biter; doğruluk burada önemsizdir |
| Temiz konuşma, tek konuşmacı, iyi mikrofon | small | Hızlıdır, gerisini editör düzeltir |
| Teslim edilen altyazılar için varsayılan | large-v3-turbo | Kabaca 8× hızda, large'a yakın doğruluk |
| Aksanlar, gürültü, üst üste binen konuşmacılar | large-v3 | Ekstra parametreler zamanını burada karşılar |
| Tayca veya Kantonca | large-v3 | Turbo'nun belgelenmiş zayıf noktası |
| Diğer dillere çeviri için kaynak | Karşılayabileceğin en doğru model | Her hata her dile yayılır |
Hesabı değiştiren satır, o son satır. Bir transkript sekiz çevirinin girdisi olduğunda, bir hata tek bir hata değildir — sekiz hatadır. Çok dilli iş akışı, kaynak transkriptin neden yavaş modeli ve dikkatli bir düzeltmeyi hak ettiğini anlatıyor.
Sablate'te Fast ve Balanced (tiny ve small) ücretsiz planda çalışır; Accurate ve Best ise tek seferlik 29 $'lık ödemeyle gelen Pro'nun bir parçasıdır — tam ayrıntı fiyatlandırma sayfasında. Hangi modeli çalıştırırsan çalıştır, çıktı aynı editöre düşer ve aynı formatlara aktarılır — SRT, VTT ve ASS — yani model seçimi neyi üretebildiğinle değil, sonradan ne kadar düzeltme yapacağınla ilgilidir.
Modelleri elle yönetmek istemiyorsan, çevrimdışı altyazı üreticilerinin karşılaştırması onları senin yerine seçip indiren masaüstü uygulamalarını listeliyor. Windows için MacWhisper alternatifleri ve TurboScribe alternatifleri aynı seçime uygulama tarafından bakıyor.
Bunu kendi görüntün üzerinde nasıl test edersin
Beş dakikalık doğru yöntem, bu da dahil olmak üzere yayımlanmış her benchmark'tan daha iyidir:
- 60 ile 120 saniye arasında, temsil edici bir klip al — en kötü mikrofonun, alışılmış aksanların, gerçek odan.
- Başka hiçbir şeyi değiştirmeden onu iki aday modelle transkript et.
- Önce eksiklere, sonra yazım hatalarına bak.
- Tek kelimelik altyazı satırlarını say. Bunlardan bir yığın varsa, işaret ettiği şey bölümleme mantığıdır, model değil.
- Ancak o zaman geçen gerçek zamanı karşılaştır ve o zamanın senin için ne değeri olduğuna karar ver.
Kendi malzemende her şeyi duyan model, senin için en iyi modeldir ve bu model her zaman en büyüğü olmak zorunda değildir.
Sık sorulan sorular
Whisper model boyutları nelerdir?
Altı tane; OpenAI'nin rakamlarına göre tiny (39 milyon parametre), base (74 milyon), small (244 milyon), medium (769 milyon), large (1,55 milyar) ve turbo (809 milyon). Tiny, base, small ve medium'un yalnızca İngilizce çalışan .en sürümleri de var. faster-whisper indirmesi olarak yaklaşık 78 MB, 148 MB, 486 MB, 1,53 GB, large-v3 için 3,09 GB ve turbo için 1,62 GB yer tutarlar.
Altyazı için en iyi Whisper modeli hangisi?
Çoğu görüntü için large-v3-turbo. Large-v3'ün 1,55 milyar parametresine karşı 809 milyon parametresi var, ama kod çözücüsü 32 katmandan 4'e budandığı için yaklaşık sekiz kat daha hızlı çalışıyor; doğruluğu da aradaki süre farkının kararı vermesine yetecek kadar yakın. Zor ses kayıtları için tam large-v3'ü, taslak aşamasında ise small'ı kullan.
Large-v3 her zaman medium veya turbo'dan daha doğru mudur?
Hayır. Çoğu malzemede öyledir, ama hepsinde değil. Kısa bir Türkçe klip üzerinde yaptığımız kendi testimizde large-v3, medium'un doğru şekilde yazıya döktüğü bazı konuşmaları atladı; bunların arasında ünlemler ve klibin açılış sözleri de vardı. Daha fazla parametrenin her zaman kazandığını varsaymak yerine, model seçimini kendi görüntün üzerinde test etmeye değer.
Her Whisper modeli ne kadar disk alanı ister?
Gerçekten indirilen CTranslate2 derlemelerinden ölçüldüğünde: tiny yaklaşık 78 MB, base yaklaşık 148 MB, small yaklaşık 486 MB, medium yaklaşık 1,53 GB, large-v3-turbo yaklaşık 1,62 GB ve large-v3 yaklaşık 3,09 GB'tır. Yalnızca İngilizce çalışan .en sürümleri de aynı boyuttadır. Transkripsiyon sırasındaki VRAM kullanımı da aşağı yukarı aynı sırayı izler; float16 veya int8 hassasiyeti bunu belirgin şekilde düşürür.
Large-v3 ile large-v3-turbo arasındaki fark nedir?
Turbo, kod çözme katmanları 32'den 4'e indirilmiş, budanmış ve ince ayarlanmış bir large-v3'tür. Bu da onu transkripsiyonda benzer kalitede ama çok daha hızlı yapar. İki uyarı var: çeviri verisi olmadan ince ayarlandığı için konuşma çevirisine uygun değildir ve bazı dillerde, özellikle Tayca ve Kantonca'da, large-v3'ten daha fazla kalite kaybeder.
Bir GPU, Whisper'ı gerçekten hızlandırır mı?
Evet, hem de ciddi ölçüde — bir NVIDIA GPU aynı makinenin CPU'suna kıyasla genellikle beş ile on kat daha hızlı transkript çıkarır. Bu fark hangi modelin pratik olduğunu değiştirecek kadar büyüktür: uzun bir kayıtta large-v3, CPU'da bir gecelik iş, orta seviye bir GPU'da ise bir kahve arası sürer.
Transkriptim neden tek kelimelik altyazılara bölünüyor?
Genellikle modelden değil, kelime zaman damgalarından kaynaklanır. Whisper, ardışık kelimeler arasında tam olarak sıfır saniyelik bir boşluk üretebilir; en büyük boşluğu arayan bir satır bölücü de bulacak gerçek bir boşluk bulamayınca her seferinde ilk noktadan böler, bunu da art arda tekrarlar. Sorun modelde değil; bölümleme mantığının bir eşitlik bozma kuralına ihtiyacı var.