تشخیص گفتار (ASR) فارسی بهصورت استریمینگ و On-device تا قبل از این یه حفره بزرگ توی کامیونیتی بود... رضا سیار با انتشار کالکشن Shenava 1.0 عملاً یه زیرساخت سنگین و باکیفیت رو بهصورت اوپنسورس در اختیار همه گذاشته. تمرکز اصلی پروژه روی Latency پایین و اجرای آفلاین روی سختافزارهای ضعیفه که برای توسعهدهندههای فارسیزبان یه ابزار حیاتی محسوب میشه.
مدلهای این مجموعه از نسخه Koochik (۱۱۴ میلیون پارامتر) که نقش Teacher رو داره، تا نسخه فوقبهینه Rizeh-Pizeh (۶.۹ میلیون پارامتر) رو شامل میشن... مدل Koochik با وجود ابعاد کوچیکش، توی بنچمارکهای FLEURS-fa و Golden-6669 عملکردی در سطح مدلهای بسیار بزرگتر نشون داده. این یعنی میشه روی بردهای ارزانقیمت مثل ESP32-S3 یا اپلیکیشنهای موبایل قدیمی، پردازش صوت لایو داشت بدون اینکه نیازی به کارت گرافیکهای گرونقیمت یا اینترنت باشه.
معماری پروژه بر پایه FastConformer هست و تمام خروجیهای استاندارد اینفرنس توسط رضا آماده شده... فایلهای ONNX fp16، نسخههای CoreML برای iOS، فرمتهای مخصوص Sherpa-ONNX و حتی نسخه Native Rust با استفاده از Tract توی کالکشن موجوده. عملاً تمام مراحل سختِ تبدیل مدل و بهینهسازی برای پلتفرمهای مختلف انجام شده و مدلها آماده استفاده توی Production هستن.
خط لوله داده (Data Pipeline) این پروژه هم به همون اندازه مدلها فنی و دقیقه... حدود ۴ میلیون سطر دیتای صوتی که با تکنیکهای Active Learning، اصلاح دستی و فیلتر کردن نویزها تمیز شدن. وجود دیتاستهای اختصاصی مثل Golha برای کلمات ادبی و Ganjoor برای دکلمه، باعث شده مدل توی درک لحنهای مختلف فارسی منعطف باشه و نرخ خطای کلمات (WER) رو بهشدت پایین بیاره.
ابزارهای جانبی مثل ShenavaSanj هم برای امتیازدهی به اهمیت کلمات توی جمله ارائه شده که برای محاسبه Semantic WER کاربرد داره... این کالکشن یه نمونه موفق از Knowledge Distillation و مهندسی دیتاست برای زبانهای کممنبع مثل فارسیه که رضا سیار بدون هیچ منتی برای کامیونیتی جمعآوری و منتشر کرده.
https://huggingface.co/collections/Reza2kn/shenava-10-open-streaming-persian-asr-and-captioning
🛠 Join @LLMEngineers Community
Post #411
1.36K