أحمد حايس
الرئيسيةمن أناالدوراتالمدونةسوق الأوامرالمناهج والباقاتالشركاء
أحمد حايس

دورات عربية متخصصة في التقنية والبرمجة والذكاء الاصطناعي.

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

تعلم أسرعوصول مباشر للدورات والمسارات من الموبايل.
تنقل أوضحالروابط الأساسية والدعم في مكان واحد بدون تشتيت.

المنصة

  • الرئيسية
  • من أنا
  • الدورات
  • المناهج والباقات
  • سوق الأوامر
  • المدونة

الدعم

  • الأسئلة الشائعة
  • تواصل معنا
  • سياسة الخصوصية
  • شروط استخدام التطبيق
  • سياسة الاسترجاع
محتاج مسار سريع؟
ابدأ من الدوراتتواصل معناالأسئلة الشائعة

© 2026 أحمد حايس. جميع الحقوق محفوظة.

الرئيسيةالدوراتالمناهجالمدونةالدخول
الذكاء الاصطناعي

RAG للمبتدئين: خلّي الذكاء الاصطناعي يجاوب من مستنداتك بدل ما يهلوس

مبتدئ11 يوليو 20265 دقائق قراءة
RAG للمبتدئين: خلّي الذكاء الاصطناعي يجاوب من مستنداتك بدل ما يهلوس

هذا المقال لمستوى: مبتدئ. لو انت لسه بادئ في الذكاء الاصطناعي وسمعت كلمة RAG وملقتش حد شرحها ببساطة، ده مكانك الصح.

لو سألت شات بوت شركتك عن رقم طلب معيّن وردّ عليك برقم أو تاريخ مخترع، المشكلة مش إن النموذج غبي. المشكلة إنه بيجاوب من ذاكرته اللي اتدرّب عليها، وهو أصلًا معندوش أي فكرة عن طلباتك انت. في السطور الجاية هتعرف الحل العملي: تقنية اسمها RAG بتخلّي النموذج يقرا من مستنداتك لحظة السؤال، فيجاوب من مصدر حقيقي بدل ما يخمّن.

ما هو RAG؟ ودليل المبتدئ لفهمه من الصفر

المشكلة باختصار

نماذج اللغة الكبيرة زي ChatGPT و Claude اتدرّبت على نصوص عامة من الإنترنت. هي شاطرة في اللغة، لكنها متعرفش حاجة عن بياناتك الخاصة: سياسات شركتك، طلبات عملائك، ملفات مشروعك. ولمّا تسألها عن حاجة من دول، بتخمّن بثقة. الظاهرة دي اسمها الهلوسة. النموذج بيطلّع لك إجابة تبان مظبوطة لكنها مخترعة بالكامل.

الطريقة الشائعة الغلط إن الناس بتحاول تحشر كل مستنداتها جوه السؤال كل مرة. الطريقة دي بتفشل بسرعة: نافذة السياق ليها حد، والتكلفة بتطير، والنموذج بيتوه في الزحمة. RAG بيحل ده بذكاء.

قبل الشرح العلمي: مثال الامتحان المفتوح

تخيّل طالبين في امتحان. الأول حافظ المنهج من بدري وبيكتب من دماغه. لو نسي معلومة، بيألّف إجابة قريبة عشان مايسيبش الفراغ. ده النموذج العادي.

الطالب التاني في امتحان الكتاب مفتوح. قبل ما يجاوب على أي سؤال، بيفتح الكتاب، يلاقي الصفحة اللي فيها الإجابة، ويكتب منها. هو مش أذكى من الأول، لكن إجاباته مبنية على مصدر قدامه، مش على ذاكرته. ده بالظبط اللي RAG بيعمله للنموذج.

الفرق الجوهري: الطالب التاني مش لازم يحفظ الكتاب كله. هو محتاج بس يعرف يدوّر على الصفحة الصح ويقرا منها. وهنا بيت القصيد.

تعريف RAG علميًا

RAG اختصار لـ Retrieval-Augmented Generation، يعني التوليد المُعزَّز بالاسترجاع. الفكرة، اللي اتنشرت رسميًا في ورقة بحثية من Facebook AI سنة 2020، بتشتغل على مرحلتين:

  • الاسترجاع: نبحث في مستنداتنا عن أكثر المقاطع صلة بالسؤال.
  • التوليد: نعطي النموذج المقاطع دي مع السؤال، ونطلب منه يجاوب من واقعها فقط.

النتيجة: بدل ما النموذج يخمّن من ذاكرته، بقى بيتكلم عن معلومة حقيقية موجودة قدامه دلوقتي.

مخطط رحلة السؤال في نظام RAG بخمس مراحل من السؤال إلى الإجابة المبنية على المصدر

إزاي بيشتغل خطوة بخطوة

  1. سؤال المستخدم.
  2. تحويله لمتجه أرقام: نحوّل السؤال لقائمة أرقام تمثّل معناه. النصوص القريبة في المعنى بتبقى أرقامها قريبة.
  3. بحث دلالي: ندوّر في قاعدة بيانات المتجهات على المقاطع اللي أرقامها أقرب لأرقام السؤال. ده بحث بالمعنى، مش بالكلمة الحرفية.
  4. ضمّ أفضل المقاطع للسؤال: ناخد أعلى 3 أو 5 مقاطع ونحطهم مع السؤال.
  5. إجابة مبنية على المصدر: النموذج يقرا المقاطع دي ويرد منها فقط.

