Mozilla Zazaca Alpha — Zazacanın Açık Kaynak Text-to-Speech Modeli
Mozilla Zazaca Alpha, VoxCPM2 üzerine LoRA fine-tuning ile eğitilmiş, Zazaca (zza) konuşma sentezi modeli. Mozilla'nın açık kaynak Zazaca veri setleri kullanılarak eğitilmiştir. Alpha sürümü, modelin erken doğrulama aşamasında sunulmaktadır.
Henüz veri seti tamamlanmadığı için ALPHA sürüm olarak test amaçlı kullanılabilir. Veriseti büyüdükçe yeni ve tam sürümler yüklenecektir.
Özellik
Detay
Dil
Zazaca (zza)
Konuşucu
Çok konuşucu (Mozilla Zazaca veri setinden)
Mimari
VoxCPM2 + LoRA (r=32, α=32)
Eğitim verisi
~1.700 segment
Eğitim adımı
2.000
LoRA ağırlıkları
~70 MB (18,1M parametre, F32)
Audio sample rate
16 kHz (giriş) / 48 kHz (çıkış)
Karşılaştırmalı Örnekler
Aşağıda orijinal referans ses (Gerçek Konuşma) ile modelin ürettiği sentez (TTS) arasındaki farkları duyabilirsiniz:
#
Orijinal (Gerçek Konuşmacı)
Sentez (model çıktısı)
1
2
3
⚡ Hızlı Başlangıç
bash
1# 1. Bu repo'yu klonlayın2git clone https://huggingface.co/Anadilorg/Mozilla_Zazaca_Alpha
3cd Mozilla_Zazaca_Alpha
45# 2. Sanal ortam oluşturun6python -m venv venv
7source venv/bin/activate
89# 3. Gerekli paketleri yükleyin10pip install -r requirements.txt
1112# 4. Ses üretin (base model ilk seferde otomatik indirilir, ~4.6 GB)13python inference.py --text "[speaker:spk_tmp_001 language:zza] Pisînge merreyî dima şona"
Not: LoRA yüklemesi voxcpm paketinin kendi LoRA desteğiyle yapılır — peft gerekmez.
📖 Kullanım
Python API ile
python
1import json
2import numpy as np
3import soundfile as sf
4from voxcpm import VoxCPM
5from voxcpm.model.voxcpm import LoRAConfig
67# 1. LoRA konfigürasyonunu okuyun8withopen("lora_config.json")as f:9 lc = json.load(f)["lora_config"]10lora_cfg = LoRAConfig(**{k: v for k, v in lc.items()if k in LoRAConfig.model_fields})1112# 2. Base model + Mozilla Zazaca Alpha LoRA adapter'ını tek adımda yükleyin13model = VoxCPM.from_pretrained(14"openbmb/VoxCPM2",15 lora_config=lora_cfg,16 lora_weights_path="lora_weights.safetensors",17)1819# 3. Ses üretin — Zazaca metin20text ="[speaker:spk_tmp_001 language:zza] Ez zaf qefilîyaya, rojan ra rojê."21audio = model.generate(text=text, inference_timesteps=10, cfg_value=2.0)2223# 4. Kaydedin (çıkış 48 kHz)24sf.write("output.wav", np.asarray(audio).squeeze(),48000)25print("✅ Ses üretildi! output.wav dosyasına kaydedildi.")
Batch inference
python
1texts =[2"[speaker:spk_tmp_001 language:zza] Pisînge merreyî dima şona",3"[speaker:spk_tmp_001 language:zza] Ez zaf qefilîyaya, rojan ra rojê.",4]56for i, text inenumerate(texts):7 audio = model.generate(text=text, inference_timesteps=10, cfg_value=2.0)8 sf.write(f"output_{i}.wav", np.asarray(audio).squeeze(),48000)
Gradio ile tarayıcı demosu
bash
1pip install gradio
2python demo.py # http://localhost:78603python demo.py --share # public link
DiT katmanları: q_proj, k_proj, v_proj, o_proj (12 kat)
Projeksiyon katmanları: dahil değil (enable_proj: false)
Toplam: 384 tensör, 18.087.936 parametre (F32)
📦 Paket Yapısı
Mozilla_Zazaca_Alpha/
├── README.md # Bu dosya
├── model_card.md # HuggingFace model kartı
├── config.json # Model metadata
├── lora_config.json # LoRA hiperparametreler
├── lora_weights.safetensors # ~70MB LoRA ağırlıkları
├── requirements.txt # Gerekli Python paketleri
├── inference.py # Tek dosyada tam inference script
├── demo.py # Gradio demo (opsiyonel)
├── sample/ # Karşılaştırmalı örnekler (1a/1b, 2a/2b, 3a/3b)
└── LICENSE # MIT
📋 Gereksinimler
Paket
Versiyon
Python
>= 3.10
torch
>= 2.0
torchaudio
>= 2.0
voxcpm
>= 2.0
safetensors
>= 0.3
soundfile
>= 0.11
numpy
>= 1.24
Donanım
Disk: ~4.7 GB (base model + LoRA)
Bellek: float32 inference için ~9 GB; CUDA GPU'da bfloat16 ile daha az
GPU: CUDA önerilir. Apple Silicon (MPS) desteklenir; 16 GB birleşik bellekte çalışır ama swap nedeniyle çok yavaştır (≥24 GB önerilir). CPU çalışır fakat pratik değildir.
🌍 Dil Notu
Zazaca (ISO 639-3: zza), Karadeniz bölgesinde konuşulan bir Doğu Anadolu Türk lehçesidir. Bu model Mozilla'nın açık kaynak Zazaca veri setleri kullanılarak eğitilmiştir ve çok konuşucu modeli olarak sunulur.
📝 Lisans
Bu model MIT lisansı altında sunulmuştur. Detaylar için LICENSE dosyasına bakın.