--- language: - fa license: apache-2.0 pipeline_tag: automatic-speech-recognition base_model: facebook/wav2vec2-xls-r-300m library_name: transformers model_type: wav2vec2-ctc tags: - audio - automatic-speech-recognition - persian - wav2vec2 - repr1 - avasanj pretty_name: AvaSanj-v1-audio8437 --- # AvaSanj-v1 Persian **repr1** automatic speech recognizer (AvaSanj v1) fine-tuned from `facebook/wav2vec2-xls-r-300m` on **8,437 approved Persian audio clips**. Outputs phonemes in the shared **repr1** alphabet (`A C Q S Z …` + lowercase IPA-style phonemes) — the same canonical alphabet used by the **Negara** G2P models, making this model a drop-in listener for grapheme-to-phoneme adjudication. ## Provenance - **Original model:** `facebook/wav2vec2-xls-r-300m` (Apache-2.0), fine-tuned for CTC. - **Data:** 8,437 approved (lattice-supported) Persian clips; target labels are the `audio_target_phonemes_vnext` repr1 label field. - **Role:** used as the **OOF (out-of-fold) listener** in the AvaSanj data pipeline — each fold scores only voices it never trained on — to arbitrate G2P disagreements at margin `≥ 0.1` (~96.3% precision / 95.9% recall on the corruption gate). - **Selection:** best step **800**, best validation CER **0.0479**. ## Model - Architecture: Wav2Vec2ForCTC, base `wav2vec2-xls-r-300m` (~300 M params). - Vocabulary: repr1 (see `vocabulary.json`) — 30-token inventory incl. `` + `" "`. - Full eval: `report.json`. ## Usage ```python from transformers import Wav2Vec2ForCTC model = Wav2Vec2ForCTC.from_pretrained("Reza2kn/AvaSanj-v1-audio8437") ``` Note: load with the local `vocabulary.json` for the repr1 tokenizer mapping. ## Files - `config.json`, `model.safetensors` — HF wav2vec2 checkpoint (`best-model/`) - `vocabulary.json` — repr1 vocab - `report.json` — full eval report (baseline, corruption gate, OOF fold stats)