Skip to content

RAG: التوليد المعزز بالاسترجاع

مقدمة

لماذا "يتحدث ChatGPT بثقة عن هراء" أحيانًا؟ معرفة النماذج اللغوية الكبيرة تأتي من بيانات التدريب، لكن بيانات التدريب لها تاريخ انتهاء، ولا تحتوي على وثائق شركتك الداخلية. RAG (Retrieval-Augmented Generation، التوليد المعزز بالاسترجاع) هو التقنية الأساسية لحل هذه المشكلة - جعل الذكاء الاصطناعي "يبحث عن المعلومات" قبل الإجابة.

ماذا ستتعلم في هذا المقال؟

بعد إكمال هذا الفصل، ستكتسب:

  • فهم المفاهيم الأساسية: معرفة ما هو RAG ولماذا نحتاجه وكيف يحل مشكلة "الهلوسة" في النماذج الكبيرة
  • معرفة التدفق الكامل: إتقان التدفق الشامل من تحميل الوثائق والتقسيم والتحويل إلى متجهات إلى الاسترجاع والتوليد
  • قدرة اختيار التقنية: فهم مزايا وعيوب استراتيجيات التقسيم وطرق الاسترجاع المختلفة، والقدرة على الاختيار حسب السيناريو
  • رؤية تطور البنية: فهم مسار تطور RAG من Naive إلى Advanced إلى Modular
  • قدرة اتخاذ القرار العملي: معرفة متى نستخدم RAG ومتى نستخدم الضبط الدقيق
الفصلالمحتوىالمفاهيم الأساسية
الفصل 1التدفق الأساسي لـ RAGالمراحل الثلاث: الفهرسة، الاسترجاع، التوليد
الفصل 2استراتيجيات تقسيم النصالتقسيم الثابت، التقسيم الدلالي، التقسيم التكراري
الفصل 3تقنيات الاسترجاعالاسترجاع المتجهي، الاسترجاع بالكلمات المفتاحية، الاسترجاع الهجين
الفصل 4تطور البنيةNaive RAG → Advanced RAG → Modular RAG
الفصل 5RAG مقابل الضبط الدقيقمقارنة سيناريوهات الحلين

0. النظرة الشاملة: لماذا تحتاج النماذج الكبيرة إلى "البحث عن المعلومات"؟

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

تواجه النماذج اللغوية الكبيرة نفس المعضلة:

  • المعرفة لها تاريخ انتهاء: بيانات تدريب GPT-4 تنتهي عند نقطة زمنية معينة، وما حدث بعدها لا تعرفه
  • نقص المعرفة الخاصة: وثائق شركتك الداخلية وأدلة المنتجات وبيانات العملاء، لم يرها النموذج أبدًا
  • عرضة للهلوسة: عندما يكون النموذج غير متأكد من الإجابة، يميل إلى "اختلاق" إجابة تبدو معقولة

الفكرة الأساسية لـ RAG

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

RAG = استرجاع (Retrieval) + تعزيز (Augmented) + توليد (Generation)


1. التدفق الأساسي لـ RAG: الفهرسة، الاسترجاع، التوليد

يمكن تقسيم سير عمل RAG إلى مرحلتين: الفهرسة دون اتصال والاستعلام عبر الإنترنت.

مرحلة الفهرسة تشبه عمل الفهرسة في المكتبة - تصنيف جميع الكتب وترقيمها ووضعها على الرفوف، لتسهيل البحث لاحقًا. مرحلة الاستعلام عبر الإنترنت هي عملية بحث القارئ في المكتبة - العثور على الكتب ذات الصلة حسب السؤال، ثم تجميع المعلومات لإعطاء إجابة.

选择问题:
💬
用户提问
我们公司的年假政策是什么?
🔍
语义检索
📋
上下文组装
🤖
LLM 生成
返回结果
用户提问 — 详细说明
用户向系统提出一个自然语言问题。这个问题会被转化为向量表示,用于后续的语义检索。
1 / 5

المراحل الأساسية الثلاث

  1. مرحلة الفهرسة (Indexing): تحميل الوثائق الأصلية وتنظيفها وتقسيمها، ثم تحويلها إلى متجهات من خلال نموذج التضمين، وتخزينها في قاعدة بيانات المتجهات. هذا عمل تحضيري لمرة واحدة.
  2. مرحلة الاسترجاع (Retrieval): عند سؤال المستخدم، تحويل السؤال أيضًا إلى متجه، والبحث في قاعدة بيانات المتجهات عن أكثر أجزاء الوثائق تشابهًا.
  3. مرحلة التوليد (Generation): تجميع أجزاء الوثائق المسترجعة مع سؤال المستخدم في Prompt، وتسليمها للنموذج الكبير لتوليد الإجابة النهائية.
