التوليد المعزّز بالاسترجاع (RAG)
- ما هو RAG وحلقة الاسترجاع-التعزيز-التوليد
- كيف تفهرس وتسترجع وتعزّز وتولّد مع الاستشهادات
- لماذا يتفوّق RAG على الضبط الدقيق لاحتياجات 'أجب عن مستنداتي'
- أنماط الفشل الخمسة التي تقتل جودة RAG
- مطالبة ربط جاهزة للنسخ تسدّ أكبر ثغرتين
يجعل RAG النموذج يجيب عن أسئلة حول بياناتك — المستندات، أو قاعدة معرفة، أو قاعدة شيفرة — التي لم يُدرَّب عليها قط. الفكرة بسيطة: استرجع القطع ذات الصلة، ثم عزّز المطالبة بها، ثم ولّد إجابة مبنية على تلك القطع.
الحلقة
- قسّمها إلى مقاطع، وضمّنها (انظر /docs/foundations/embeddings)، وخزّنها في فهرس متجهي (و/أو فهرس كلمات مفتاحية).
- اسحب أعلى المقاطع صلةً بالسؤال.
- ضع تلك المقاطع في المطالبة مع تعليمة مثل "أجب فقط من السياق أدناه؛ وإن لم يكن موجودًا فيه، فقل ذلك."
- أنتج الإجابة — والأفضل أن تستشهد بالمقطع الذي جاء منه كل ادّعاء.
لخطوة التضمين في الفهرسة، انظر التضمينات والبحث المتجهي.
لماذا RAG بدلًا من الضبط الدقيق؟
- حديث: تحدّث البيانات، لا النموذج
- قابل للتحقق: يوفّر استشهادات
- رخيص: أرخص بكثير من إعادة التدريب
لمعظم احتياجات "أجب عن مستنداتي"، يكون RAG هو الأداة الأولى الصحيحة — انظر الضبط الدقيق مقابل التوجيه مقابل RAG.
أنماط الفشل (حيث تموت جودة RAG)
- استرجاع سيئ = إجابة سيئة. إذا لم يُسترجع المقطع الصحيح، فلن يستطيع النموذج استخدامه. معظم مشكلات 'RAG مخطئ' هي مشكلات استرجاع.
- التقطيع الخشن/الدقيق أكثر من اللازم يدمّر الصلة (انظر التضمينات).
- غياب تعليمة الربط: يمزج النموذج الحقائق المسترجعة بتخميناته الخاصة. أمره بالإجابة فقط من السياق والاعتراف بالثغرات.
- الحشو الزائد: تخفّف المقاطع غير ذات الصلة الإشارة وتستهلك توكنات. استرجع مقاطع قليلة عالية الجودة.
- غياب الاستشهادات: لا يمكنك التحقّق، فلا يمكنك الوثوق.
يعود فشل التقطيع إلى التضمينات، والحشو الزائد يكلّف توكنات.
- قيّم الاسترجاع على حدة: قِس 'هل استرجعنا المقطع الصحيح؟' بمعزل عن 'هل أجاب النموذج جيدًا؟' فهذا يحدّد موقع المشكلة بسرعة. انظر التقييمات (/docs/foundations/evals).
للنسخ: مطالبة ربط
أعلى إصلاح أثرًا هو تعليمة الربط. ضع مقاطعك المسترجعة في قالب كهذا — فهو يجبر النموذج على الإجابة فقط من السياق، والاستشهاد بكل ادّعاء، والاعتراف بالثغرات بدلًا من التخمين:
مطالبة الربط
You are answering strictly from the context below. Rules: - Use ONLY the context to answer. Do not use outside knowledge. - Cite the source after each claim, like [chunk 2]. - If the answer is not in the context, reply exactly: "I don't have that in the provided sources." - Quote numbers and names verbatim — never paraphrase a figure. Context: [chunk 1] ... [chunk 2] ... [chunk 3] ... Question: <the user's question>
اقرنها بـ بضعة مقاطع عالية الجودة (وليس كل ما استرجعته) فتسدّ أكبر ثغرتين دفعةً واحدة: المزج الهلوسي والإجابات غير القابلة للتحقق. ثم قيّم الاسترجاع والتوليد على حدة لتعرف أيّ نصف عليك ضبطه.
أتقن المصطلحات
اختبر نفسك
0/5- RAG = استرجع المقاطع ذات الصلة، عزّز المطالبة، ولّد إجابة مبنية ومستشهَدة.
- افهرس (تقطيع + تضمين + تخزين)، استرجع أعلى المقاطع، عزّز بتعليمة ربط، ولّد مع الاستشهادات.
- فضّل RAG على الضبط الدقيق للأسئلة والأجوبة على المستندات: حديث، مستشهَد، أرخص.
- معظم حالات الفشل هي حالات فشل استرجاع — استرجع مقاطع قليلة عالية الجودة، وليس كل شيء.
- أضف دائمًا تعليمة ربط واستشهد؛ وقيّم الاسترجاع والتوليد على حدة.