RAG в enterprise: почему 80% проблем в данных, а не в модели
В enterprise RAG часто ломается в продакшне не из-за модели, а из-за данных: путаница версий, потеря контекста, галлюцинации вместо источников. Разбор конкретны

يتم بناء نموذج RAG أولي في أسبوع واحد وعرضه. يبدو سحريًا: يجيب النموذج على أسئلتك حول المستندات الخاصة بك دون هلوسة من المعرفة العامة. لكن بعد بضعة أسابيع في الإنتاج، يبدأ النظام في الخلط بين الإصدارات، ويفقد السياق، ويوفر بثقة إجابات من مصادر غير موجودة. هذا هو الطريق النموذجي لمعظم أنظمة RAG في المؤسسات. والمسؤول هنا ليس المحول، بل البيانات والعمارة.
حيث يفشل RAG
عند التوسع من نموذج أولي إلى الإنتاج، تظهر حقيقة غير سارة: 70-80% من مشاكل RAG تتعلق بإدارة البيانات والفهرسة والبحث، وليس بقدرات نموذج اللغة نفسه. بغض النظر عن جودة GPT-4 أو Claude، إذا تم فهرسة البيانات بشكل سيء، سيوفر النظام إجابات غير صحيحة. يصبح هذا واضحًا بشكل خاص عند توسيع RAG من 100 إلى 10000 وثيقة.
فيما يلي الأسباب الحقيقية لفشل RAG في المؤسسات:
- الخلط في إصدارات المستندات — تبقى الإصدارات القديمة في الفهرس، ولا يعرف النظام أي مستند حالي. يحصل المستخدمون على إجابات بناءً على اللوائح من قبل سنتين.
- فقدان السياق — لا يتذكر النظام ما تم مناقشته في رسائل الدردشة السابقة، ويكرر نفسه أو يتناقض مع نفسه.
- تقسيم ضعيف — يتم تقسيم المستندات حسب الحجم وليس حسب المعنى. تنهار المنطق بين الأجزاء، والنظام يفتقد الاتصالات.
- عدم وجود إعادة ترتيب — يجلب BM25 الكثير من الضوضاء، لا يستطيع النظام التمييز بين المستندات ذات الصلة والتطابقات العشوائية للكلمات الرئيسية.
- embeddings منخفضة الجودة — يتم تدريب المتجهات على مجموعة نصية عامة لكنها لا تفهم مصطلحاتك الخاصة بالمجال.
- لا توجد حلقة ملاحظات — لا أحد يتتبع الإجابات غير الصحيحة، لا يتعلم النظام من أخطائه.
كيفية بناء RAG بشكل صحيح
في AlpinaGPT، عملنا بالعكس: أولاً جمعنا متطلبات نظام مثالي، ثم حددنا المشاكل المحددة التي تعيقها. والنتيجة هي عمارة نجحت في الاختبارات الفعلية مع عملاء المؤسسات. فيما يلي المكونات الرئيسية:
- التقسيم الدلالي — نقسم حسب بنية المستند والعناوين والكتل الدلالية وليس حسب الحجم. هذا يمنع السياق من التفتت بين الأجزاء.
- إصدار البيانات — يتم فهرسة كل إصدار مستند بشكل منفصل مع طابع زمني. يعرف النظام أي مستند حالي.
- البحث ثنائي المراحل — أولاً، BM25 سريع (الكلمات الرئيسية)، ثم إعادة ترتيب عصبية (الدلالات). هذا أرخص من البحث عن كل شيء عبر embeddings.
- السياق بين الرسائل — يتذكر النظام سجل الدردشة بالكامل ولا يكرر ما تم شرحه بالفعل للمستخدم.
- الملاحظات — نتتبع الإجابات غير الصحيحة ونعيد تدريب المصنف على هذه الأمثلة.
- فهارس منفصلة حسب النوع — يتم فهرسة اللوائح والتعليمات والأسئلة الشائعة والكود بشكل مختلف.
ما يعنيه هذا
RAG في المستقبل ليس فقط embeddings والبحث الاتجاهي. إنه إدارة إصدار المستند والتقسيم الدلالي السليم والبحث متعدد المراحل والملاحظات المستمرة. إذا كانت نصف إجابات RAG الخاصة بك خاطئة، فإن المشكلة بالتأكيد تقريبًا ليست نموذج GPT-4 أو Claude. المشكلة في كيفية تحضير البيانات وتقسيمها وفهرستها وجمع الملاحظات. أعد التفكير في هذا pipeline بالكامل — والجودة تقفز. هذا ما تعلمناه من AlpinaGPT.