المرحلةالمدخلاتالمخرجاتالتقنية الأساسية
الفهرسةالوثائق الأصليةقاعدة بيانات المتجهاتتقسيم النص، نموذج التضمين
الاسترجاعسؤال المستخدمTop-K جزء وثيقةتشابه المتجهات، إعادة الترتيب
التوليدسؤال + سياقالإجابة النهائيةهندسة Prompt، LLM

2. تقسيم النص: وضع الفيل في الثلاجة

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

تخيل أنك تبحث عن نقطة معرفية معينة في كتاب في المكتبة. إذا كان الكتاب كاملاً "كتلة" واحدة، فلا فائدة من استرجاعه - لا يزال عليك تصفح الكتاب كاملاً. لكن إذا تم تقسيمه حسب الفصول أو حتى الفقرات، يمكنك تحديد موقع المحتوى الذي تحتاجه بدقة.

输入文本
固定大小
按照固定的字符数切分文本,是最简单直接的分块方式。通常会设置一定的重叠区域(overlap),避免在切分边界丢失上下文。
块大小: 80 字符重叠: 20 字符
分块结果 共 0 个块
请输入文本后查看分块结果
策略优点缺点适用场景
📏 固定大小实现简单,块大小均匀可能在句子中间截断结构化程度低的长文本
📝 按句子保持句子完整性块大小不均匀文章、报告等自然文本
🧠 语义分块主题连贯,语义完整计算成本高,需要嵌入模型多主题混合的复杂文档
🔄 递归分块兼顾结构与大小实现较复杂通用场景,推荐默认选择

اختيار استراتيجية التقسيم

  • التقسيم بحجم ثابت: التقسيم حسب عدد الأحرف أو tokens، بسيط ومباشر لكن قد يقطع الدلالة
  • التقسيم التكراري: التقسيم أولاً حسب الفقرات، وإذا كانت الفقرة طويلة جدًا تقسم حسب الجمل، للحفاظ على سلامة الدلالة
  • التقسيم الدلالي: استخدام نموذج التضمين لتحديد حدود الدلالة، والتقسيم عند نقاط تغير التشابه المفاجئ
  • التقسيم حسب هيكل الوثيقة: استخدام معلومات الهيكل مثل عناوين Markdown ووسوم HTML للتقسيم

لا توجد استراتيجية تقسيم "أفضل"، فقط الاستراتيجية الأنسب لبياناتك. ينصح عمومًا بالبدء من التقسيم التكراري، حجم chunk 200-500 tokens، تداخل 10-20%.


3. تقنيات الاسترجاع: كيف نجد المحتوى الأكثر صلة؟

بعد اكتمال التقسيم، السؤال الرئيسي التالي هو: المستخدم يطرح سؤالاً، كيف نجد الأجزاء الأكثر صلة من بين آلاف أجزاء الوثائق؟

هذا مثل البحث عن كتاب في مكتبة ضخمة. يمكنك البحث حسب الكلمات المفتاحية في عنوان الكتاب (استرجاع بالكلمات المفتاحية)، أو يمكنك وصف المحتوى الذي تريده ودع أمين المكتبة يبحث لك (استرجاع دلالي)، والأفضل هو الجمع بين الاثنين (استرجاع هجين).

选择查询:
1
查询编码
2
向量搜索
3
重排序
4
Top-K 选择
查询编码
将用户的自然语言查询通过嵌入模型(如 text-embedding-ada-002)转化为高维向量表示。这个向量捕捉了查询的语义信息。
查询文本
如何申请年假?
↓ 嵌入模型编码
查询向量
0.12-0.450.780.33-0.210.560.89-0.14
طريقة الاسترجاعالمبدأالمزاياالعيوب
استرجاع بالكلمات المفتاحية (BM25)بناءً على تكرار الكلمة وتكرار الوثيقة العكسيمطابقة دقيقة، سرعة عاليةلا يفهم الدلالة، المرادفات لا تعمل
استرجاع متجهيبناءً على تشابه جيب التمام لمتجهات التضمينيفهم الدلالة، يدعم المطابقة الغامضةغير حساس للأسماء الخاصة
استرجاع هجيندمج نتائج الاسترجاع بالكلمات المفتاحية والمتجهييراعي الدقة والدلالة معًايحتاج ضبط الأوزان، تعقيد عالٍ

إعادة الترتيب (Reranking)

بعد استرجاع الوثائق المرشحة، عادة ما تحتاج خطوة "إعادة ترتيب". الاسترجاع الأولي يسعى لمعدل الاسترجاع (عدم تفويت أي شيء)، وإعادة الترتيب تسعى للدقة (وضع الأكثر صلة في المقدمة). نماذج إعادة الترتيب الشائعة تشمل Cohere Rerank و BGE Reranker وغيرها، تستخدم مبرمجًا متقاطعًا لتسجيل أزواج query-document بدقة.


4. تطور البنية: من البسيط إلى الذكي

تقنية RAG مرت بثلاثة أجيال من التطور في عامين فقط، كل جيل يحل نقاط الألم في الجيل السابق.

