التخطى الى المحتوى الأساسى
  1. المقالات/

من الصوت الى النص WhisperLive: المتصفح

·5 دقائق قراءة· loading ·
الكاتب
Hallos | هالوس
طالب شبكات بطموحات لا تنتهي
محتوى المقال

هل مللت من البرامج والخدمات على النت التي تعامل مع الصوت وتحوله لكلام؟ اغلبها مدفوع ويعطيك تجربة محدودة بطيئة وسيئة، هذا الى جانب انك تحتاج ان تعطيها صلاحة الوصول لكل ما تريد تحويله والذي طبعا لا يمت لامان او الخصوصية بصلة! لذلك اليوم اعرض عليك برنامج بالذكاء الاصطناعي يمكنه فعل ذاك واكثر محليا على جهازك ☆

تعريفه
#

WhisperLive هو برنامج مفتوح المصدر وظيفته تحويل الصوت الى نص باستعمال نموذج Whisper المقدم من شركة OpenAi وذلك عن طريق واجهة رسومية او نصية. ويشمل هذا التحويل الملفات الصوتية او مباشرة من المايكروفون وايضا اي برنامج يحتوي على صوت مثل المتصفح وهو ما سنقوم به في مقالنا هذا.

collabora/WhisperLive

A nearly-live implementation of OpenAI’s Whisper.

Python
3039
410

مستودع WhisperLive على غيتهاب

المطور
#

انشئ البرنامج من قبل شركة collabora وهي شركة بريطانية مقرها في المملكة المتحدة، وتعرف بكونها واحدة من ابرز الداعمين، على الصعيد العالمي، لمشاريع البرمجيات الحرة والمفتوحة المصدر.

تعمل الشركة على مشاريع مشهورة مثل:

  • Linux kernel (نواة لينكس)
  • GStreamer (معالجة الوسائط)
  • Wayland (نظام العرض الرسومي الحديث خليفة x11)
  • WhisperLive (تحويل الصوت إلى نص)

رغم كونها تدعم البرامج مفتوحة المصدر لكنها شركة خاصة وربحية. تعتمد في مداخيلها على:

  • التطوير حسب الطلب: تبني أنظمة برمجية مفتوحة تناسب احتياجات الشركات.
  • الاستشارات التقنية: تقدّم المشورة في تبنّي البرمجيات المفتوحة ضمن الأنظمة التجارية.
  • الدعم الفني: للشركات التي تحتاج دعما في استخدام الأنظمة والبرامج مفتوحة المصدر.

مثال:

شركة مثل Intel قد تطلب من Collabora تعديل نواة لينكس لتدعم بطاقة رسومية جديدة. في هذه الحالة، Collabora تحصل على الأجر مقابل تلك التعديلات، وتضيف التعديلات في النواة ليستفيد الكل.

الهدف
#

ما نريد القيام به اليوم هو اعداد جهازنا ليشغل خادم (Server) WhisperLive الذي سنستعمله رفقة اضافة (Extension) في المتصفح لتحويل الكلام في صفحة من صفحات ذلك المتصفح الى كتابة يعطينا اياها في صندوق تحتوي نص الكلام المنطوق او ترجمه لغة اخرى.

تحميل بايثون

الصندوق الاسود في الاسفل هو ما نسعى اليه

وان نجحتفي التثبيت وتشغيل الخادم مع الاضافة، يبقى ان جودة عمله مرتبطة بمدى قوة موارد جهازك ولاسف جهازي مثلا لم يكن قادرا على معالجتها بالسرعة الكافية ما انتج تأخر كبير بين المكتوب والمقول.

التثبيت
#

سنثبت البرنامج على ويندوز لكن تثبيته على لينيكس لا يختلف كثيرا فلو كنت تجيد استعمال الطرفية يمكنك استنتاج خطوات التثبيت فيه.

Bash
#

لو كنت ستستعمل Whisperlive على نظام ويندوز، انصح باستعمال صدفية باش لتسهيل الاستعمال. (بقية المقال يفترض انك فعلت)

📌 التثبيت

هناك طريقتين رئيسيتين لحصول على تلك الصدفية في ويندوز هما:

  • Git Bash (يأتي مع Git for Windows)

أو

  • WSL (نظام لينكس داخل ويندوز)

في شرحنا هذا سنستعمل Git Bash لسهولة العملية مقارنة بالاخرى ولتثبيتيها وجعله الصدفية الافتراضية في الطرفية يمكنك متابعة هذا الفيديو:

Python
#

هي اللغة التي كتب بها WhisperLive وكل أوامر التشغيل والمكتبات التي نحتاجها تعتمد عليه.

📌 التثبيت

للحصول عليه نفتح الموقع الرسمي لبايثون ونتجاوز النسخة الاخيرة (واجهت بعض المشاكل في التثبيت معها) ونثبت النسخة التي استعملتها وهي نسخة 3.12.10 التي تجدها في القائمة في اسفل الموقع او عبر رابط التحميل الذي تجدها هنا. بعد الدخول اذهب الى آخر الصفحة واختر برنامج التثبيت الذي تحتاجه والذي غالبا سيكون Windows installer (64 bit)

رابط التحميل

تحميل بايثون

بعد التحميل افتح البرنامج وتأكد ان تفعّل التثبيت بصلاحيات Admin و Add Python.exe to Path من ثم اضغط Install Now

تحميل بايثون

Git clone
#

ندخل الى المجلد الذي نريد وضع البرنامج فيه ثم نضغط داخله بيمين الفأرة ونختار Terminal

تحميل بايثون

