Downloads · 30 days
36
20% of all-time downloads
KEYHAN-A/aava-tts-persian
aava-tts-persian is a text-to-speech model from KEYHAN-A. Use it when you need text read aloud. It is set up for peft. The card lists the license as apache-2.0.
<p align="center" <img src="assets/aava-banner.svg" alt="Aava — Persian speech, engineered." width="100%" </p
Downloads · 30 days
36
20% of all-time downloads
All-time downloads
182
Public
Repo size
1.8 GB
Likes
2
Public
Click a slice to open those files.
.safetensors1.7 GB · 98%
From the Hugging Face model README
Persian speech synthesis adapter for Orpheus 3B, trained from nearly 2,500 hours of Persian source audio.
آوا یک مدل تبدیل متن فارسی به گفتار است که بر پایهٔ Orpheus 3B تنظیم شده است.
This repository contains the PEFT/LoRA weights. For a self-contained Transformers model, use Aava 3B.
| Direct base | unsloth/orpheus-3b-0.1-ft-unsloth-bnb-4bit |
| Method | LoRA, rank 128, alpha 256, dropout 0.05 |
| Target modules | attention, MLP projections, embeddings |
| Context | 4,096 tokens |
| Audio codec | SNAC 24 kHz |
| Language | Persian (fa) |
| Adapter storage | ~1.77 GB |
import torch
from peft import PeftModel
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="unsloth/orpheus-3b-0.1-ft-unsloth-bnb-4bit",
max_seq_length=4096,
dtype=torch.bfloat16,
load_in_4bit=True,
)
model = PeftModel.from_pretrained(model, "KEYHAN-A/aava-tts-persian")
model.eval()
Generation produces Orpheus audio tokens that must be redistributed and decoded with SNAC. The complete reference implementation is in Aava Refinement.
| Setting | Value |
|---|---|
| Training records | 492,596 |
| Tokenized corpus | ~1,905.3 hours |
| Epochs / steps | 3 / 184,725 |
| Effective batch | 8 |
| Learning rate | 1.5e-4 |
| Scheduler | cosine with restarts |
| Optimizer | AdamW 8-bit |
| Precision | bfloat16 |
| Hardware | RTX 3090 24 GB |
| Training time | ~11 days |
| Reported eval loss | 4.2045 |
The often-cited ~2,400-hour number is the raw acquisition duration, not the duration of the refined token corpus.
Training used 547,328 multi-source, multi-speaker Persian records under one
conditioning label, aava.
The reported evaluation loss is an internal training metric. A post-training audit found exact transcript duplication across the original sequential splits, so it must not be interpreted as a clean generalization benchmark.
The adapter weights are released under Apache-2.0, following the direct Orpheus/Unsloth base. Orpheus is Apache-2.0 and SNAC is MIT licensed. No endorsement by the upstream projects is implied.
@misc{aava_tts_2026,
title = {Aava TTS: Persian Orpheus 3B Adapter},
author = {{KEYHAN-A}},
year = {2026},
version = {1.0.0},
url = {https://huggingface.co/KEYHAN-A/aava-tts-persian}
}