المفتاح اللي لازم تفهمه: النموذج لا يحفظ مستنداتك. هو بيقراها لحظة السؤال ويستشهد بها، زي طالب الامتحان المفتوح.

مثال تنفيذي بالكود

ده مثال مصغّر شغّال بلغة بايثون. بيحوّل 3 مستندات لمتجهات، وبيسترجع الأقرب للسؤال. في الواقع المستندات بتبقى مئات أو آلاف، وبنخزّن المتجهات في قاعدة زي FAISS أو Qdrant، لكن الفكرة هي هي.

Python
from sentence_transformers import SentenceTransformer
import numpy as np

docs = [
    "سياسة الاسترجاع: يحق للعميل ارجاع المنتج خلال 14 يوم.",
    "الشحن داخل القاهرة يستغرق يومين عمل.",
    "طلب رقم 90417 تم شحنه يوم 3 يوليو ووصل يوم 5 يوليو.",
]

model = SentenceTransformer("all-MiniLM-L6-v2")
doc_vecs = model.encode(docs, normalize_embeddings=True)

def retrieve(question, k=2):
    q = model.encode([question], normalize_embeddings=True)[0]
    scores = doc_vecs.dot(q)
    top = np.argsort(scores)[::-1][:k]
    return [docs[i] for i in top]

print(retrieve("امتى وصل طلب رقم 90417؟"))

لاحظ إن السؤال قال امتى وصل والمستند قال وصل يوم 5 يوليو. الكلمات مش متطابقة حرفيًا، لكن البحث الدلالي لقى المقطع الصح لأن المعنى قريب. ده اللي بيفرّق RAG عن بحث الكلمات المفتاحية العادي.

سيناريو واقعي بالأرقام

لو عندك مركز دعم فني فيه 10,000 مقال مساعدة، مستحيل تحشرهم كلهم في كل سؤال. لو حاولت، هتصطدم بحد نافذة السياق (مثلًا 200 ألف توكن)، وهتدفع تكلفة ضخمة على كل نداء. مع RAG، بنقطّع المقالات لمقاطع صغيرة (حوالي 500 توكن للمقطع مع تداخل 50 توكن)، وساعة السؤال بنسترجع أعلى 5 مقاطع بس. يعني النموذج بيقرا صفحتين بدل 10 آلاف صفحة، فالتكلفة والزمن ينزلوا بشكل كبير، والإجابة تبقى مبنية على مصدر تقدر تراجعه.

المقايضات

RAG مش سحر مجاني. الافتراض إن عندك مستندات نظيفة وموثوقة. لو المصدر نفسه غلط، النموذج هيجاوب غلط بثقة أكبر. بتكسب دقة وشفافية، وبتخسر: خطوة بحث إضافية بتضيف زمن (غالبًا بين 50 و 300 مللي ثانية)، وبنية تحتية جديدة لازم تصونها (قاعدة متجهات، وإعادة فهرسة لما المستندات تتغيّر). والاسترجاع نفسه ممكن يجيب مقاطع مش دقيقة لو التقطيع كان سيئ، فبتحتاج تضبط حجم المقطع وعدد النتائج.

متى لا تستخدم RAG

متستخدمش RAG لو سؤالك عام ومش محتاج بيانات خاصة، زي اكتبلي إيميل اعتذار. هنا النموذج لوحده كفاية، وRAG هيضيف تعقيد بلا فايدة. كمان لو معلوماتك صغيرة جدًا وثابتة، حطها مباشرة في السؤال أبسط وأسرع. وأخيرًا، لو محتاج النموذج يتعلّم أسلوب أو مهارة جديدة مش مجرد معلومة، ساعتها الأنسب هو الضبط الدقيق fine-tuning مش RAG.

الخطوة التالية

هات 20 سؤال بيتكرروا من عملائك، وحطهم في ملف. جرّب الكود اللي فوق على 5 أو 10 مقاطع من مستنداتك الحقيقية، وشوف هل الاسترجاع بيجيب المقطع الصح لكل سؤال ولا لأ. لو بيغلط في أسئلة معينة، جرّب تصغّر حجم المقطع وتزوّد عدد النتائج المسترجعة. من هنا تبدأ فعلًا تفهم RAG بإيدك، مش بس نظريًا.

المصادر

  • Lewis et al., Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, NeurIPS 2020 — الورقة الأصلية: arxiv.org/abs/2005.11401
  • توثيق مكتبة sentence-transformers ونموذج all-MiniLM-L6-v2 بمتجه 384 بُعد: sbert.net
  • مكتبة FAISS من Facebook AI Research للبحث في المتجهات: github.com/facebookresearch/faiss
  • دليل استرجاع المعرفة و RAG في توثيق Claude من Anthropic: docs.anthropic.com

هل استفدت من المقال؟

اطّلع على المزيد من المقالات والدروس المجانية من نفس المسار المعرفي.

تصفّح المدونة