Reza2kn commited on
Commit
cdd7e33
·
verified ·
1 Parent(s): 980beb1

Add extensive bilingual English-Persian Shenava-1 card

Browse files

Document purpose, contents, usage, provenance, evaluation, limitations, responsible use, reproducibility, citation, and Apache-2.0 licensing in English and Persian.

Files changed (1) hide show
  1. README.md +168 -0
README.md CHANGED
@@ -15,6 +15,173 @@ tags:
15
  - ctc
16
  ---
17
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  # VisualEars PhaseB Streaming CoreML FP16
19
 
20
  CoreML MLProgram FP16 streaming split for `Reza2kn/visualears-fastconformer-fa-depoisoned-phaseB`.
@@ -47,3 +214,4 @@ Validation so far:
47
  - Mean frame argmax match rate on the 269 gate: `99.946%`.
48
 
49
  Implementation note: the CoreML encoder uses a fixed streaming-contract shim for CoreMLTools conversion. It keeps the cache-bearing streaming interface but replaces NeMo runtime shape-to-Python-int slices with constants for this exact contract.
 
 
15
  - ctc
16
  ---
17
 
18
+ # 🎙️ visualears-fastconformer-fa-depoisoned-phaseB-streaming-coreml-fp16
19
+
20
+ > **English + فارسی** · Part of [Shenava 1.0](https://huggingface.co/collections/Reza2kn/shenava-10-open-streaming-persian-asr-and-captioning) · [Project hub](https://github.com/Reza2kn/shenava-1) · [SLT paper submission](https://openreview.net/forum?id=QTa6ax9PU3)
21
+
22
+ ## 🌟 At a glance | معرفی سریع
23
+
24
+ | | English | فارسی |
25
+ |---|---|---|
26
+ | 🎯 Role | De-poisoned Phase B streaming CoreML export. | مدل جریانی فاز B پالایش‌شدهٔ ویژوال‌ایرز؛ این مخزن یکی از مصنوعات رسمی خانوادهٔ Shenava-1 است. |
27
+ | 🧠 Family | VisualEars de-poisoned Phase-B streaming model | مدل جریانی فاز B پالایش‌شدهٔ ویژوال‌ایرز |
28
+ | 📦 Format | Core ML FP16 deployment export | خروجی FP16 برای Core ML |
29
+ | 📐 Scale | model size documented by the artifact files | اندازه: model size documented by the artifact files |
30
+ | 📥 Input | mono Persian speech resampled to 16 kHz | گفتار تک‌کانالهٔ فارسی با نرخ نمونه‌برداری ۱۶ کیلوهرتز |
31
+ | 📤 Output | Persian transcription; normalization and ITN belong in the display layer | رونویسی فارسی؛ نرمال‌سازی و تبدیل عدد گفتاری در لایهٔ نمایش انجام می‌شود |
32
+ | ⚖️ License | Apache License 2.0 | مجوز Apache 2.0 |
33
+
34
+ ## 🇬🇧 English documentation
35
+
36
+ ### 🧭 Overview
37
+
38
+ De-poisoned Phase B streaming CoreML export. This repository is an official Shenava-1 release artifact, not an isolated checkpoint. It belongs to a Persian-first stack covering training data, streaming ASR, semantic evaluation, on-device exports, captioning applications, and reproducible benchmarks. Use the collection link above to locate sibling model sizes, deployment formats, datasets, and evaluation assets.
39
+
40
+ The artifact is optimized for Persian speech and the conventions used by the Shenava/VisualEars pipeline. A model file alone is not the entire inference system: audio preparation, tokenizer assets, streaming state, decoding, Persian text normalization, and inverse text normalization can materially affect observed output.
41
+
42
+ ### ✅ Intended uses
43
+
44
+ - Persian ASR research, benchmarking, and reproducible comparison inside the Shenava-1 evaluation protocol.
45
+ - Offline or streaming transcription when the selected runtime and graph support that mode.
46
+ - On-device captioning, accessibility prototypes, and Persian speech interfaces.
47
+ - Conversion or runtime integration work that preserves the source model’s tokenizer, decoding assumptions, and numerical checks.
48
+
49
+ ### 🚫 Out-of-scope or unsafe uses
50
+
51
+ - Do not treat transcripts as guaranteed verbatim records for legal, medical, emergency, or other high-stakes decisions.
52
+ - Do not infer identity, health, ethnicity, intent, or other sensitive traits from speech or model errors.
53
+ - Do not compare formats using different text normalization, test subsets, or decoding settings and present the result as model quality.
54
+ - Do not assume robustness to every Persian accent, code-switching pattern, recording channel, or adversarial acoustic condition.
55
+
56
+ ### 📁 Repository contents
57
+
58
+ This snapshot contains **18 files** totaling approximately **230.07 MB**. Common file groups: `.json` × 7, `.mlmodel` × 3, `.bin` × 3, `no extension` × 2, `.jsonl` × 2, `.md` × 1.
59
+
60
+ Largest or representative artifacts:
61
+
62
+ - `streaming_encoder_ctc_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
63
+ - `rnnt_predictor_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
64
+ - `rnnt_joint_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
65
+ - `streaming_encoder_ctc_streaming_fp16.mlpackage/Data/com.apple.CoreML/model.mlmodel`
66
+ - `validation/coreml_streaming_ctc_269_rows.jsonl`
67
+
68
+ The repository card and `LICENSE` are part of the release. Runtime-specific configuration, tokenizer, vocabulary, metadata, and state files should be kept beside the main weights when present.
69
+
70
+ ### 🚀 Download and integration
71
+
72
+ ```python
73
+ from huggingface_hub import snapshot_download
74
+
75
+ local_dir = snapshot_download(
76
+ repo_id="Reza2kn/visualears-fastconformer-fa-depoisoned-phaseB-streaming-coreml-fp16",
77
+ local_dir="./visualears-fastconformer-fa-depoisoned-phaseB-streaming-coreml-fp16",
78
+ )
79
+ print(local_dir)
80
+ ```
81
+
82
+ Use the runtime named by the artifact format. Inspect the exported graph signature before binding input and output tensors; deployment exports may expose cache/state tensors in addition to acoustic features.
83
+
84
+ For NeMo checkpoints, restore through `nemo.collections.asr.models.ASRModel.restore_from(...)` rather than assuming a CTC-only class. For converted artifacts, follow the graph metadata and the runtime-specific notes retained later in this card. Validate one known clip against the source checkpoint before shipping a conversion.
85
+
86
+ ### 📏 Evaluation
87
+
88
+ Report at least WER and CER using the same Persian normalization rules, plus S³ when semantic importance matters. Shenava’s public [Triple Threat leaderboard](https://huggingface.co/spaces/Reza2kn/PersianASR-TrippleThreat) combines the Golden6669 and FLEURS-fa splits. Record the exact repository revision, decoder settings, chunk/context configuration, precision, device, and normalization code.
89
+
90
+ Deployment exports should be checked for numerical and transcription parity against their parent repository, [ `Reza2kn/visualears-fastconformer-fa-full-ab` ](https://huggingface.co/Reza2kn/visualears-fastconformer-fa-full-ab). Runtime speed is hardware-specific; publish latency, real-time factor, warm-up policy, thread count, and audio duration together.
91
+
92
+ ### ⚠️ Limitations and responsible use
93
+
94
+ ASR quality varies with accent, age, speaking style, background noise, distance, clipping, reverberation, telephony bandwidth, overlapping speech, and code-switching. Persian orthography also permits multiple acceptable written forms. WER or CER can therefore penalize a semantically correct alternative, while a low aggregate score can still hide loss of a critical word. Review meaning-critical outputs and expose uncertainty in accessibility-facing products.
95
+
96
+ ### 🔁 Reproducibility checklist
97
+
98
+ 1. Pin the Hub revision and runtime/library versions.
99
+ 2. Resample audio deterministically and document channel mixing.
100
+ 3. Keep tokenizer and decoding assets from this repository together.
101
+ 4. Record streaming chunk, left/right context, cache reset, and endpointing behavior.
102
+ 5. Apply one documented Persian normalization/ITN pipeline to references and hypotheses.
103
+ 6. Publish failed cases and condition-level results, not only a single average.
104
+
105
+ ## 🇮🇷 مستندات فارسی
106
+
107
+ ### 🧭 معرفی
108
+
109
+ مدل جریانی فاز B پالایش‌شدهٔ ویژوال‌ایرز است. این مخزن یک مصنوع رسمی از انتشار Shenava-1 است و باید همراه با داده‌های آموزشی، توکنایزر، روش رمزگشایی، نرمال‌سازی فارسی و تنظیمات اجرای جریانی دیده شود. پیوند مجموعه در بالای صفحه، نسخه‌های هم‌خانواده، قالب‌های استقرار، داده‌ها و معیارهای ارزیابی را یک‌جا نشان می‌دهد.
110
+
111
+ هدف پروژه ارائهٔ زیرساخت باز و قابل بازتولید برای بازشناسی گفتار و زیرنویس فارسی است. نتیجهٔ نهایی فقط به وزن مدل وابسته نیست؛ نرخ نمونه‌برداری، کانال صوت، وضعیت کش، روش رمزگشایی، تبدیل اعداد گفتاری و یکسان‌سازی نیم‌فاصله نیز بر خروجی اثر دارند.
112
+
113
+ ### ✅ کاربردهای پیشنهادی
114
+
115
+ - پژوهش، بنچمارک و مقایسهٔ منصفانهٔ ASR فارسی با پروتکل یکسان.
116
+ - رونویسی آفلاین یا جریانی، در صورتی که قالب و زمان‌اجرای انتخابی از آن پشتیبانی کند.
117
+ - زیرنویس روی دستگاه، ابزارهای دسترس‌پذیری و رابط‌های گفتاری فارسی.
118
+ - تبدیل مدل و یکپارچه‌سازی با زمان‌اجراهای مختلف همراه با آزمون برابری خروجی.
119
+
120
+ ### 🚫 کاربردهای نامناسب
121
+
122
+ - خروجی را در تصمیم‌های پزشکی، حقوقی، اضطراری یا پرخطر به‌عنوان سند قطعی به کار نبرید.
123
+ - از خطا یا صدای کاربر برای استنباط هویت، سلامت، قومیت، نیت یا ویژگی حساس استفاده نکنید.
124
+ - نتایجی را که با زیرمجموعه، نرمال‌سازی یا رمزگشایی متفاوت ساخته شده‌اند مقایسهٔ مستقیم ننامید.
125
+ - پوشش کامل همهٔ لهجه‌ها، گفتار آمیخته، کانال‌ها و شرایط صوتی را فرض نکنید.
126
+
127
+ ### 📁 محتوای مخزن
128
+
129
+ این نسخه شامل **18 فایل** با حجم تقریبی **230.07 MB** است. گروه‌های رایج فایل: `.json` × 7, `.mlmodel` × 3, `.bin` × 3, `no extension` × 2, `.jsonl` × 2, `.md` × 1.
130
+
131
+ فایل‌های شاخص:
132
+
133
+ - `streaming_encoder_ctc_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
134
+ - `rnnt_predictor_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
135
+ - `rnnt_joint_streaming_fp16.mlpackage/Data/com.apple.CoreML/weights/weight.bin`
136
+ - `streaming_encoder_ctc_streaming_fp16.mlpackage/Data/com.apple.CoreML/model.mlmodel`
137
+ - `validation/coreml_streaming_ctc_269_rows.jsonl`
138
+
139
+ فایل‌های توکنایزر، واژگان، پیکربندی، وضعیت جریانی و فراداده را در صورت وجود کنار وزن اصلی نگه دارید.
140
+
141
+ ### 🚀 دریافت و استفاده
142
+
143
+ ابتدا snapshot کامل مخزن را دریافت کنید، سپس از زمان‌اجرای متن��سب با قالب استفاده کنید. پیش از اتصال ورودی و خروجی، امضای گراف را بررسی کنید؛ خروجی‌های جریانی ممکن است علاوه بر ویژگی صوتی، تنسورهای وضعیت و کش داشته باشند.
144
+
145
+ برای چک‌پوینت NeMo از `ASRModel.restore_from(...)` استفاده کنید و مدل را صرفاً CTC فرض نکنید. برای خروجی‌های تبدیل‌شده، یک کلیپ مرجع را با مدل مبدأ مقایسه کنید و سپس استقرار را انجام دهید.
146
+
147
+ ### 📏 ارزیابی
148
+
149
+ حداقل WER و CER را با نرمال‌سازی فارسی یکسان گزارش کنید و در سناریوهای حساس به معنا، S³ را نیز بیاورید. در [جدول Triple Threat](https://huggingface.co/spaces/Reza2kn/PersianASR-TrippleThreat) دو بخش Golden6669 و FLEURS-fa با هم سنجیده می‌شوند. شناسهٔ دقیق نسخه، تنظیمات دیکودر، کانتکست، دقت عددی، سخت‌افزار و کد نرمال‌سازی را ثبت کنید.
150
+
151
+ ### ⚠️ محدودیت‌ها و استفادهٔ مسئولانه
152
+
153
+ لهجه، سن، سبک گفتار، نویز، فاصله، کلیپ‌شدن، پژواک، کانال تلفنی، هم‌پوشانی گویندگان و کدسوئیچینگ می‌توانند کیفیت را تغییر دهند. چند نگارش فارسی ممکن است از نظر معنایی درست باشند، اما WER/CER یکی را خطا حساب کند. در محصولات دسترس‌پذیری، واژه‌های کلیدی را جداگانه بازبینی و عدم قطعیت را به کاربر نشان دهید.
154
+
155
+ ### 🔁 چک‌لیست بازتولید
156
+
157
+ ۱. نسخهٔ دقیق مخزن و کتابخانه‌ها را ثابت کنید. ۲. تبدیل نرخ نمونه و کانال را مستند کنید. ۳. توکنایزر و دارایی‌های رمزگشایی همین مخزن را نگه دارید. ۴. اندازهٔ قطعه، کانتکست، بازنشانی کش و endpointing را ثبت کنید. ۵. یک خط لولهٔ نرمال‌سازی/ITN مشترک به مرجع و خروجی اعمال کنید. ۶. خطاهای نمونه‌ای و نتایج هر شرایط را در کنار میانگین منتشر کنید.
158
+
159
+ ## 📚 Citation, links, and license | استناد، پیوندها و مجوز
160
+
161
+ - 🤗 [Shenava-1 collection](https://huggingface.co/collections/Reza2kn/shenava-10-open-streaming-persian-asr-and-captioning)
162
+ - 🧰 [Project repository](https://github.com/Reza2kn/shenava-1)
163
+ - 📄 [SLT paper submission](https://openreview.net/forum?id=QTa6ax9PU3)
164
+ - 📊 [Persian ASR Triple Threat](https://huggingface.co/spaces/Reza2kn/PersianASR-TrippleThreat)
165
+
166
+ ```bibtex
167
+ @misc{shenava1_visualears_fastconformer_fa_depoisoned_phaseb_streaming_coreml_fp16,
168
+ title = {visualears-fastconformer-fa-depoisoned-phaseB-streaming-coreml-fp16: a Shenava-1 Persian speech artifact},
169
+ author = {Reza2kn},
170
+ year = {2026},
171
+ url = {https://huggingface.co/Reza2kn/visualears-fastconformer-fa-depoisoned-phaseB-streaming-coreml-fp16}
172
+ }
173
+ ```
174
+
175
+ Released under the **Apache License 2.0**. این مخزن با **مجوز Apache 2.0** منتشر شده است.
176
+
177
+ ---
178
+
179
+ ## 📎 Retained technical notes | یادداشت‌های فنی پیشین
180
+
181
+ The pre-existing technical card is retained below for revision-specific commands, measurements, and artifact details. The bilingual sections above define the common Shenava-1 documentation contract.
182
+
183
+ یادداشت فنی قبلی برای فرمان‌ها، اندازه‌گیری‌ها و جزئیات همان نسخه در ادامه حفظ شده است. بخش‌های دوزبانهٔ بالا قرارداد مستندسازی مشترک Shenava-1 را تعریف می‌کنند.
184
+
185
  # VisualEars PhaseB Streaming CoreML FP16
186
 
187
  CoreML MLProgram FP16 streaming split for `Reza2kn/visualears-fastconformer-fa-depoisoned-phaseB`.
 
214
  - Mean frame argmax match rate on the 269 gate: `99.946%`.
215
 
216
  Implementation note: the CoreML encoder uses a fixed streaming-contract shim for CoreMLTools conversion. It keeps the cache-bearing streaming interface but replaces NeMo runtime shape-to-Python-int slices with constants for this exact contract.
217
+