كيف يستعين الذكاء الاصطناعي بالمصادر الخارجية ؟ شرح RAG والاسترجاع المعزز بالتوليد
تعرف على تقنية RAG أو الاسترجاع المعزز بالتوليد، وكيف يستعين الذكاء الاصطناعي بالمستندات وقواعد البيانات والمصادر الخارجية لإنتاج إجابات أكثر ارتباطًا
افترض أن شركة عدّلت صباح اليوم سياسة الإجازات لديها ، ثم سأل موظف مساعدًا يعمل بالذكاء الاصطناعي :
( كم يومًا يمكنني ترحيله إلى السنة القادمة وفق السياسة الجديدة ) ؟
هناك مشكلة واضحة .
حتى لو كان النموذج اللغوي قويًا جدًا ، فلا يوجد سبب يجعله يعرف تلقائيًا مستندًا داخليًا عُدّل قبل ساعات .
المعلومة لم تكن بالضرورة ضمن بيانات تدريبه وربما لا يستطيع الوصول إلى نظام الشركة أصلًا .
ومع ذلك ، يمكن بناء نظام يستطيع البحث في النسخة الحالية من سياسـة الإجازات ، والعثور على الفقرة المناسبة ، ثم إعطاء النموذج تلك الفقرة حتى يصيغ إجابة اعتمادًا عليها .
هذه الفكرة هي أساس الاسترجاع المعزز بالتوليد ، المعروف اختصارًا باسم RAG – Retrieval-Augmented Generation .
الفكرة لا تقوم على جعل النموذج يعرف كل شيء مسبقًا ، بل على إعطائه المعلومة المناسبة عند الحاجة إليها .
وهذا فرق صغير في الظاهر ، لكنه غيّر طريقة بناء كثير من تطبيقات الذكاء الاصطناعي التي تحتاج إلى التعامل مع معلومات حديثة أو خاصة أو متخصصة .
1. المشكلة التي لا يحلها حجم النموذج وحده
النموذج اللغوي يتعلم أثناء التدريب أنماطًا وعلاقات من كميات ضخمة من البيانات .
جزء من المعرفة التي اكتسبها يصبح ممثلًا داخل معاملات النموذج نفسه. ولهذا يستطيع الإجابة عن كثير من الأسئلة دون البحث في مصدر خارجي في كل مرة .
لكن لهذه الطريقة حدودًا واضحة .
قد تكون المعلومة أحدث من البيانات التي تدرب عليها .
وقد تكون خاصة بمؤسسة ولا توجد أصلًا في البيانات العامة .
وقد تتغير باستمرار ، مثل الأسعار والمخزون والسياسات والأنظمة .
وقد تكون شديدة التخصص ، مثل دليل صيانة لجهاز معين أو وثائق مشروع داخلي .
وكانت إحدى المشكلات التي تناولها البحث الأصلي الذي صاغ RAG عام 2020 أن المعرفة المخزنة داخل معاملات النموذج يصعب تحديثها أو إسنادها إلى مصدر واضح عند الحاجة ، ولذلك جمع الباحثون بين الذاكرة الموجودة في النموذج ومصدر معرفة خارجي يمكن البحث فيه .
إذن المشكلة ليست دائمًا :
( النموذج غير ذكي بما يكفي ) .
قد تكون المشكلة ببساطة :
( المعلومة التي يحتاج إليها ليست أمامه ) .
( النموذج غير ذكي بما يكفي ) .
قد تكون المشكلة ببساطة :
( المعلومة التي يحتاج إليها ليست أمامه ) .
2. رحلة سؤال واحد داخل نظام RAG
لنعد إلى سؤال الموظف عن سياسة الإجازات .
عندما يرسله إلى نظام يعتمد على RAG ، لا يكون المسار ببساطة :
السؤال ← النموذج ← الإجابة .
يوجد جزء مهم يحدث بين السؤال والنموذج .
أولًا يصل سؤال المستخدم إلى النظام .
ثم يبحث جزء الاسترجاع في مصدر المعلومات المتاح له ، مثل مستندات الموارد البشرية .
ولا يحتاج عادة إلى إعادة جميع المستندات . المطلوب هو العثور على الأجزاء الأكثر ارتباطًا بالسؤال .
إذا وجد فقرة تقول مثلًا إن الموظف يستطيع ترحيل عدد معين من الأيام بشروط محددة ، تُضاف تلك الفقرة إلى السياق الذي يُرسل إلى النموذج مع سؤال المستخدم .
عندها يصبح أمام النموذج شيء قريب من :
( هذا سؤال المستخدم وهذه المعلومات المسترجعة من السياسة الحالية أجب اعتمادًا عليها ) .
ثم يصيغ النموذج الإجابة .
وبهذا نكون قد فصلنا وظيفتين :
البحث عن المعلومة المناسبة وصياغة الإجابة اعتمادًا عليها .
النموذج التوليدي لا يحتاج إلى أن يكون هو المكان الذي تُخزن فيه كل المعلومات .
3. لكن كيف يعرف النظام أي فقرة هي المناسبة ؟
هنا يصبح الاسترجاع نفسه جزءًا حاسمًا من جودة النظام .
لنفترض أن لدينا ألف مستند ، وسأل المستخدم :
( متى يمكنني إرجاع جهاز تم فتح عبوته ) ؟
ليس من المفيد إرسال الألف مستند إلى النموذج.
يحتاج النظام إلى العثور على الأجزاء المرتبطة بسياسة الإرجاع والجهاز المفتوح والشروط ذات الصلة .
إحدى الطرق الشائعة هي تقسيم المستندات إلى أجزاء أصغر ، ثم إنشاء تمثيلات عددية لها تسمى Embeddings ، تُستخدم للمساعدة في قياس التشابه الدلالي بين السؤال وأجزاء المحتوى .
يمكن بعد ذلك مقارنة تمثيل السؤال بتمثيلات أجزاء المستندات للعثور على المقاطع الأقرب إليه دلاليًا .
ولهذا تستطيع عملية البحث العثور أحيانًا على نص مفيد حتى عندما لا يستخدم الكلمات نفسها الموجودة في سؤال المستخدم .
لكن توجد نقطة تستحق التصحيح :
RAG لا يعني بالضرورة قاعدة بيانات متجهية .
البحث الدلالي والمتجهات طريقة شائعة جدًا ، لكنها ليست التعريف نفسه .
ولا يشترط الاسترجاع أن يأتي من بحث متجهي ؛ فقد تأتي المعلومات من بحث نصي أو قاعدة بيانات أو محرك بحث أو واجهة API أو مصدر آخر يستطيع النظام الاستعلام منه .
المبدأ هو المهم :
استرجع ما يحتاج إليه السؤال قبل إنشاء الإجابة .
4. ما معنى ( التأريض ) Grounding ؟
تظهر بجانب RAG كلمة أخرى كثيرًا : Grounding ، ويمكن التعبير عنها عربيًا بتأريض الإجابة أو ربطها بمصدر تستند إليه .
المفهومان قريبان لكنهما ليسا مترادفين تمامًا .
التأريض هو الفكرة الأوسع : جعل استجابة النموذج مرتبطة بمعلومات يمكن الرجوع إليها بدل أن تعتمد فقط على ما ينتجه النموذج من معرفته الداخلية .
أما RAG فهو إحدى الطرق الشائعة لتحقيق ذلك : نسترجع معلومات مرتبطة بالسؤال ، ثم نضيفها إلى السياق قبل التوليد .
هذا الفرق مفيد لأن النظام قد يتصل أحيانًا بمصدر مباشر دون استخدام بنية RAG التقليدية بالكامل .
على سبيل المثال ، إذا كان السؤال :
( كم قطعة من المنتج X متبقية في المخزون ) ؟
فقد يكون الأنسب إجراء استعلام مباشر لقاعدة المخزون ثم تمرير الرقم إلى النموذج ، بدل البحث الدلالي في مستندات نصية .
الهدف ليس استخدام مصطلح تقني معين .
الهدف أن تأتي الإجابة من المصدر المناسب للمعلومة .
5. هل RAG يعني أن النموذج تعلم المستندات ؟
لا .
وهذه إحدى أكثر النقاط التي تسبب التباسًا .
إذا ربطنا نموذجًا بمجموعة من ملفات الشركة باستخدام RAG ، فهذا لا يعني أننا أعدنا تدريبه عليها أو أنها أصبحت جزءًا دائمًا من معاملات النموذج .
عند وصول السؤال يبحث النظام عن المعلومات ذات الصلة ويضعها في سياق المهمة الحالية .
يمكن تشبيه الفرق بمثال بسيط .
هناك فرق بين شخص حفظ كتابًا أثناء دراسته ، وشخص يستطيع فتح المكتبة والرجوع إلى الصفحة المناسبة عندما يُسأل .
التشبيه غير كامل تقنيًا ، لكنه يوضح المبدأ .
وهنا يختلف RAG عن Fine-tuning أو الضبط الدقيق .
الضبط الدقيق يغيّر النموذج اعتمادًا على بيانات تدريب إضافية ، ويمكن استخدامه لتكييف السلوك أو الأسلوب أو الأداء في مهمة معينة .
أما RAG فيركز على تزويد النموذج بمعرفة خارجية ذات صلة وقت تنفيذ المهمة .
ولهذا تكون طريقة الاسترجاع مناسبة جدًا للمعلومات التي تتغير أو التي يجب تحديثها دون إعادة تدريب النموذج كلما عُدّل مستند .
6. العلاقة بين RAG ونافذة السياق
هنا يلتقي هذا المقال مباشرة مع ما شرحناه في مقال نافذة السياق في الذكاء الاصطناعي .
حتى بعد العثور على المعلومات المناسبة ، يحتاج النظام عادة إلى وضع المحتوى المسترجع داخل السياق الذي سيستخدمه النموذج .
لكن المساحة ليست بلا حدود .
وهذا يعني أن عملية الاسترجاع الجيدة لا تعني ( أرسل كل ما وجدته ) .
إذا استرجع النظام عشرات الصفحات غير الضرورية ، فقد يزدحم السياق بالمعلومات وتصبح مهمة النموذج أصعب .
أما إذا استرجع أجزاء قليلة لكنها مرتبطة جدًا بالسؤال ، فقد تكون أكثر فائدة .
لهذا فإن RAG الجيد ليس مجرد اتصال بقاعدة بيانات .
إنه أيضًا مشكلة اختيار :
- ما الذي يجب استرجاعه ؟
- وكم جزءًا ؟
- وما الذي يجب استبعاده ؟
- وهل الجزء المسترجع يحتوي فعلًا على إجابة السؤال ؟
ولهذا تقيس أنظمة تقييم RAG الحديثة جودة الاسترجاع نفسها إلى جانب جودة النص الذي يولده النموذج .
7. عندما يفشل النظام رغم أن المصدر صحيح
وجود مصدر موثوق لا يضمن إجابة موثوقة .
تخيل أن سياسة الشركة الصحيحة موجودة فعلًا في قاعدة المعرفة ، لكن محرك الاسترجاع اختار فقرة من سياسة قديمة .
أو استرجع جزءًا يتحدث عن الموظفين الدائمين بينما سؤال المستخدم يتعلق بموظف متعاقد .
أو كانت الوثيقة مقسمة بطريقة فصلت الاستثناء عن القاعدة التي ينتمي إليها .
قد يعطي النموذج عندها إجابة تبدو ممتازة لغويًا ، لكنه بُني على معلومات غير مناسبة .
وهنا تظهر حقيقة مهمة :
قد يفشل RAG قبل أن يبدأ التوليد أصلًا .
يمكن أن يكون النموذج قد تعامل جيدًا تمامًا مع السياق الذي أعطي له ، بينما كان السياق نفسه هو المشكلة .
ولهذا فإن جودة النظام تعتمد على سلسلة كاملة :
جودة المصادر ، وطريقة تقسيمها ، والاسترجاع ، وترتيب النتائج ، ثم قدرة النموذج على استخدام ما تم استرجاعه .
وإذا كان المصدر نفسه قديمًا أو خاطئًا ، فلن يجعل RAG المعلومة صحيحة بمجرد استرجاعها .
8. عندما يجمع النظام بين الاسترجاع وأدوات أخرى
لنفترض أن لديك متجرًا ، وسأل العميل :
( هل هذا المنتج متوفر ، وهل يمكن توصيله غدًا ، وما مدة الضمان ) ؟
الإجابة ليست بالضرورة موجودة في مكان واحد .
حالة المخزون قد تأتي من قاعدة بيانات مباشرة .
إمكانية التوصيل قد تأتي من نظام الشحن .
مدة الضمان قد تكون في مستند شروط المنتج .
قد يستخدم النظام أكثر من طريقة للوصول إلى هذه المعلومات .
فقد يستعلم مباشرة عن قاعدة المخزون ونظام الشحن ، بينما يستخدم الاسترجاع للعثور على الفقرة المناسبة داخل مستندات الضمان .
ثم يمكن جمع النتائج وإعطاؤها للنموذج لصياغة إجابة مفهومة للعميل .
وهنا يجب التفريق بين RAG وبين النظام الأوسع المحيط بالنموذج : ليس كل وصول إلى مصدر خارجي RAG ، فقد يستخدم التطبيق استرجاعًا للمستندات ، أو استعلامًا مباشرًا ، أو أداة ، أو يجمع بينها بحسب طبيعة المعلومة .
وهذه البنية مهمة أيضًا عند الانتقال إلى وكلاء الذكاء الاصطناعي ؛ فالوكيل قد يحتاج إلى البحث عن المعلومات أو استخدام أداة قبل اتخاذ الخطوة التالية ، بدل الاعتماد فقط على معرفته الداخلية .
9. هل يقلل RAG الأخطاء ؟
يمكن أن يساعد كثيرًا ، لكن العبارة الدقيقة هي : يمكن أن يقلل بعض أنواع الأخطاء عندما تكون عملية الاسترجاع والمصادر جيدة .
إعطاء النموذج معلومات حديثة ومرتبطة بالسؤال أفضل غالبًا من مطالبة النموذج بالتخمين فيما لا يعرفه .
ولهذا تُستخدم تقنيات التأريض لتحسين ارتباط الإجابات بمصادر حديثة أو خاصة .
لكن RAG لا يجعل النموذج معصومًا .
قد يسترجع المصدر الخطأ .
وقد يسيء النموذج تفسير المصدر الصحيح .
وقد يحتوي المصدر نفسه على خطأ .
وقد يخلط النموذج بين معلومة مسترجعة وما يعرفه مسبقًا .
وقد يجيب خارج ما توفره المصادر إذا لم يُضبط النظام جيدًا .
لذلك تبقى الحاجة إلى التحقق من المعلومات مرتبطة بحساسية المهمة ، خصوصًا في القرارات التي تحمل أثرًا ماليًا أو قانونيًا أو مهنيًا كبيرًا .
10. متى تكون هذه الفكرة مفيدة فعلًا ؟
ليس كل سؤال يحتاج إلى نظام استرجاع .
إذا طلبت من النموذج إعادة صياغة فقرة كتبتها للتو ، فلا توجد فائدة واضحة من البحث في قاعدة معرفة ضخمة .
أما عندما تعتمد الإجابة على معلومات :
حديثة ، خاصة ، كثيرة ، متخصصة ، أو قابلة للتحديث المستمر ، فإن الوصول إلى مصدر خارجي يصبح أكثر قيمة .
ولهذا نرى هذا النمط في تطبيقات مثل المساعد الذي يجيب عن مستندات مؤسسة ، والبحث داخل الأدلة الفنية ، ودعم العملاء ، والوصول إلى سياسات داخلية أو قواعد معرفة متخصصة .
لكن المعيار الأفضل ليس :
( هل يمكننا إضافة RAG ) ؟
بل :
هل توجد معلومات يحتاج إليها المستخدم ولا ينبغي أن نعتمد على معرفة النموذج الداخلية وحدها للحصول عليها ؟
إذا كانت الإجابة نعم ، تبدأ فكرة الاسترجاع في أن تصبح منطقية .
11. الخلاصة
من السهل النظر إلى نظام الذكاء الاصطناعي باعتباره عقلًا ضخمًا يحتوي كل المعلومات التي يمكن أن يحتاج إليها .
لكن كثيرًا من الأنظمة المفيدة تعمل بطريقة مختلفة .
النموذج يمتلك قدرات لغوية ومعرفة اكتسبها أثناء التدريب ، ثم يمكن للنظام المحيط به أن يجلب إليه معلومات خارجية عندما تتطلب المهمة ذلك .
تقنية RAG تجسد هذه الفكرة : البحث أولًا عن المعلومات ذات الصلة ، ثم إعطاؤها للنموذج ليولد إجابة مستندة إليها .
وهذا يسمح باستخدام ملفات خاصة ومعلومات حديثة وقواعد معرفة متخصصة دون افتراض أن كل شيء يجب أن يكون محفوظًا داخل النموذج نفسه .
لكن إضافة مصدر خارجي لا تنهي مشكلة الموثوقية .
عندما يكون الاسترجاع سيئًا، قد تكون الإجابة سيئة حتى لو كان النموذج ممتازًا .
وعندما يكون المصدر قديمًا ، يصبح النظام قادرًا على استرجاع الخطأ بسرعة أكبر لا أكثر .
لذلك فإن السؤال الأهم عند تقييم نظام يعتمد على RAG ليس :
( هل يستطيع الذكاء الاصطناعي الوصول إلى بياناتنا ) ؟
بل :
( هل يستطيع العثور على المعلومة الصحيحة ، من المصدر الصحيح ، في اللحظة التي يحتاج إليها ، ثم استخدامَها دون تشويه معناها ) ؟
وهنا تصبح جودة الاسترجاع جزءًا من جودة نظام الذكاء الاصطناعي ككل .



الانضمام إلى المحادثة
التزم بالاحترام ، وسيتم نشر تعليقك بعد المراجعة .