لقد بنيت نظام RAG، لكن جودة البحث متوسطة — وهنا بالضبط تساعد إعادة الترتيب (reranking). تأخذ المرشحين الذين جمعتهم بشكل تقريبي عبر البحث بالتضمين (المتجهات) ثم تعيد ترتيبهم حسب مدى الصلة، وتُبقي الأفضل فقط في الأعلى. هذه الخطوة الواحدة قد تُغيّر جذريًا جودة إجابات نظام RAG — إنها "الدفعة الأخيرة" لدقة الاسترجاع.

يشرح هذا المقال للمبتدئين ما هي إعادة الترتيب، ولماذا نحتاجها، وكيف يعمل الاسترجاع على مرحلتين، ولماذا يكون دقيقًا (المُرمِّز الثنائي bi-encoder مقابل المُرمِّز المتقاطع cross-encoder)، ثم النماذج والتنفيذ.

RERANKING · اجمع بسعة ← أعد الترتيب بذكاء

مرحلتان لوضع "ما هو وثيق الصلة حقًا" في الأعلى

— اجمع ببحث سريع، وصفِّ بتقييم دقيق

STEP 1 · الاسترجاع

البحث بالتضمين

اجمع المرشحين بسرعة وبسعة (مثلًا 100). حسِّن من أجل الاستدعاء (recall).

STEP 2 · إعادة الترتيب

المُعيد للترتيب (reranker)

قيِّم حسب الصلة وأبقِ الأفضل (مثلًا 5). حسِّن من أجل الدقة (precision).

1. ما هي إعادة الترتيب؟

إعادة الترتيب هي إعادة تقييم نتائج البحث التي جمعتها بالفعل حسب صلتها بالاستعلام، ثم إعادة ترتيبها. في RAG، تستخدم أولًا البحث بالتضمين لجلب كثير من المستندات المحتمَل صلتها. لكن ذلك الترتيب "قريب تقريبًا" فحسب. ثم تضيف نموذجًا مخصصًا يُسمى المُعيد للترتيب (reranker) لدفع ما هو وثيق الصلة حقًا إلى الأعلى.

تخيّلها كـ "فرز أولي ومقابلة نهائية". الفرز الأولي (البحث بالتضمين) يغربل المتقدمين بسرعة ويمرّر عددًا وفيرًا. المقابلة النهائية (المُعيد للترتيب) تنظر إلى كل واحد بعناية وترتّب الأفضل في الأعلى. فرز أولي سريع زائد مقابلة نهائية دقيقة — هذا التركيب المكوّن من خطوتين هو جوهر الأمر.

💡 في سطر واحد: إعادة الترتيب = "مرحلة ثانية ترفع الدقة بإعادة ترتيب نتائج البحث". بعد أن يمنع البحث بالتضمين الإغفال، تتولى هي "وضع الأفضل في الأعلى".

2. لماذا نحتاجها: حدود البحث بالتضمين

البحث بالتضمين سريع ومُيسِّر، لكن له نقطة ضعف. لأنه يحوّل الاستعلام والمستندات إلى متجهات بشكل منفصل ثم يقارن، فإنه لا يرى العلاقة الدقيقة بينهما. إنه جيد في "القريب تقريبًا"، لكنه خشن في الحكم على "هل يجيب هذا فعلًا عن السؤال؟"

والنتيجة أن النتائج العليا تخلط مستندات "قريبة من حيث الكلمات لكنها بعيدة عن الهدف". وبما أن RAG يسلّم المستندات العليا المسترجَعة مباشرةً إلى الذكاء الاصطناعي، فإن الترتيب السيئ يخفض جودة الإجابة مباشرةً. هنا يعيد المُعيد للترتيب قياس الصلة على نحو سليم ويصحّح الترتيب. تشير الأبحاث إلى أن إضافة إعادة الترتيب تُحسّن دقة RAG تحسينًا كبيرًا (يذكر أحد التقارير مكسبًا يبلغ نحو 40%) — وهو رقم منقول.

وفوق ذلك، أصبح طبق إعادة الترتيب فوق البحث الهجين (hybrid search) — الجامع بين البحث بالكلمات المفتاحية والبحث بالمتجهات — التكوين الإنتاجي المعياري لـ RAG في عام 2026. "اجمع بسعة وتنوّع، ثم دع المُعيد للترتيب يرتّب حسب الصلة في النهاية" — هذا التدفق يرفع الدقة.

3. كيف تعمل: الاسترجاع على مرحلتين

تدمج إعادة الترتيب بوصفها "استرجاعًا على مرحلتين (two-stage retrieval)". والمبدأ هو "اجمع بسعة، صفِّ بذكاء".

↓ اجمع بسعة بالبحث بالتضمين~100
اجمع مرشحين كثيرين بسرعة (الاستدعاء = لا تُغفل أيًا منهم)
↓ قيِّم بالمُعيد للترتيب
↓ صفِّ إلى الأعلى بالمُعيد للترتيبأعلى 5
أعد الترتيب حسب الصلة (الدقة = ما ينفع حقًا فقط)
↓ مرِّر الأعلى فقط
↓ سلِّم إلى نموذج اللغة الكبير لتوليد الإجابة
أجِب انطلاقًا من سياق منتقى

المفتاح هو تقسيم العمل. تقييم كل مستند بالمُعيد للترتيب بطيء أكثر من أن يكون عمليًا. لذا يضيّق البحث بالتضمين السريع المرشحين أولًا (مثلًا 100)، ولا يفحص المُعيد للترتيب سوى تلك المجموعة الصغيرة. هذا يوازن بين السرعة والدقة. كما يتوافق ذلك مع فكرة هندسة السياق القائلة بـ "سلِّم أصغر مجموعة من المعلومات الأعلى إشارة".

