Makine Öğrenmesi·3 dk okuma·

Tamamen MacBook Üzerinde Çalışan Bir Ses Klonlama Motoru Bulmak İçin Üç Karşılaştırma Testi

Paylaş
Tamamen MacBook Üzerinde Çalışan Bir Ses Klonlama Motoru Bulmak İçin Üç Karşılaştırma Testi

Disleksi olan çocukların okuma ödevlerini kelime kelime vurgulanan sesli anlatımlara dönüştüren yerel bir Mac uygulaması geliştirmede veri gizliliği en temel önceliktir. Bir çocuğun ses kayıtlarının ve okuma materyallerinin cihazdan asla çıkmaması; bulut çağrısı, abonelik veya telemetri olmadan tüm sürecin doğrudan Apple Silicon üzerinde çalışması amaçlanmıştır. Bu doğrultuda yerel bir metin-konuşma (TTS) motorunun sağlaması gereken dört kritik kriter bulunmaktadır:

  • Referans Süresi: Yaklaşık 6 saniyelik referans sesten ses klonlayabilme
  • Çalışma Hızı: Temel M1 Pro işlemcide gerçek zamanlı veya gerçek zamanlıya yakın çalışma
  • Lisanslama: Ticari kullanıma yasal olarak uygun olma
  • Model Boyutu: Masaüstü uygulaması içinde paketlenip dağıtılabilecek kadar küçük olma

Lisans Mayın Tarlası

Herhangi bir performans kıyaslamasına başlamadan önce, popüler sıfır atışlı (zero-shot) ses klonlama modellerinin çoğu ticari engellere takılmaktadır:

  • F5-TTS: CC-BY-NC lisansı nedeniyle ticari ürünlerde kullanılamaz, elendi.
  • XTTS-v2 (Coqui): CPML lisansı sebebiyle elendi.
  • Fish-Speech: Araştırma lisansı taşıdığından elendi.

Geriye Apache/MIT ailesinden Kokoro-82M, ZipVoice, Chatterbox ve Qwen3-TTS kaldı. Testler MacBook Pro M1 Pro (32GB) üzerinde, Peter Rabbit eserinin yaklaşık 40 saniyelik metnini okuyan 60 saniyelik LibriVox referans sesiyle yapıldı.

1. Karşılaştırma: Bariz Adaylar

  • Chatterbox: 40 saniyelik ses için 808 saniye hesaplama süresi (RTF 20) harcadı. MPS üzerinde son kullanıcı uygulaması için aşırı yavaş kalarak elendi.
  • ZipVoice (123M): Model bellekte tutulduğunda RTF 0.6–1.5 aralığıyla gerçek zamanlıya yakın çalıştı. Ancak üç teknik pürüz içeriyordu:
    • Birebir Eşleşme Zorunluluğu: Referans ses ile metin tam uyuşmalıdır. 6 saniyelik sese 6 saniyelik transkript kusursuz çalışırken; uyumsuzluk durumunda sonsuz tekrar döngüsü veya kesik parçalar oluşmaktadır.
    • MPS Toplu İşleme (Batch) Hatası: Cümle bazında çalışan girdiler toplu modda padding hatası nedeniyle tekrara düştü; üretim hattında tek tek çağrılması gerekti.
    • Dağıtım Eksikliği: PyPI'daki zipvoice paketinin boş olması sebebiyle doğrudan Git deposundan kurulması ve bildirilmemiş bağımlılıkların manuel çözülmesi gerekti.

2. Karşılaştırma: PyTorch Üzerinde Qwen3-TTS-0.6B

CUDA üzerinde 0.86 RTF elde edildiği belirtilen model, M1 Pro ve resmi qwen-tts paketiyle yerelde çalışamaz durumdaydı:

  • MPS + bf16: Katman belleği tahsis edilemedi (Placeholder storage has not been allocated) hatasıyla çöktü.
  • CPU + fp32: Yedi dakika sürmesine rağmen hiçbir çıktı vermedi.
  • MPS + fp32: Yaklaşık RTF 9 ile çalıştı; 10 kelimelik bir cümle 6 dakika sürdü (ZipVoice'tan 15 kat yavaş).
  • ICL Klonlama Hassasiyeti: Model referans ses kalitesine aşırı duyarlıdır; kırpılmış klip ile tam metin eşleşmediğinde token sınırına kadar anlamsız gürültü ve sessizlik üretti.

Yazılım Geliştirme ve Öğrenme Çıkarımları

  • Ortam Farklılıkları: CUDA tabanlı kıyaslama metrikleri Apple Silicon (MPS) mimarisine doğrudan yansımaz; yerel inference süreçlerinde her hedef donanım bağımsız olarak doğrulanmalıdır.
  • Mimari Kararlılık: Model kütüphanelerindeki padding ve toplu işleme eksikliklerine karşı üretim ortamlarında tekil ve sıralı yürütme tercih edilmelidir.

Orijinal kaynağa buradan ulaşabilirsiniz.

Paylaş

Bu konuyu daha derinlemesine öğrenmek ister misin?

Edumints'teki ücretsiz kursları incele ve bugün başla.

Kurslara Göz At →