أصبح الجيل بمساعدة البحث (RAG) هو المعيار الفعلي لتضمين نماذج اللغات الكبيرة (LLM) في البيانات الخاصة. تعتبر البنية القياسية – تقطيع المستندات، وتضمينها في قاعدة بيانات متجهة، واسترداد نتائج الرف العلوي بناءً على تشابه جيب التمام – فعالة للبحث الدلالي غير المنظم.
ومع ذلك، بالنسبة لمجالات المؤسسة التي تتميز ببيانات شديدة الترابط (سلسلة التوريد، والامتثال المالي، واكتشاف الاحتيال)، غالبًا ما يفشل RAG الموجه فقط. إنه يلتقط تشابه لكنه يفتقدني بناء. هل تواجه صعوبة في حل الأسئلة المنطقية متعددة القفزات مثل: “كيف سيؤثر التأخير في المكون X على المنتج الذي يتم شحنه في الربع الثالث للعميل Y؟” لأن متجر المتجهات “لا يعرف” أن المكون X هو جزء من منتج العميل Y.
تتناول هذه المقالة نمط RAG المحسّن بيانياً. بالاعتماد على تجربتي في بناء أنظمة تسجيل عالية الإنتاجية على Meta والبنية التحتية للبيانات الخاصة في Cognee، سنناقش بنية مرجعية تجمع بين المرونة الدلالية للبحث المتجهي والحتمية الهيكلية لقواعد بيانات الرسم البياني.
المشكلة: عندما يفقد البحث المتجه السياق
تعتبر قواعد بيانات المتجهات رائعة في التقاط المعنى، لكنها ترفض الطوبولوجيا. عندما يتم تجزئة المستند ودمجه، غالبًا ما يتم تسوية العلاقات الواضحة (التسلسل الهرمي والتبعية والملكية) أو فقدانها تمامًا.
فكر في سيناريو مخاطر سلسلة التوريد. على الرغم من أن هذا مثال افتراضي، إلا أنه يمثل بالضبط فئة المشكلات الهيكلية التي نراها طوال الوقت في بنيات بيانات المؤسسة:
-
البيانات المنظمة: قاعدة بيانات SQL تحدد أن المورد “أ” يقوم بتسليم المكون “س” إلى المصنع “ص”.
-
البيانات غير المنظمة: تقرير صحفي يفيد “أوقفت الفيضانات في تايلاند الإنتاج في مصنع المورد أ.”
سيؤدي البحث القياسي عن “مخاطر الإنتاج” إلى استرداد تقرير إخباري. ومع ذلك، من المحتمل أن يكون هناك نقص في السياق لربط هذا التقرير بأداء Factory Y. تتلقى LLM هذه الرسالة ولكنها لا تستطيع الإجابة على سؤال تجاري رئيسي: “ما هي المصانع المعرضة للخطر؟”
في الإنتاج، يتجلى هذا في الهلوسة. تحاول LLM سد الفجوة بين التقارير الإخبارية والمصنع، لكنها تفتقر إلى رابط واضح، مما يؤدي إلى تخمين العلاقات أو إرجاع الرد “لا أعرف” على الرغم من وجود البيانات في النظام.
النمط: الاسترداد المختلط
لحل هذه المشكلة، ننتقل من معمارية “Flat RAG” إلى معمارية “Graph RAG”. يتضمن ذلك مكدسًا من ثلاث طبقات:
-
الاستقبال (الدرس “ميتا”): في Meta، أثناء العمل على البنية التحتية لتسجيل المتجر، تعلمنا أنه يجب تنفيذ البنية أثناء المعالجة. لا يمكنك ضمان التحليل الموثوق به إذا حاولت لاحقًا إعادة بناء البنية من السجلات غير المنظمة. وبالمثل، في RAG نحتاج إلى استخراج الكيانات (العقد) والعلاقات (الحواف) أثناء المعالجة. يمكننا استخدام نموذج LLM أو نموذج التعرف على الكيانات المسماة (NER) لاستخراج الكيانات من أجزاء النص وربطها بالسجلات الموجودة في المخطط.
-
تخزين: نحن نستخدم قاعدة بيانات الرسم البياني (مثل Neo4j) لتخزين الرسم البياني المنظم. يتم تخزين تضمينات المتجهات كخصائص في عقد محددة (مثل عقدة RiskEvent).
-
يبحث: نقوم بإجراء استعلام مختلط:
التنفيذ المرجعي
دعونا نبني تطبيقًا مبسطًا لمحلل مخاطر سلسلة التوريد هذا باستخدام Python وNeo4j وOpenAI.
1. نمذجة الرسم البياني
نحن بحاجة إلى إطار يربط “أحداث المخاطر” غير المنظمة لدينا بكيانات “سلسلة التوريد” المنظمة لدينا.
2. الاستقبال: هيكل الرابطة ودلالاتها
في هذه المرحلة، نفترض أن الرسم البياني الهيكلي (الموردون -> المصانع) موجود بالفعل. نحصل على “حدث خطر” جديد وغير منظم ونربطه بالرسم البياني.
3. طلب التنزيل المختلط
هذا هو التمييز الأساسي. بدلاً من مجرد إرجاع أجزاء top-k، نستخدم Cypher لإجراء بحث متجه للعثور على الحدث ثم الانتقال للأسفل للعثور على التأثير.
النتيجة: بدلاً من جزء نص عام، تتلقى LLM حمولة منظمة:
({‘المشكلة’: ‘فيضانات شديدة…’، ‘المورد_المتأثر’: ‘TechChip Inc’، ‘risk_to_factory’: ‘مصنع تجميع ألفا’})
وهذا يسمح لـ LLM بإنشاء إجابة دقيقة: “الفيضانات في شركة TechChip Inc تعرض مصنع تجميع ألفا للخطر.”
دروس الإنتاج: الكمون والاتساق
يتطلب نقل هذه البنية من الكمبيوتر المحمول إلى بيئة الإنتاج تقديم تنازلات.
1. ضريبة التأخير
يعد اجتياز الرسم البياني أكثر تكلفة من البحث البسيط عن المتجهات. في عملي على تجارب صور المنتج في Meta، تعاملنا مع ميزانيات زمن الوصول الصارمة حيث أثر كل مللي ثانية على تجربة المستخدم. على الرغم من أن المجال كان مختلفًا، إلا أن درس الهندسة المعمارية كان مرتبطًا بشكل مباشر بـ Graph RAG: لا يمكنك حساب كل شيء بسرعة.
التخفيف: نحن نستخدم التخزين المؤقت الدلالي. إذا طرح المستخدم سؤالاً مشابهًا (تشابه جيب التمام > 0.85) لاستعلام سابق، فإننا نعرض نتيجة الرسم البياني المخزنة مؤقتًا. يؤدي هذا إلى تقليل “ضريبة الرسم البياني” للاستعلامات الشائعة.
2. مشكلة “الحافة القديمة”.
في قواعد بيانات المتجهات، تكون البيانات مستقلة. في المخطط، البيانات تابعة. إذا توقف المورد “أ” عن توريد المصنع “ص” مع بقاء الميزة في الرسم البياني، فمن المؤكد أن نظام RAG سيتخيل علاقة لم تعد موجودة.
التخفيف: يجب أن يكون لعلاقات الرسم البياني مدة صلاحية (TTL) أو أن تتم مزامنتها عبر مسارات التقاط بيانات التغيير (CDC) من مصدر الحقيقة (نظام ERP).
إطار اتخاذ القرار بشأن البنية التحتية
هل يجب عليك اعتماد الرسم البياني RAG؟ هذا هو الإطار الذي نستخدمه في Cognee:
-
استخدم ناقل RAG إذا:
-
الجسم مسطح (على سبيل المثال، ملف Wiki أو Slack مفكك).
-
الأسئلة واسعة النطاق (“كيف يمكنني إعادة تعيين VPN الخاص بي؟”).
-
الكمون <200 مللي ثانية هو مطلب صعب.
-
-
استخدم RAG المحسّن للرسم البياني إذا:
-
يتم تنظيم المجال (المالية والرعاية الصحية).
-
“التفسير” مطلوب (يجب إظهار المسار).
-
تعتمد الإجابة على العلاقات متعددة القفزات (“ما هي الشركات التابعة الوسيطة التي تتأثر؟”).
-
طلب
لا يحل RAG المحسّن بيانيًا محل بحث المتجهات، ولكنه يعد تطورًا ضروريًا للمجالات المعقدة. من خلال التعامل مع البنية التحتية الخاصة بك مثل الرسم البياني المعرفي، فإنك تمنح LLM الشيء الوحيد الذي لا يمكن أن يهلوسه: الحقيقة الهيكلية حول عملك.
دولت أميرخانوف هو مهندس برمجيات في UseBead.
مرحبًا بك في مجتمع VentureBeat!
في برنامج نشر الضيوف الخاص بنا، يشارك خبراء التكنولوجيا الأفكار ويقدمون معلومات محايدة ومتعمقة حول الذكاء الاصطناعي والبنية التحتية للبيانات والأمن السيبراني وغيرها من التقنيات المتطورة التي تشكل مستقبل المؤسسات.
اقرأ المزيد من برنامج نشر الضيوف لدينا – وتحقق من موقعنا المبادئ التوجيهية إذا كنت مهتمًا بالمساهمة في مقالتك الخاصة!











