YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
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ıç
# 1. Bu repo'yu klonlayın
git clone https://huggingface.co/Anadilorg/Mozilla_Zazaca_Alpha
cd Mozilla_Zazaca_Alpha
# 2. Sanal ortam oluşturun
python -m venv venv
source venv/bin/activate
# 3. Gerekli paketleri yükleyin
pip install -r requirements.txt
# 4. Ses üretin (base model ilk seferde otomatik indirilir, ~4.6 GB)
python inference.py --text "[speaker:spk_tmp_001 language:zza] Pisînge merreyî dima şona"
Not: LoRA yüklemesi
voxcpmpaketinin kendi LoRA desteğiyle yapılır —peftgerekmez.
📖 Kullanım
Python API ile
import json
import numpy as np
import soundfile as sf
from voxcpm import VoxCPM
from voxcpm.model.voxcpm import LoRAConfig
# 1. LoRA konfigürasyonunu okuyun
with open("lora_config.json") as f:
lc = json.load(f)["lora_config"]
lora_cfg = LoRAConfig(**{k: v for k, v in lc.items() if k in LoRAConfig.model_fields})
# 2. Base model + Mozilla Zazaca Alpha LoRA adapter'ını tek adımda yükleyin
model = VoxCPM.from_pretrained(
"openbmb/VoxCPM2",
lora_config=lora_cfg,
lora_weights_path="lora_weights.safetensors",
)
# 3. Ses üretin — Zazaca metin
text = "[speaker:spk_tmp_001 language:zza] Ez zaf qefilîyaya, rojan ra rojê."
audio = model.generate(text=text, inference_timesteps=10, cfg_value=2.0)
# 4. Kaydedin (çıkış 48 kHz)
sf.write("output.wav", np.asarray(audio).squeeze(), 48000)
print("✅ Ses üretildi! output.wav dosyasına kaydedildi.")
Batch inference
texts = [
"[speaker:spk_tmp_001 language:zza] Pisînge merreyî dima şona",
"[speaker:spk_tmp_001 language:zza] Ez zaf qefilîyaya, rojan ra rojê.",
]
for i, text in enumerate(texts):
audio = model.generate(text=text, inference_timesteps=10, cfg_value=2.0)
sf.write(f"output_{i}.wav", np.asarray(audio).squeeze(), 48000)
Gradio ile tarayıcı demosu
pip install gradio
python demo.py # http://localhost:7860
python demo.py --share # public link
Command Line
python inference.py \
--text "[speaker:spk_tmp_001 language:zza] Xelaǩaoba, manebrape!" \
--output my_voice.wav \
--base-model openbmb/VoxCPM2
🏗️ Model Detayları
VoxCPM2 Base Model
- LM: 28 kat, 2048 hidden dim, 16 attention heads, KV=2, vocab=73448
- RoPE: LongRoPE (32768 max position)
- DiT: 12 kat, 1024 hidden dim, CFM solver (Euler, log-norm, cfg_rate=2.0)
- AudioVAE: 16kHz → 48kHz, 64-dim latent
- Patch size: 4, feat_dim: 64
LoRA Adapter (Mozilla Zazaca Alpha)
- Rank (r): 32
- Alpha (α): 32
- Dropout: 0.0
- LM katmanları: q_proj, k_proj, v_proj, o_proj (base LM 28 kat + residual LM 8 kat)
- 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.
🔗 Kaynaklar
💬 Sorun Bildir
Sorunlarınızı veya önerilerinizi AnadilOrg[@]gmail.com
- Downloads last month
- 44