فتح قوة الرسوم البيانية للمعرفة: استكشاف الرسوم البيانية RAG لتحسين الاسترجاع المعزز بالتوليد
افتح قوة رسوم المعرفة باستخدام Graph RAG ، وهو نظام ثوري يجمع بين رسوم المعرفة والاسترجاع المعزز بالتوليد (RAG) لتحسين الاسترجاع والتوليد. استكشف التفاصيل الفنية ، وقم بإعداده محليًا ، وقم بتقييم آثار التكلفة. اكتشف كيف يعالج Graph RAG قيود نهج RAG التقليدي.
١٤ فبراير ٢٠٢٥

افتح قوة رسوم المعرفة باستخدام Graph RAG ، وهو نظام ثوري يجمع بين فوائد Retrieval Augmented Generation (RAG) والفهم السياقي لرسوم المعرفة. استكشف كيف يمكن أن يعزز هذا النهج المبتكر إنشاء المحتوى الخاص بك وتحسين دقة وصلة استجاباتك ، مع الحصول على رؤى حول آثار التكلفة لتشغيل Graph RAG.
اكتشف قوة Graph RAG: تعزيز توليد الاسترجاع المعزز بالمعرفة باستخدام الرسوم البيانية
فهم RAG التقليدي: القيود والدوافع
استكشاف التفاصيل الفنية لـ Graph RAG
إعداد Graph RAG على جهاز الكمبيوتر المحلي الخاص بك
مقارنة آثار التكلفة لـ Graph RAG و RAG التقليدي
استكشاف حلول Graph RAG الأخرى: غوص أعمق
الخاتمة
اكتشف قوة Graph RAG: تعزيز توليد الاسترجاع المعزز بالمعرفة باستخدام الرسوم البيانية
اكتشف قوة Graph RAG: تعزيز توليد الاسترجاع المعزز بالمعرفة باستخدام الرسوم البيانية
يُعد نظام Graph RAG نظامًا رائدًا يجمع بين الرسوم البيانية المعرفية وتوليد المساعدة المسترجعة (RAG) لمعالجة قيود نهج RAG التقليدي. من خلال الاستفادة من الرسوم البيانية المعرفية، يوفر Graph RAG فهمًا أكثر شمولية للمجموعة الأساسية، مما يؤدي إلى استجابات أكثر دقة وصلة بالسياق.
تشمل الجوانب الرئيسية لـ Graph RAG:
-
مرحلة الفهرسة: في هذه المرحلة، يتم معالجة المستندات المصدرية واستخراج الكيانات واستخدامها لإنشاء رسم بياني معرفي. يمثل الرسم البياني المعرفي العلاقات بين الكيانات المختلفة، والتي يتم استخدامها لإنشاء ملخصات على مستويات مختلفة من التفاصيل.
-
مرحلة الاستعلام: عند تقديم استعلام المستخدم، يقوم Graph RAG باختيار مستوى المجتمع (الملخص) المناسب بناءً على الاستعلام واسترداد المعلومات ذات الصلة. يتم بعد ذلك دمج الاستجابات من مجتمعات متعددة لتوليد الإجابة النهائية.
يعالج هذا النهج قيود RAG التقليدي، مثل محدودية الفهم السياقي ومشاكل القابلية للتطوير. من خلال دمج الرسوم البيانية المعرفية، يمكن لـ Graph RAG توفير فهم أكثر شمولية للبيانات الأساسية، مما يؤدي إلى استجابات أكثر دقة وتماسكًا.
فهم RAG التقليدي: القيود والدوافع
فهم RAG التقليدي: القيود والدوافع
يُعد Retrieval Augmented Generation (RAG) التقليدي طريقة حيث يسترجع نموذج اللغة المستندات ذات الصلة من مجموعة كبيرة لتوليد استجابات أكثر دقة وصلة بالسياق. ينطوي هذا النهج على ثلاث خطوات رئيسية:
-
معالجة المستند وتضمين: يتم تقسيم المستندات الأصلية إلى قطع أصغر باستخدام استراتيجية تجزئة. يتم بعد ذلك حساب التضمينات لكل قطعة وتخزينها في متجر المتجهات، والذي يصبح قاعدة المعرفة.
-
مرحلة الاستعلام: عندما يطرح المستخدم سؤالًا، يتم حساب التضمينات للاستعلام وإجراء بحث تشابه على متجر المتجهات لاسترداد القطع أو الوثائق الفرعية الأكثر صلة.
-
توليد الاستجابة: يتم دمج السياق المسترجع مع الاستعلام الأصلي وإدخاله إلى نموذج لغة كبير لتوليد الاستجابة النهائية.
ومع ذلك، فإن هذا النهج التقليدي لـ RAG له عدة قيود:
-
فهم سياقي محدود: قد يفوت RAG بعض الدقائق في البيانات بسبب اعتماده على المستندات المسترجعة فقط. إنه لا يملك نظرة شاملة للمستند، لذا لا يفهم الصورة الكاملة.
-
مشاكل القابلية للتطوير: مع نمو المجموعة، قد يصبح عملية الاسترداد أقل كفاءة.
-
تعقيد دمج مصادر المعرفة الخارجية: قد يكون دمج مصادر المعرفة الخارجية بطريقة ذات معنى معقدًا وشاقًا.
استكشاف التفاصيل الفنية لـ Graph RAG
استكشاف التفاصيل الفنية لـ Graph RAG
يُعد Graph RAG نهجًا جديدًا يجمع بين الرسوم البيانية المعرفية وتوليد المساعدة المسترجعة (RAG) لمعالجة قيود أنظمة RAG التقليدية. الخطوات الرئيسية المشاركة في عملية Graph RAG هي كما يلي:
-
مرحلة الفهرسة:
- يتم تجزئة المستندات المصدرية إلى وثائق فرعية أصغر.
- داخل كل قطعة، يتم تحديد الكيانات (مثل الأشخاص والأماكن والشركات)، واستخراج العلاقات بين هذه الكيانات.
- يتم استخدام هذه المعلومات لإنشاء رسم بياني معرفي، حيث تمثل الكيانات العقد والعلاقات بينها تمثل الحواف.
- يتم بعد ذلك استخدام الرسم البياني المعرفي لاكتشاف المجتمعات، وهي مجموعات من الكيانات المترابطة بشكل وثيق.
- يتم إنشاء ملخصات لكل مجتمع على مستويات مختلفة من التفاصيل، تتراوح من العالمي (المستوى المرتفع) إلى المحلي (أكثر تفصيلاً).
-
مرحلة الاستعلام:
- عند استلام استعلام المستخدم، يتم اختيار مستوى المجتمع المناسب (عالمي أو متوسط أو محلي) بناءً على مستوى التفاصيل المطلوب.
- يتم استرداد الملخصات للمجتمعات ذات الصلة، ويتم دمج هذه الاستجابات الجزئية لتوليد الإجابة النهائية.
يوفر هذا النهج العديد من المزايا مقارنةً بأنظمة RAG التقليدية:
- تحسين الفهم السياقي: من خلال الاستفادة من الرسم البياني المعرفي وملخصات مستوى المجتمع، يمكن لـ Graph RAG التقاط السياق الشامل والدقائق للمستندات المصدرية بشكل أفضل، بدلاً من الاعتماد فقط على المستندات المسترجعة.
- تعزيز القابلية للتطوير: مع نمو المجموعة، يمكن أن تساعد ملخصات مستوى المجتمع في الحفاظ على الاسترداد والاستجابة الفعالة، مما يخفف من مشاكل القابلية للتطوير في RAG التقليدي.
- تكامل أبسط: يوفر النهج القائم على الرسم البياني المعرفي طريقة أكثر هيكلية وذات معنى لدمج مصادر المعرفة الخارجية، مما يجعل العملية أقل تعقيدًا وشاقة.
ومع ذلك، فإن نهج Graph RAG يأتي أيضًا بعيب محتمل: التكلفة المرتبطة بتشغيل النظام. قد تكون مرحلة الفهرسة، والتي تتضمن استخراج الكيانات وتحديد العلاقات وتلخيص المجتمع، مكلفة من الناحية الحسابية وتتكبد تكاليف كبيرة، خاصةً عند استخدام نماذج اللغة الكبيرة مثل GPT-4.
في المثال المقدم، كانت تكلفة تشغيل Graph RAG على كتاب واحد (قصة عيد الميلاد) حوالي 7 دولارات، وهو ما قد يكون مكلفًا للغاية بالنسبة للمجموعات الأكبر. هذا العامل التكلفة هو شيء يجب مراعاته عند اتخاذ قرار باستخدام Graph RAG أو نظام RAG تقليدي في تطبيقك.
إعداد Graph RAG على جهاز الكمبيوتر المحلي الخاص بك
إعداد Graph RAG على جهاز الكمبيوتر المحلي الخاص بك
لإعداد Graph RAG على جهاز الكمبيوتر المحلي الخاص بك، اتبع هذه الخطوات:
-
إنشاء بيئة افتراضية Conda:
conda create -n graphrag python=3.9 conda activate graphrag
-
تثبيت حزمة Graph RAG:
pip install graphrag
-
إنشاء دليل لبيانات الاختبار الخاصة بك:
mkdir -p rag_test/input
-
تنزيل مجموعة بيانات نموذجية، مثل نص "قصة عيد الميلاد" لتشارلز ديكنز:
python -m graphrag.index --root_dir rag_test/input --download_sample_data
-
إعداد متغيرات المساحة العملية والتكوينات:
python -m graphrag.index --root_dir rag_test/input --init_config
سيؤدي هذا إلى إنشاء ملف
settings.yml
حيث يمكنك تكوين مفتاح API الخاص بك والنموذج وإعدادات أخرى. -
قم بتشغيل عملية الفهرسة لإنشاء الرسم البياني المعرفي:
python -m graphrag.index --root_dir rag_test/input
قد تستغرق هذه الخطوة بعض الوقت، حيث تتضمن استخراج الكيانات وتحديد العلاقات وتلخيص المجتمع.
-
تشغيل استعلامات نموذجية:
python -m graphrag.query --root_dir rag_test --method global --prompt "ما هي الموضوعات الرئيسية في هذه القصة؟" python -m graphrag.query --root_dir rag_test --method local --prompt "ما هي العلاقة بين سكروج وبوب كراتشيت؟"
تسترجع طريقة "global" المعلومات على أعلى مستوى، بينما تركز طريقة "local" على الكيانات المحددة وعلاقاتها.
-
تحليل آثار التكلفة: قد تكون عملية الفهرسة مكلفة، خاصةً عند استخدام نماذج اللغة الكبيرة مثل GPT-4. يوضح المثال المقدم في النص أن معالجة كتاب واحد قد تكلف حوالي 7 دولارات. ضع في اعتبارك آثار التكلفة عند تطبيق Graph RAG على مجموعات بيانات أكبر.
هذه هي عملية الإعداد الأساسية لتشغيل Graph RAG على جهاز الكمبيوتر المحلي الخاص بك. تذكر تخصيص التكوينات والمطالبات لتناسب حالة الاستخدام المحددة الخاصة بك.
مقارنة آثار التكلفة لـ Graph RAG و RAG التقليدي
مقارنة آثار التكلفة لـ Graph RAG و RAG التقليدي
في المثال المقدم، كانت آثار التكلفة باستخدام Graph RAG كبيرة. بلغت التكلفة الإجمالية لمعالجة الكتاب وإنشاء Graph RAG حوالي 7 دولارات، وهو ما قد يكون مكلفًا للغاية بالنسبة لمجموعات البيانات الكبيرة.
كانت العوامل الرئيسية المساهمة في التكلفة المرتفعة هي:
-
طلبات API: قام نهج Graph RAG بإجراء ما مجموعه 570 طلبًا عبر API، بشكل أساسي لنموذج GPT-4. في المقابل، من المرجح أن يكون لدى النهج التقليدي لـ RAG عدد أقل من طلبات API.
-
معالجة الرموز: تضمنت عملية Graph RAG معالجة أكثر من مليون رمز، مما ساهم في التكلفة الإجمالية.
بالمقارنة، من المرجح أن يكون لدى نظام RAG التقليدي تكلفة أقل، حيث لا يتطلب الخطوات الإضافية لاستخراج الكيانات وتحديد العلاقات وتلخيص المجتمع
التعليمات
التعليمات