الدرس 2 من 23

تعمق في بنية RAG

RAG مقابل الضبط الدقيق

3 دقيقة للقراءة

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

الاختلافات الجوهرية

الجانب RAG الضبط الدقيق
مصدر المعرفة استرجاع خارجي مضمن في الأوزان
تكرار التحديث ممكن بالوقت الفعلي يتطلب إعادة التدريب
هيكل التكلفة استرجاع لكل استعلام تكلفة تدريب مقدمة
التحكم بالهلوسة مؤسس على المصادر لا يزال ممكناً
التكيف مع المجال يعمل فوراً يحتاج بيانات تدريب

متى تختار RAG

RAG يتفوق عندما:

1. المعرفة تتغير بشكل متكرر

# RAG: تحديث المستندات، متاح فوراً
def add_new_knowledge(document: str):
    chunks = chunker.split(document)
    embeddings = embed_model.encode(chunks)
    vectorstore.add(chunks, embeddings)
    # قابل للاستعلام فوراً - لا إعادة تدريب

2. تحتاج إسناد المصدر

# RAG يوفر إجابات قابلة للتتبع
response = {
    "answer": "السياسة تسمح بإرجاع لمدة 30 يوماً.",
    "sources": [
        {"doc": "return_policy.pdf", "page": 3},
        {"doc": "faq.md", "section": "returns"}
    ]
}

3. قاعدة المعرفة كبيرة أو متنوعة

  • مستندات قانونية عبر ولايات قضائية
  • وثائق تقنية تمتد عبر منتجات
  • بيانات تاريخية مع سياق زمني

4. الدقة حرجة

  • استرجاع معلومات طبية
  • استعلامات الامتثال المالي
  • تطبيقات البحث القانوني

متى تختار الضبط الدقيق

الضبط الدقيق يتفوق عندما:

1. أسلوب/تنسيق متسق مطلوب

# النموذج المضبوط يتعلم صوتك
# بيانات التدريب:
# الإدخال: "لخص هذا البريد الإلكتروني"
# الإخراج: "[تنسيق ملخص بأسلوب الشركة]"

2. سلوك خاص بالمهمة

  • مخططات تصنيف مخصصة
  • استخراج كيانات خاص بالمجال
  • أنماط تفكير ملكية

3. زمن الاستجابة حرج

  • لا عبء استرجاع
  • استدلال نموذج واحد
  • أوقات استجابة متوقعة

4. المعرفة مستقرة

  • مفاهيم المجال الأساسية لا تتغير
  • بيانات التدريب تمثل المعرفة الكاملة

النهج الهجين

أنظمة الإنتاج غالباً تجمع كليهما:

class HybridKnowledgeSystem:
    def __init__(self):
        # مضبوط لفهم المجال
        self.llm = load_fine_tuned_model("domain-expert-v2")
        # RAG للحقائق الحالية
        self.retriever = VectorRetriever("knowledge_base")

    def answer(self, query: str):
        # استرجاع الحقائق الحالية
        context = self.retriever.search(query)

        # النموذج المضبوط يفهم فروق المجال
        return self.llm.generate(
            query=query,
            context=context,
            # النموذج يعرف مصطلحات المجال، الأسلوب
        )

مقارنة التكلفة

العامل RAG الضبط الدقيق
الإعداد الأولي إنشاء الفهرس (~$0.10/1M رمز) التدريب (~$10-100+ لكل تشغيل)
تكلفة كل استعلام تضمين + استرجاع + توليد توليد فقط
تكلفة التحديث إعادة تضمين المستندات المتغيرة إعادة تدريب كاملة
البنية التحتية استضافة قاعدة بيانات متجهة استضافة النموذج

إطار القرار

البداية
هل المعرفة تتغير بشكل متكرر؟
  ├─ نعم → RAG
هل تحتاج إسناد المصدر؟
  ├─ نعم → RAG
هل الأسلوب المتسق حرج؟
  ├─ نعم → الضبط الدقيق (+ RAG اختياري)
هل زمن الاستجابة أقل من 100ms مطلوب؟
  ├─ نعم → الضبط الدقيق
الافتراضي → RAG (أكثر مرونة، أسهل للتحديث)

واقع الإنتاج: معظم تطبيقات المؤسسات تبدأ بـ RAG لأنه أسرع للنشر، أسهل للتحديث، ويوفر قابلية التدقيق التي يتطلبها الامتثال.

التالي، لنفحص بنية خط أنابيب RAG الكاملة. :::

اختبار

الوحدة 1: تعمق في بنية RAG

خذ الاختبار