Professor/kinyarwanda-tts-0.6b-full-finetuning
0174
π·πΌ Kinyarwanda Text-to-Speech (0.6B)
Developed by Team Echo
This model is a lightweight Kinyarwanda Text-to-Speech (TTS) generator, fine-tuned on the OuteTTS-0.6B architecture (based on Qwen-2.5-0.5B). It is optimized to preserve the tonal nuances and rhythm of Kinyarwanda while remaining extremely compact (~400 MB), making it ideal for mobile, edge, and low-resource deployments.
π Website: https://letusecho.com
π§ Audio Samples
π¦ Model Details
- Base Architecture: OuteTTS-0.6B (Qwen-2.5 / Qwen-3 derivative)
- Languages:
- Kinyarwanda (primary)
- English (supported)
- Context Length: 4096 tokens
- License: Apache License 2.0 (commercially usable)
- Formats:
- Safetensors (FP16): Best for research and GPU servers
- GGUF (Q4_K_M): Optimized for mobile and CPU deployment
- Approx. Model Size: ~400 MB
π Installation
Install the core OuteTTS library:
pip install outettsFor GGUF / mobile / CPU support, also install:
pip install llama-cpp-pythonπ» Usage β Full Model (GPU Recommended)
Best for server-side generation where quality is the priority.
import torch
from outetts import Interface, ModelConfig, GenerationConfig, SamplerConfig
MODEL_PATH = "Professor/kinyarwanda-tts-0.6b-full-finetuning"
config = ModelConfig(
model_path=MODEL_PATH,
tokenizer_path=MODEL_PATH,
dtype=torch.float16,
device="cuda" # Change to "cpu" if no GPU is available
)
interface = Interface(config=config)
# Sampling tuned for Qwen-based 0.6B models
sampler = SamplerConfig(
temperature=0.4,
repetition_penalty=1.1,
top_p=0.9
)
gen_config = GenerationConfig(
text="Ubuyobozi bwβInteko yβUmuco ishinzwe kubungabunga no guteza imbere Ururimi nβUmuco.",
sampler_config=sampler
)
print("π Generating audio...")
output = interface.generate(gen_config)
output.save("output_full.wav")π± Usage β Mobile / GGUF (Fast & Lightweight)
Optimized for Android, iOS, and standard CPU hardware.
Tip: Download kinyarwanda-0.6b-Q4_K_M.gguf locally for best performance.from outetts import Interface, ModelConfig, GenerationConfig, SamplerConfig, Backend
model_config = ModelConfig(
model_path="kinyarwanda-0.6b-Q4_K_M.gguf",
tokenizer_path="Professor/kinyarwanda-tts-0.6b-full-finetuning",
backend=Backend.LLAMACPP,
dtype="f16"
)
interface = Interface(model_config)
sampler = SamplerConfig(
temperature=0.4, # Ideal for this model size
repetition_penalty=1.1
)
gen_config = GenerationConfig(
text="Muraho, amakuru ki? Nishimiye kubona iyi modeli ikora.",
sampler_config=sampler
)
print("π Generating mobile audio...")
output = interface.generate(gen_config)
output.save("output_mobile.wav")ποΈ Voice Cloning (Zero-Shot)
This model supports zero-shot voice cloning using a short reference sample (β10β15 seconds).
speaker = interface.create_speaker("my_voice_sample.wav")
gen_config = GenerationConfig(
text="Ndashaka kuvuga nkawe.",
sampler_config=sampler,
speaker=speaker
)
interface.generate(gen_config).save("cloned_output.wav")π€ Credits & License
- Created by: Team Echo
- Base Framework: OuteTTS (OuteAI)
- License: Apache License 2.0
