العودة للوحة التحكم

QudahWay IR

Retrieval-Augmented Generation (RAG) | تعزيز التوليد بالاسترجاع

مستقبل الذكاء الاصطناعي: الـ RAG 🤖🔍
هون بنربط بين عالمين: عالم البحث (Retrieval) وعالم الذكاء الاصطناعي التوليدي (Generative AI).

تخيل إنك بتعطي الـ Chatbot كتاب كامل وبتحكيله "جاوبني بناءً على هاض الكتاب بس". هاي هي فكرة الـ RAG ببساطة. رح نفهم كيف بنحول النصوص لـ Embeddings وكيف بنستخدم الـ Vector Database عشان نطلع أدق الإجابات.
Retrieval-Augmented Generation Slide 01
Slide 1
Why RAG? Slide 02
Slide 2
ليش الـ RAG هو "المنقذ" في عصر الذكاء الاصطناعي؟ 🦸‍♂️✨
ركز معي , السلايد هاض هو "أساس اللعبة" وبوضح لنا ليش الدنيا كلها قالبة على الـ RAG:
  • البحث الكلاسيكي (Classical IR): زي أنظمة الـ TF-IDF، هاي الأنظمة "شاطرة" في إنها تلاقي الملفات الصح، بس "فاشلة" في إنها تجاوبك على سؤالك مباشرة. هي بس بتعطيك روابط وبتحكيلك "تفضل اقرأ وعرّب لحالك".
  • النماذج اللغوية (LLMs): زي GPT-4، هاي "فنانة" في الحكي والجواب، بس عندها مشكلة Hallucination (الهلوسة)؛ يعني ممكن تألف معلومات غلط بس عشان تعطيك جواب مقنع، لأن معلوماتها قديمة أو ناقصة.
الحل العبقري (RAG): هو دمج القوتين مع بعض:
١. الـ Retriever: بستخدم قوة الـ IR عشان يطول "الحقيقة" (Ground Truth) من ملفاتك الموثوقة.
٢. الـ Generator: بستخدم لسان الـ LLM عشان يقرأ هالمعلومات ويصيغ لك جواب طبيعي بناءً عليها فقط.
الخلاصة: الـ RAG بضمن لك جواب "ذكي" و "صادق" في نفس الوقت!
Introduction to RAG Slide 03
Slide 3
مكونات الـ RAG والهدف الأساسي 🤝🎯
في هاض السلايد بنشوف زبدة الموضوع، الـ RAG عبارة عن تحالف (شراكة) بين عالمين:
  • Information Retrieval (IR): عالم استرجاع المعلومات اللي درسناه، وظيفته يجيب البيانات الصافية.
  • Language Models (LLMs): النماذج اللغوية الضخمة، وظيفتها تفهم وتصيغ الكلام طبيعياً.
الهدف الأساسي (Goal): الحصول على إجابات أفضل وأهم شي تكون مدعومة بالأدلة وموثوقة (Grounded answers). يعني الموديل ما بجاوب من راسه، بجاوب بناءً على مراجع ثابتة!
Why RAG? Slide 04
Slide 4
ليش محتاجين الـ RAG؟ (المشكلة والحل) 🕳️💡
في عندنا مشكلتين أساسيات، وكل وحدة لحالها مش كافية:
  • IR returns docs only: محركات البحث التقليدية بتشوف وظيفتها تلاقي الملف المتصل بالسؤال وبس، ما بتلخص ولا بتجاوب المكتوب.
  • LLMs may hallucinate: الموديلات الذكية ممكن تنحط بموقف محرج وتضطر "تهلوس" وتألف إجابات مقنعة لو انطلبت منها معلومة مش متدربة عليها.
الحل السحري (Solution): الـ RAG بوخذ أحسن شي من الثنتين. بدمج دقة الاسترجاع (Retrieval) مع ذكاء التوليد والصياغة (Generation).
RAG Pipeline Slide 05
Slide 5
خطوات الـ Pipeline ومرحلة الاسترجاع 🔍⚙️
العملية الأساسية للـ RAG بتم كالتالي: Query → Retriever → Top-k Docs → LLM → Answer.
الخطوة الأولى (Step 1: Retrieve - The IR Part): هاض هو الجزء الخاص بالبحث اللي تعلمناه:
  • Input: سؤال اليوزر (مثلاً: "كيف الطيارات بتوفر وقود؟").
  • Action: بنستخدم الخوارزميات اللي درسناها زي الـ TF-IDF أو الـ Cosine Similarity عشان نرتب كل الملفات.
  • Output: بنطلع أهم الفقرات (عادة من 3 إلى 5 فقرات) اللي إلها علاقة قوية بالسؤال (Top-k).
RAG Pipeline Slide 06
Slide 6
مرحلة التعزيز (Augmentation) أو هندسة الأوامر 📝✨
بعد ما جبنا الملفات، هسا دور نعمل "القالب" للذكاء الاصطناعي:
الخطوة الثانية (Step 2: Augment - The Prompt Engineering Part): بناخذ الملفات اللي استرجعناها وبنحطها جوا Prompt (أمر للـ LLM). هاي الخطوة هي "الجسر" بين الكود البرمجي تبعنا وبين الذكاء الاصطناعي.
شكل القالب (Prompt Structure): بالعادة بنعطيه تعليمات واضحة: "أنت مساعد ذكي. جاوب على السؤال باستخدام النص المرفق فقط. إذا الجواب مش موجود، احكي ما بعرف". بعدين بنحط الـ Context (الفقرات اللي طلعت معنا) وتحتها الـ Question.
RAG Pipeline Slide 07
Slide 7
مرحلة التوليد والصياغة (Generation) ✍️🗣️
وصلنا للخطوة الأخيرة واللي بطلع فيها السحر:
الخطوة الثالثة (Step 3: Generate - The LLM Part):
  • Action: بنمسك الـ Prompt الجاهز (اللي فيه التعليمات + المراجع + السؤال) وبنبعته كطلب لـ LLM API زي (OpenAI أو Claude أو بنشغل موديل محلي زي Llama 3 عن طريق أداة Ollama).
  • Output: الموديل بقرأ المراجع وبصيغ Grounded, human-like answer (إجابة طبيعية وكأنها طالعة من إنسان، والأهم إنها موثقة).
Key Concepts Slide 08
Slide 8
مفاهيم ذهبية في عالم الـ RAG 👑💎
عشان نكون فاهمين الطبخة 100%، لازم نركز على أهم 3 مفاهيم:
  • الهلوسة (Hallucination): لما الموديل يجاوب من "ذاكرته" بدل النص المرفق. الـ RAG بمنع هاض الإشي لأنه بجبر الموديل يضل Grounded بالملفات اللي أعطيناه إياها.
  • نافذة السياق (Context Window): الموديلات إلها "حد أقصى" لكمية النص اللي بتقدر تقرأه بالمرة الواحدة. عشان هيك ما بنقدر نبعت المكتبة كلها وفقط بنبعت أهم (Top-k) ملفات.
  • التوثيق (Grounding): التأكد من إن كل جزء من الجواب بقدر أرجعه لمستند معين تم استرجاعه بواسطة الـ IR. هاض بيعطينا ثقة كاملة بالجواب!