Mano200600's picture
Update README.md
89cb194 verified
|
Raw
History Blame Contribute Delete
5.11 kB
metadata
language:
  - ar
license: mit
library_name: ctranslate2
pipeline_tag: automatic-speech-recognition
tags:
  - faster-whisper
  - ctranslate2
  - whisper
  - arabic
  - egyptian
  - asr
  - speech-to-text
base_model: MAdel121/whisper-small-egyptian-arabic
datasets:
  - MAdel121/arabic-egy-cleaned
metrics:
  - wer
  - cer
model-index:
  - name: faster-whisper-small-egyptian-ar
    results:
      - task:
          type: automatic-speech-recognition
          name: Speech Recognition
        dataset:
          name: MAdel121/arabic-egy-cleaned (Test Split)
          type: MAdel121/arabic-egy-cleaned
          config: default
          split: test
        metrics:
          - type: wer
            value: 22.687923567389824
            name: Test WER
          - type: cer
            value: 16.69961390157474
            name: Test CER

Whisper Small Egyptian Arabic (Faster-Whisper)

تخيل إنك بتعمل تطبيق ويب خفيف (Web App) أو برنامج بيشتغل على أجهزة إمكانياتها محدودة، ومحتاج تفهم كلام مصري عامي بسرعة ودقة من غير ما تستهلك موارد الجهاز. الموديل ده متصمم مخصوص عشان يحل المشكلة دي.

دي نسخة متعدلة من موديل Whisper Small، ومتحولة لصيغة Faster-Whisper (CTranslate2) (محرك تشغيل سريع وخفيف). الموديل ده بيتميز بدقة عالية جداً في فهم اللهجة المصرية العامية، وفي نفس الوقت سرعة استجابته ممتازة.

سياق المشروع (Context)

الهدف الأساسي من المشروع ده إننا نوفر STT Backend (نظام خلفي لتحويل الصوت لنص - Speech-To-Text) خفيف ومستقر لمشاريع الـ Portable WebUI (واجهات الويب المحمولة اللي بتشتغل من غير تسطيب معقد). ده بيسمحلك تشغله على أجهزة إمكانياتها ضعيفة سواء على الـ CPU (المعالج الأساسي) أو الـ GPU (كارت الشاشة) من غير ما تضحي بدقة فهم اللهجة.

سلسلة التطوير (Lineage)

  • Base Architecture (البنية الأساسية للموديل): openai/whisper-small
  • Finetuning & Dataset (إعادة التدريب والبيانات المستخدمة): MAdel121/whisper-small-egyptian-arabic (متدرب على داتا سيت arabic-egy-cleaned).
  • Optimization (التحسين والضغط): التحويل لـ Faster-Whisper/CT2 (وهو الموديل الحالي اللي بين إيديك).

الخصائص التقنية (Technical Specs)

  • Engine (محرك التشغيل): CTranslate2 (مكتبة برمجية لتشغيل الموديلات بسرعة وكفاءة عالية).
  • Precision (دقة العمليات الحسابية): int8 (أرقام صحيحة، متظبطة عشان تشتغل بأعلى كفاءة على الـ CPU) / fp16 (أرقام عشرية، مخصصة لتسريع الأداء على كروت الشاشة اللي بتدعم تقنية CUDA).
  • Footprint (مساحة التخزين اللي بيسحبها): حوالي 400 ميجابايت (حجم ممتاز جداً للأنظمة الخفيفة والمحمولة).

الاستخدام (Usage)

from faster_whisper import WhisperModel

# تحميل الموديل وتجهيزه للعمل بكفاءة على المعالج الأساسي
model = WhisperModel('Mano200600/faster-whisper-small-egyptian-ar', device='cpu', compute_type='int8')

# تنفيذ عملية تحويل الصوت لنص
segments, _ = model.transcribe('audio.mp3')

for segment in segments:
    print(f"[{segment.start:.2f}s -> {segment.end:.2f}s] {segment.text}")
  • WhisperModel: النموذج الذكي (AI Model) المسؤول عن فهم وتحليل الصوت.
  • device='cpu': توجيه العمليات للمعالج الأساسي (Central Processing Unit) عشان يشتغل على أي جهاز حتى لو مفيهوش كارت شاشة قوي.
  • compute_type='int8': تقنية لضغط العمليات الحسابية (Quantization) باستخدام أرقام صحيحة، وده بيقلل استهلاك الرامات (Memory) جداً وبيسرع الأداء على الـ CPU.
  • transcribe: الوظيفة الأساسية (Function) اللي بتقوم بعملية التفريغ الصوتي.

شكر وتقدير (Credits)

هذا العمل مدين بالفضل لمجهودات فريق OpenAI وللمطور Adel Mohamed (MAdel121) على تنظيف وتجهيز الداتا سيت والموديل المبدئي.

الاستشهاد (Citations)

@misc{adel_mohamed_2024_12860997,
  author       = {Adel Mohamed},
  title        = {MAdel121/arabic-egy-cleaned},
  year         = 2024,
  publisher    = {Zenodo},
  url          = {https://doi.org/10.5281/zenodo.12860997}
}