4. لماذا يكون المُعيد للترتيب أكثر دقة

التضمينات والمُعيدات للترتيب مبنية بطريقة مختلفة في الداخل. هذا هو سبب الفجوة في الدقة.

BI-ENCODER (التضمين)

انظر بشكل منفصل، وقارن لاحقًا

يحوّل الاستعلام والمستند إلى متجهين كلًّا على حدة، ثم يقيس المسافة. قابل للحساب مسبقًا وسريع، لكنه لا يرى تفاعلهما أبدًا (تقريبي).

CROSS-ENCODER (المُعيد للترتيب)

انظر معًا، وقيِّم مباشرةً

يُدخل الاستعلام والمستند معًا ويُخرج درجة صلة (0–1) مباشرةً. يرى تفاعلهما، فيكون دقيقًا — لكنه ثقيل.

على سبيل التشبيه، المُرمِّز الثنائي bi-encoder "يلخّص مقالين بشكل منفصل ثم يقارن الملخصين"، بينما المُرمِّز المتقاطع cross-encoder "يقرأ الاثنين جنبًا إلى جنب ويحكم على العلاقة". الأخير أكثر دقة بطبيعته، لكن لا يمكنك تشغيله على كل مستند. لذلك فإن البنية على مرحلتين — اجمع بالمُرمِّز الثنائي السريع bi-encoder، وصفِّ بالمُرمِّز المتقاطع الدقيق cross-encoder — منطقية.

5. النماذج والتنفيذ

لا يلزمك بناء مُعيد للترتيب من الصفر — فالنماذج وواجهات الـ API المخصصة جاهزة.

نوع الـ API (سهل)

Cohere Rerank، Voyage، Jina Reranker. ما عليك سوى وضعه فوق بحثك الحالي — مجرد استدعاء API.

نوع مفتوح المصدر

BGE reranker، mixedbread، FlashRank (خفيف). مجاني للاستضافة الذاتية — مناسب للتكلفة والخصوصية.

التقييم بنموذج لغة كبير (RankLLM وغيره)

دع نموذج اللغة الكبير نفسه يقيّم "أيها وثيق الصلة". مرن، لكنه أعلى تكلفة.

التنفيذ بسيط على نحو مفاجئ. إلى نظام RAG (البحث بالمتجهات) الحالي لديك، ما عليك سوى "استرجاع عدد أكبر (مثلًا 50–100)، وتمريرها عبر مُعيد للترتيب، والتصفية إلى أعلى 5" — أضف تلك الخطوة الواحدة. قِس الأثر بـ تقييمات الذكاء الاصطناعي واضبط كم تسترجع وكم تُبقي.

※ أسماء النماذج والأرقام منقولة من أدلة وأبحاث متنوعة (حتى يونيو 2026). تتفاوت النتائج بحسب البيانات والإعدادات، لذا فإن القياس والضبط هما الطريق المضمون.

الخلاصة

ثلاث نقاط أساسية عن إعادة الترتيب.

  • ما هي: مرحلة ثانية تعيد تقييم نتائج البحث حسب الصلة وتعيد ترتيب الأفضل إلى الأعلى. إنها "الدفعة الأخيرة" لدقة RAG.
  • كيف تعمل: استرجاع على مرحلتين — اجمع بسعة بالبحث بالتضمين السريع، ثم صفِّ بمُعيد للترتيب دقيق. "اجمع بسعة، صفِّ بذكاء".
  • الفرق: التضمينات (المُرمِّز الثنائي bi-encoder) تنظر بشكل منفصل وتكون سريعة؛ والمُعيدات للترتيب (المُرمِّز المتقاطع cross-encoder) تنظر معًا وتكون دقيقة. قسِّم الأدوار لتحصل على الميزتين.

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

الأسئلة الشائعة

س. أليس البحث بالتضمين وحده كافيًا؟

ج. لبعض الاستخدامات، نعم — لكن إعادة الترتيب تساعد حين تقصُر الدقة. التضمينات جيدة في الجمع بسرعة وبسعة، لكنها خشنة في الحكم على الصلة. إضافة مُعيد للترتيب تجعل المستندات وثيقة الصلة حقًا أكثر احتمالًا للظهور في الأعلى.

س. ألن يكون بطيئًا؟

ج. المُعيد للترتيب ثقيل، لكنك تشغّله فقط على المجموعة الصغيرة التي ضيّقها البحث بالتضمين (مثلًا 50–100)، لا على كل مستند، فيبقى عند سرعة عملية. الحيلة هي ألا تسترجع عددًا مفرطًا.

س. هل المُعيدات للترتيب ونماذج التضمين أشياء مختلفة؟

ج. نعم. نموذج التضمين (المُرمِّز الثنائي bi-encoder) يصنع المتجهات للبحث؛ والمُعيد للترتيب (المُرمِّز المتقاطع cross-encoder) ينظر إلى الاثنين معًا ويقيّم الصلة. أدوار مختلفة، لذا تستخدم كليهما معًا.

س. كم ينبغي أن أسترجع، وكم أُبقي؟

ج. القاعدة التقريبية هي "استرجع 50–100 ← أبقِ أعلى 3–10"، لكن الأمثل يعتمد على بياناتك. قِس الدقة بتقييمات الذكاء الاصطناعي واضبط الأعداد. الكثير بطيء، والقليل يُغفل أشياء.