最基础的 RAG 架构,流程简单直接:索引 → 检索 → 生成。适合快速原型验证,但在复杂场景下效果有限。
📄
文档加载
✂️
文本分块
🔢
向量化
🔍
检索
🤖
生成
点击流程节点查看详细说明
架构特点
实现简单,上手快
适合结构化知识库
⚠️检索质量依赖分块策略
无法处理复杂查询
架构演进路线
Naive RAG
2023
Advanced RAG
2024
Modular RAG
2025

مقارنة أجيال RAG الثلاثة

  • Naive RAG (2023): أبسط تدفق "فهرسة→استرجاع→توليد"، تنفيذ بسيط لكن النتائج محدودة. المشاكل تشمل: جودة استرجاع غير مستقرة، لا يمكن معالجة الاستعلامات المعقدة، سهولة إدخال سياق مشوش.
  • Advanced RAG (2024): أضاف على أساس Naive RAG خطوات تحسين مثل إعادة كتابة الاستعلام والاسترجاع الهجين وإعادة الترتيب وضغط السياق، مما حسن بشكل كبير دقة الاسترجاع وجودة التوليد.
  • Modular RAG (2025): تفكيك RAG إلى وحدات قابلة للتوصيل، تدعم قدرات متقدمة مثل توجيه المسار والاسترجاع التكيفي والتأمل الذاتي. يمكن اختيار تدفق المعالجة الأمثل ديناميكيًا حسب نوع الاستعلام.

5. RAG مقابل الضبط الدقيق: أيهما نختار؟

عندما تريد جعل النموذج الكبير يتقن معرفة مجال معين، عادة ما يكون هناك طريقان: RAG والضبط الدقيق (Fine-tuning). إنهما ليسا متنافيين، بل متكاملين.

للتشبيه: الضبط الدقيق مثل إرسال الطالب إلى دورة تدريبية، لاستيعاب المعرفة في الدماغ؛ RAG مثل إعطاء الطالب كتابًا مرجعيًا، يمكنه تصفحه أثناء الامتحان. لكل طريقة مزاياها وعيوبها، المفتاح هو احتياجاتك المحددة.

RAG 检索增强生成
VS
Fine-tuning 微调
知识更新速度
实时更新,修改文档即生效
需要重新训练,周期长
实施成本
搭建检索系统,成本适中
💰
需要 GPU 资源和标注数据
回答风格控制
依赖 Prompt 工程
🎨
可深度定制输出风格
幻觉控制
有据可查,可追溯来源
🎯
仍可能产生幻觉
推理延迟
需要额外的检索步骤
⏱️
直接生成,无额外开销
私有数据安全
数据留在本地,不进入模型
🔒
数据融入模型权重
一句话总结
RAG 像是给模型配了一个实时更新的参考书库,适合知识频繁变化的场景; 微调像是让模型上了一门专业课,适合需要特定风格或领域深度的场景。 实际项目中,两者常常结合使用。
البعدRAGالضبط الدقيق
تحديث المعرفةتحديث فوري، تعديل الوثيقة يكفييحتاج إعادة تدريب
التكلفةمنخفضة (لا حاجة لتدريب GPU)عالية (تحتاج موارد تدريب)
قابلية التفسيرعالية (يمكن تتبع المصادر)منخفضة (المعرفة مدمجة في الأوزان)
السيناريو المناسبأسئلة وأجوبة قاعدة المعرفة، استرجاع الوثائقنقل الأسلوب، تحسين مهام محددة
التحكم في الهلوسةجيد (هناك مرجع)متوسط (قد تظل هناك هلوسة)

نصيحة عملية

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


الخلاصة

RAG هي واحدة من أكثر التقنيات عملية "لتطبيق" النماذج الكبيرة حاليًا. قيمتها الأساسية: جعل إجابات النموذج قابلة للتوثيق، والمعرفة قابلة للتحديث الفوري، والهلوسة قابلة للتحكم الفعال.

مراجعة النقاط الرئيسية لهذا الفصل:

  1. المشكلة الأساسية التي يحلها RAG: معرفة النموذج الكبير قديمة، نقص البيانات الخاصة، عرضة للهلوسة
  2. التدفق ثلاثي المراحل: الفهرسة (تحضير دون اتصال) → الاسترجاع (بحث عبر الإنترنت) → التوليد (إجابة مركبة)
  3. التقسيم هو الأساس: جودة التقسيم تحدد مباشرة جودة الاسترجاع، اختيار استراتيجية التقسيم المناسبة أمر بالغ الأهمية
  4. الاسترجاع هو المفتاح: الاسترجاع الهجين + إعادة الترتيب هو أفضل مزيج حاليًا
  5. البنية في تطور: من Naive RAG إلى Modular RAG، النظام يصبح أكثر ذكاءً ومرونة
  6. RAG والضبط الدقيق متكاملان: جرب RAG أولاً في معظم السيناريوهات، وفكر في الضبط الدقيق عند الحاجة لتغيير سلوك النموذج

قراءة إضافية