تحليل شامل لمقاطع فيديو اليوتيوب وتوليد تقارير PDF تفاعلية باستخدام Lyzr
يقدم هذا المقال شرحًا تفصيليًا لكيفية استخراج ومعالجة وتحليل نصوص مقاطع فيديو اليوتيوب باستخدام إطار عمل Lyzr القوي المدعوم بالذكاء الاصطناعي. يُسهّل Lyzr، من خلال واجهة دردشة بديهية، عملية تحويل محتوى الفيديو إلى وثائق PDF منظمة، بالإضافة إلى إجراء تحليلات معمقة من خلال تفاعلات ديناميكية. يُعد هذا النهج مثاليًا للباحثين والمُعلمين ومُنشئي المحتوى، حيث يُسرّع عملية استخلاص الأفكار القيّمة، وتوليد الملخصات، وصياغة الأسئلة الإبداعية مباشرةً من الموارد المتعددة الوسائط.
إعداد بيئة العمل
نقوم أولاً بتثبيت المكتبات اللازمة في بيئة Python باستخدام الأمرين التاليين:
pip install lyzr youtube-transcript-api fpdf2 ipywidgets
apt-get update -qq && apt-get install -y fonts-dejavu-core
الأمر الأول يُثبّت مكتبات Python الأساسية، بما في ذلك:
- lyzr: لإجراء محادثات مدعومة بالذكاء الاصطناعي.
- youtube-transcript-api: لاستخراج نصوص مقاطع الفيديو من يوتيوب.
- fpdf2: لإنشاء ملفات PDF.
- ipywidgets: لإنشاء واجهات دردشة تفاعلية.
أما الأمر الثاني، فيضمن تثبيت خط DejaVu Sans على النظام لدعم عرض النصوص الكاملة بتشفير Unicode في ملفات PDF المُولدة.
تهيئة مفتاح API الخاص بـ OpenAI
نقوم بتهيئة الوصول إلى مفتاح API الخاص بـ OpenAI من خلال الخطوات التالية:
import os
import openai
openai.api_key = os.getenv("OPENAI_API_KEY")
os.environ['OPENAI_API_KEY'] = "YOUR_OPENAI_API_KEY_HERE"
يُعدّ هذا الإعداد ضروريًا للاستفادة من نماذج OpenAI القوية ضمن إطار عمل Lyzr. تذكر استبدال "YOUR_OPENAI_API_KEY_HERE"
بمفتاح API الخاص بك.
استيراد المكتبات الضرورية
نقوم باستيراد المكتبات الإضافية اللازمة:
import json
from lyzr import ChatBot
from youtube_transcript_api import YouTubeTranscriptApi, TranscriptsDisabled, NoTranscriptFound, CouldNotRetrieveTranscript
from fpdf import FPDF
from ipywidgets import Textarea, Button, Output, Layout
from IPython.display import display, Markdown
import re
تشمل هذه المكتبات: json
للمعالجة البيانات، و Lyzr's ChatBot
للمحادثات المُدارة بالذكاء الاصطناعي، و YouTubeTranscriptApi
لاستخراج النصوص، و FPDF
لإنشاء ملفات PDF، و ipywidgets
للعناصر التفاعلية، و IPython.display
لعرض محتوى Markdown، و re
لعمليات التعبير النيابي.
تحويل النصوص إلى ملفات PDF
تُسهّل الدالة التالية، transcript_to_pdf
، عملية تحويل نصوص مقاطع فيديو اليوتيوب إلى ملفات PDF قابلة للقراءة:
def transcript_to_pdf(video_id: str, output_pdf_path: str) -> bool:
# ... (Code for the function as provided in the original text) ...
هذه الدالة تستخرج النص من يوتيوب، وتتعامل مع الاستثناءات (مثل عدم توفر النصوص)، وتُهيئ النص لتجنب مشاكل التنسيق في PDF، وتضمن دعم Unicode باستخدام خط DejaVuSans (إن وجد). كما تقوم بتقسيم الكلمات الطويلة جدًا للحفاظ على تنسيق PDF جيد.
إنشاء واجهة دردشة تفاعلية
الدالة التالية، create_interactive_chat
، تُنشئ واجهة دردشة تفاعلية بسيطة:
def create_interactive_chat(agent):
# ... (Code for the function as provided in the original text) ...
تستخدم هذه الدالة ipywidgets
لإنشاء منطقة إدخال نصوص، وزر إرسال، ومنطقة عرض المحادثة. عند النقر على زر الإرسال، يُرسل السؤال إلى وكيل Lyzr ChatBot، والذي يُولّد ويُعرض الرد.
الدالة الرئيسية (main()
)
الدالة الرئيسية تُدير العملية برمتها:
def main():
# ... (Code for the function as provided in the original text) ...
تُعالِج هذه الدالة قائمة بمعرّفات مقاطع الفيديو، وتحوّل النصوص إلى ملفات PDF، ثم تُنشئ وكيل Lyzr PDF-chat للرد على أسئلة مُحددة مسبقًا (مثل تلخيص المحتوى، وتحديد الأفكار الرئيسية، وتوليد أسئلة اختبار). كما تُقارن بين ملفات PDF المُولدة (إن وجد أكثر من ملف) وتُنشئ واجهة دردشة تفاعلية.
الخاتمة
بدمج Lyzr في سير العمل، يُمكننا بسهولة تحويل مقاطع فيديو اليوتيوب إلى معرفة قيّمة. تُسهّل إمكانية دردشة PDF الذكية في Lyzr استخراج المواضيع الرئيسية وتوليد ملخصات شاملة، كما تُتيح استكشافًا تفاعليًا للمحتوى من خلال واجهة محادثة بديهية. يُمكن لـ Lyzr المستخدمين من استخراج رؤى أعمق وتحسين الإنتاجية بشكل كبير عند العمل مع نصوص الفيديو، سواء لأغراض البحث الأكاديمي أو التعليمية أو تحليل المحتوى الإبداعي.
اترك تعليقاً