يقوم التوليد المعزّز بالاسترجاع (Retrieval-Augmented Generation، RAG) على ربط النموذج اللغوي بـقاعدة معرفية خارجية: فبدلاً من الإجابة اعتماداً على ما حفظه أثناء التدريب فقط، يبحث النموذج أولاً عن الوثائق ذات الصلة، ثم يصوغ إجابته استناداً إليها. إنه أشبه بطالب يراجع ملاحظاته قبل الإجابة بدل أن يستظهرها عن ظهر قلب.
كيف يعمل
تمرّ سلسلة RAG بثلاث مراحل:
- الفهرسة: تُقسَّم الوثائق إلى أجزاء (chunks)، وتُحوَّل إلى متجهات (embeddings)، وتُخزَّن في قاعدة بيانات متجهية.
- الاسترجاع: يُحوَّل سؤال المستخدم بدوره إلى متجه، ثم يُقارَن بالأجزاء عبر قياس التشابه (غالباً جيب التمام).
- التوليد: تُحقَن الأجزاء الأقرب في الموجّه (prompt) كسياق، ثم يصوغ النموذج إجابته.
يُقاس التشابه بين الاستعلام $q$ والوثيقة $d$ عادةً بالعلاقة:
$$\text{sim}(q, d) = \frac{\mathbf{q} \cdot \mathbf{d}}{\lVert \mathbf{q} \rVert \, \lVert \mathbf{d} \rVert}$$
لماذا نستخدمه
| المعيار | النموذج وحده | مع RAG |
|---|---|---|
| المعرفة المحدّثة | مجمّدة عند التدريب | قابلة للتحديث دون إعادة تدريب |
| الهلوسة | متكرّرة | أقل (إجابات مستندة) |
| إمكانية التتبّع | معدومة | مصادر قابلة للاستشهاد |
| التكلفة | إعادة تدريب ثقيلة | تحديث الفهرس |
استخدامات عملية
أصبح RAG حجر الأساس لـمساعدي الوثائق في المؤسسات، وروبوتات الدعم، ومحرّكات البحث الحوارية. فهو يتيح الاستعلام عن بيانات خاصة وحديثة دون أيّ كلفة لإعادة التدريب.
لا يجعل RAG النموذج أذكى، بل يضع بين يديه الصفحة الصحيحة في الوقت المناسب.