ننسخ كود البرنامج للجهاز بأمر

git clone https://github.com/collabora/whisper-live.git

ثم نستعمل هذا الامر لندخل مجلد البرنامج في الطرفية

cd whisper-live

pip
#

هو مدير حزم لغة بايثون وعن طريقه سنحمل المكتبات التي سنستعملها.

📌 التثبيت

عادة ما يأتي مباشرة مع بايثون ولتتحقق من وجوده استعمل امر:

pip --version

ان لم تجده استعمل هذا الامر لتثبيته:

python -m ensurepip --upgrade

البيئة الافتراضية
#

لنعزل برنامجنا وما يحتاجه من مكتبات نصنع بيئة افتراضية له بأمر:

python -m venv whisper_env

ثم ندخل تلك البيئة بأمر:

source whisper_env/Scripts/activate

المكتبات
#

whisper-live
#

المكتبة الرئيسية التي نحتاجها.

📌 التثبيت

pip install whisper-live

faster-whisper
#

هو النموذج الذي يستعمله البرنامج وغالبا ما يثبت تلقائيا مع المكتبة السابقة لكن لمزيد التثبت يمكنك استعمال هذا الامر :

pip install faster-whisper

PyAudio
#

المكتبة المسؤولة عن التقاط الصوت من الميكروفون او من الملفات الصوتية.

📌 التثبيت

للاسف لا يمكن تثبيتها مباشرة في ويندوز وان حاولت ستعترضك اخطاء كثيرة ولذلك نستعمل طريقة يدوية لتثبيتها

  1. نحصل على إصدار Python بامر:
python --version
  • لما نحتاجه؟ لتحديد النسخة من الملف الذي سنثبته التي تتوافق مع نسخة البايثون في الجهاز.

    مثال: لو حصلت على نتيجة Python 3.13.3 هذا يعني أنك تحتاج ملف يحتوي على cp313 لو حصلت على Python 3.12.10 هذا يعني أنك تحتاج ملف يحتوي على cp312.

  1. نحصل على معمارية الجهاز بأمر:
python -c "import platform; print(platform.architecture())"
  • لما نحتاجه؟ لتحديد النسخة من الملف الذي سنثبته التي تتوافق مع معمارية الجهاز. غالبا ستكون النتيجة: ('64bit', 'WindowsPE')

هذا يعني أنك تحتاج النسخة التي تنتهي بـ win_amd64.whl
(إذا ظهرت 32bit، فاختر win32.whl)

  1. تحميل الملف: تدخل لهذا الموقع وتختار الملف على حسب مواصفاتك. https://mirrors.aliyun.com/pypi/simple/pyaudio/

بما أن جهازي يستعمل:

  • 🐍 Python 3.12.10
  • 💻 Windows 64-bit

فأنا احتاج:

PyAudio-0.2.14-cp312-cp312-win_amd64.whl

  1. تثبيت الملف: افتح المجلد الذي يحتوي الملف المحمّل بمدير الملفات ثم اضغط على الملف بيمين الفأرة ثم اختر copy as path :
    تحميل بايثون
    بعدها عد الى الطرفية واكتب pip install ثم الصق المسار الذي نسخته ثم شغّل:
pip install <path>

دعم كروت انفيديا
#

نحتاج لتثبيت Pytorch

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

لمعرفة حالة بطاقة الرسوميات:

nvidia-smi

الخادم سيتعرف مباشرة على gpu بعد تثبيت هذا وسيستعمله دون ان تحتاج لتحديده يدويا.

اضافة المتصفح
#

هذه الطريقة تعمل مع متصفحات المبنية على كروميوم

  1. افتح المتصفح واذهب إلى: chrome://extensions/
  2. فعل وضع المطوّر (Developer mode) من الزاوية العليا اليمنى.
  3. اضغط على Load unpacked أو تحميل غير مضغوط.
  4. اختر المجلد الذي يحتوي على ملفات الإضافة (هو مجلد Audio-Transcription-Chrome المجود داخل whisper-live ).

لا تغلق وضع المطوّر او لن يمكنك استعمال الاضافة.

الاستخدام
#

  1. تفعيل البيئة الافتراضية

في الطرفية (Terminal) افتح المجلد الذي يحتوي البيئة الافتراضية )هو نفسه المجلد الذي يحتوي المشروع whisper-live لو اتبعت ما كتبته بحذافيره) ثم فعلها بالأمر:

source whisper_env/Scripts/activate
  1. تشغيل خادم WhisperLive

لتشغيل الخادم المحلي الذي يستقبل الصوت ويحوّله إلى نص، نفّذ الأمر التالي في الطرفية:

python run_server.py --port 9090 --backend faster_whisper
  1. تشغيل الاضافة بعد تشخيل الخادم افتح متصفحك واي فيديو ترغب في ان تستعمل الاضافة معه ثم اختر الغة او اتركها اوتوماتيكية وحد نوع الوظيفة التي ستقوم بها (تقديم نص الفيديو او ترجمة الكلام) بعدها اختر الموديل الذي تود استعماله واضغط Start capture. ان كنت تستعمل الموديل اول مرة فعلك الانتظار الى ان ينتهي تحميله ويمكنك رؤية التقدم في التحميل في الطرفية اين شغلة الخادم
    تحميل بايثون

كيف تشاهد الانمي من الطرفية
3 دقائق قراءة· loading
لينيكس
أفضل خرائط ماينكرافت
5 دقائق قراءة· loading
حسّن كتبك مع K2pdfopt
3 دقائق قراءة· loading
لينيكس