GraphRAG (FA)

From Systems analysis Wiki
Jump to navigation Jump to search

GraphRAG — یک پارادایم پیشرفته‌ی Retrieval-Augmented Generation (RAG) است که در آن به‌جای جستجوی سنتی در میان قطعات متنی پراکنده (چانک‌ها)، از گراف دانش (Knowledge Graph, KG) استفاده می‌شود[1]. ساختار گرافی به‌صورت صریح روابط میان موجودیت‌ها و سلسله‌مراتب مفاهیم حوزه را نمایش می‌دهد، که این امر به LLM اجازه می‌دهد استخراج دانش چندمرحله‌ای را انجام دهد و پاسخ‌هایی آگاه‌تر از بافت و قابل‌توضیح‌تر تولید کند[2].

رویکرد GraphRAG در مقایسه با RAG کلاسیک، برتری قابل‌توجهی در رسیدگی به پرسش‌های پیچیده و چندگامه (multi‑hop) نشان می‌دهد؛ جایی که پاسخ به ترکیبی از چند واقعیت پراکنده در اسناد مختلف بستگی دارد[3].

محدودیت‌های RAG کلاسیک و مزایای گراف

RAG کلاسیک که بر جستجوی برداری در متن ساختارنیافته متکی است، با محدودیت‌های بنیادینی روبرو می‌شود که در سناریوهای پیچیده سازمانی حیاتی می‌گردند:

  • فقدان روابط ساختاری: RAG سنتی چانک‌های متنی را به‌عنوان واحدهای مجزا پردازش می‌کند و روابط صریح میان آن‌ها را نمی‌بیند. این موضوع آن را برای پرسش‌های multi‑hop ناکارآمد می‌سازد؛ جایی که برای پاسخ‌دادن باید از زنجیره‌ای از واقعیت‌ها عبور کرد (A→B→C)، اما جستجو تنها حلقه‌های ابتدایی و انتهایی (A و C) را پیدا می‌کند و حلقه‌های میانی را از دست می‌دهد[1].
  • ابهام معنایی: در حوزه‌های تخصصی (پزشکی، حقوق، مهندسی) اصطلاحات دارای معانی ویژه‌ای هستند. جستجوی برداری، که موضوع کلی را می‌یابد، ممکن است نقش یک موجودیت خاص را اشتباه تفسیر کرده و در نتیجه بافت نامربوطی را استخراج کند.
  • توضیح‌پذیری محدود: RAG کلاسیک قطعاتی از اسناد ارائه می‌دهد، اما شواهد صریحی از چگونگی پیوند این قطعات در یک زنجیره منطقی ندارد. GraphRAG در مقابل، این فرآیند را شفاف می‌سازد و مسیر در گراف را به‌عنوان دلیل ارائه می‌دهد و مستلزم ارجاع‌دهی ادعاها به منابع (استناد) است[4].

GraphRAG این مشکلات را با نمایش دانش به‌صورت شبکه‌ای از موجودیت‌ها و روابط به هم پیوسته حل می‌کند و به سیستم اجازه می‌دهد نه‌تنها متن مشابه را بیابد، بلکه بر اساس مدل صوری‌شده‌ی حوزه، استنتاج منطقی انجام دهد.

معماری GraphRAG

پایپ‌لاین کلی GraphRAG، RAG کلاسیک را با افزودن مراحل ساخت و استفاده از گراف دانش گسترش می‌دهد. این پایپ‌لاین به دو مرحله اصلی تقسیم می‌شود: آماده‌سازی آفلاین و پردازش آنلاین پرسش.

مرحله ۱: ورود و ایندکس‌سازی داده‌ها (آفلاین)

در این مرحله، داده‌های خام (اسناد، پایگاه‌های داده) به دو نمایش مکمل تبدیل می‌شوند: گرافی و برداری.

  1. استخراج دانش: واقعیت‌های ساختاریافته با استفاده از یک پایپ‌لاین NLP از متون استخراج می‌شوند:
    • Named Entity Recognition (NER): یافتن اشاره‌های موجودیت‌ها (افراد، سازمان‌ها، محصولات).
    • Entity Linking (EL): پیوند دادن اشاره‌ها به شناسه‌های قانونی در گراف برای رفع ابهام (برای مثال، «علی الف» و «ع. الف» به یک گره تبدیل می‌شوند)[5].
    • Relation Extraction (RE): شناسایی روابط میان موجودیت‌ها (برای مثال، شرکت Xخریداری کرداستارتاپ Y).
  2. مدل‌سازی و ذخیره‌سازی گراف: سه‌گانه‌های استخراج‌شده (موضوع-محمول-مفعول) در یک پایگاه داده گرافی بارگذاری می‌شوند. انتخاب مدل (Property Graph یا RDF) به وظیفه بستگی دارد. ذخیره‌سازی منشأ (provenance) هر واقعیت — ارجاع به سند منبع و قطعه متنی — از اهمیت حیاتی برخوردار است[3]. همچنین ابرداده‌هایی درباره زمان (valid_from/valid_to) و اطمینان (confidence) می‌توانند به گراف افزوده شوند.
  3. ایندکس‌سازی ترکیبی: موازی با گراف، یک ایندکس برداری برای قطعات متنی خام ایجاد می‌شود. این امر ترکیب جستجوی ساختاری بر اساس گراف با جستجوی معنایی بر اساس متن را ممکن می‌سازد.

مرحله ۲: پردازش پرسش و تولید پاسخ (آنلاین)

  1. تجزیه پرسش: پرسش کاربر برای شناسایی موجودیت‌های کلیدی که به‌عنوان «نقاط ورودی» به گراف عمل می‌کنند، تحلیل می‌شود.
  2. استخراج زیرگراف: به‌جای جستجوی چانک‌های جداگانه، GraphRAG یک زیرگراف مرتبط پیدا می‌کند — قطعه‌ای پیوسته از گراف در اطراف «نقاط ورودی» که اطلاعات لازم برای پاسخ را در بر دارد. برای این منظور از الگوریتم‌هایی مانند پیمایش k‑hop یا Personalized PageRank (PPR) استفاده می‌شود[6].
  3. جستجوی ترکیبی و ادغام نتایج: موازی با استخراج زیرگراف، جستجو در ایندکس برداری و/یا لکسیکال (BM25) انجام می‌شود. نتایج گراف و متن ادغام شده و به مرحله بعد منتقل می‌گردند.
  4. بازرتبه‌بندی (Re‑ranking): فهرست ترکیبی کاندیداها (گره‌های گراف و چانک‌های متنی) با استفاده از یک مدل دقیق‌تر (برای مثال، کراس-انکودر) بازرتبه‌بندی می‌شود تا مرتبط‌ترین اطلاعات انتخاب شوند. این کار فیلتر کردن نویز و افزایش دقت را ممکن می‌سازد[7].
  5. بسته‌بندی بافت و تولید پاسخ: بافت انتخاب‌شده و رتبه‌بندی‌شده (زیرگراف و متون) به قالبی قابل‌فهم برای LLM تبدیل می‌شود (برای مثال، فهرستی از ادعاها با ذکر منابع). این بافت غنی‌شده در یک prompt برای تولید پاسخ نهایی قرار می‌گیرد.
  6. ردیابی و استناد: به لطف ارتباط «واقعیت ↔ منبع» در گراف، پاسخ تولیدشده حاوی ارجاعات دقیق به اسنادی است که هر ادعا را تأیید می‌کنند. این امر مستدل‌بودن و شفافیت بالایی را تضمین می‌کند.

جدول مقایسه‌ای مؤلفه‌ها

تحلیل مقایسه‌ای مؤلفه‌های کلیدی معماری GraphRAG
مؤلفه/جنبه گزینه‌های پیاده‌سازی مزایا معایب/ریسک‌ها چه زمانی ترجیح داده می‌شود
مدل گراف دانش RDF/OWL هستی‌شناسی دقیق، استنتاج منطقی (reasoning)، سازگاری با Linked Open Data. ذخیره‌سازی ویژگی‌های روابط (زمان، منبع) بدون موجودیت‌های اضافه (reification) دشوار است. حوزه‌های معناً غنی با هستی‌شناسی‌های موجود؛ در صورت نیاز به استنتاج.
Property Graph (Neo4j, etc.) انعطاف‌پذیری، ویژگی‌های دلخواه روی گره‌ها/یال‌ها، عملکرد بالا. نیاز به طرح‌واره دستی دقیق دارد، وگرنه خطر «بی‌نظمی»؛ فاقد استاندارد واحد. شروع سریع با داده‌های ساختارنیافته؛ یکپارچه‌سازی با اسناد (multi‑model DB).
استخراج زیرگراف k‑hop BFS / DFS تمام گره‌ها تا عمق k را پوشش می‌دهد، پیاده‌سازی ساده. «انفجار» گراف: رشد بهمن‌وار تعداد گره‌ها؛ ممکن است نویز زیادی بازگرداند. گراف‌های کوچک یا پیمایش با عمق ۱–۲؛ ساختارهای سلسله‌مراتبی.
Personalized PageRank (PPR) بر گره‌های واقعاً مرتبط تمرکز می‌کند، نویز فیلتر می‌شود[6]. ممکن است یک گره دور اما مهم را از دست بدهد (اگر مسیرهای کمی وجود داشته باشد اما آن گره حیاتی باشد). شبکه‌های پیچیده با مسیرهای متعدد (گراف اجتماعی، گراف استناد).
جستجوی ترکیبی فهرست ترکیبی (scalar fusion با وزن λ) تنظیم وزن‌های λ اجازه می‌دهد precision/recall را متناسب با وظیفه تعادل بخشید[8]. λ ثابت برای همه انواع پرسش‌ها بهینه نیست. در مرحله نمونه‌سازی؛ وقتی مشخص است که یک منبع آشکارا مهم‌تر است.
Cross‑encoder rerank افزایش قابل‌توجه دقت؛ امکان در نظر گرفتن روابط پیچیده. تأخیر را افزایش می‌دهد؛ نیاز به داده‌های آموزشی یا استفاده از مدل‌های آماده دارد[7]. سناریوهای high‑precision (حقوق، پزشکی) که در آن‌ها حداکثر بافت مرتبط اهمیت دارد.
امنیت داده‌ها فیلتر کردن زیرگراف (RBAC/ABAC) کنترل دانه‌ای (تا سطح گره) از نشت اطلاعات جلوگیری می‌کند. «نقاط کور»: اگر یک گره مهم حذف شود، پاسخ ممکن است ناقص باشد. در محیط‌های سازمانی با الزامات دسترسی سختگیرانه (PII، GDPR، اسرار تجاری).

ردیابی، اعتماد و امنیت

یکی از مزایای اصلی GraphRAG امکان نمایش زنجیره‌های شواهد شفاف است. به‌جای پاسخ «جعبه سیاه»، سیستم می‌تواند مسیر استدلال را نشان دهد: «واقعیت A در [doc1] ذکر شده است. این واقعیت با واقعیت B [doc2] مرتبط است، و B طبق [doc3] به C منجر می‌شود» — که این امر اعتماد کاربر را افزایش داده و اشکال‌زدایی را ساده‌تر می‌کند.

علاوه بر این، ساختار گرافی اجازه می‌دهد کنترل دسترسی دانه‌ای (RBAC/ABAC) پیاده‌سازی شود. هر گره یا یال در گراف می‌تواند برچسب دسترسی داشته باشد. هنگام استخراج زیرگراف، سیستم به‌طور خودکار داده‌هایی را که کاربر حق دسترسی به آن‌ها را ندارد فیلتر می‌کند و امنیت را در حوزه‌های حساس (مالی، منابع انسانی، پزشکی) تضمین می‌نماید.

ارزیابی کیفیت

ارزیابی سیستم GraphRAG چندمرحله‌ای است و شامل معیارهایی برای هر مؤلفه می‌شود:

  • معیارهای استخراج دانش: F1‑score برای NER و RE، به منظور ارزیابی کیفیت ساخت گراف.
  • معیارهای استخراج زیرگراف: Subgraph Recall@K (نسبت مواردی که گره‌ها/یال‌های لازم برای پاسخ در زیرگراف استخراج‌شده قرار گرفته‌اند) و Path Precision/Recall برای پرسش‌های multi‑hop.
  • معیارهای پاسخ LLM:
    • Faithfulness / Groundedness: میزانی که پاسخ به‌طور دقیق بر بافت ارائه‌شده متکی است.
    • ارزیابی انسانی: سنجش توسط کارشناسان بر اساس معیارهای درستی، کامل‌بودن و انسجام.

برای خودکارسازی ارزیابی، از بنچمارک‌های تخصصی (برای مثال، WebQuestionsSP، GrailQA) و فریم‌ورک‌ها (برای مثال، RAGAS) استفاده می‌شود[9].

همچنین ببینید

  • Retrieval‑Augmented Generation (RAG)
  • گراف دانش
  • پایگاه داده برداری
  • Embedding
  • عامل هوش مصنوعی
  • ارزیابی و بنچمارک‌های LLM

منابع

  • Zhang, Q. et al. (2025). A Survey of Graph Retrieval‑Augmented Generation for Customized Large Language Models. arXiv:2501.13958.
  • Xu, Z. et al. (2024). Retrieval‑Augmented Generation with Knowledge Graphs for Customer Service Question Answering. arXiv:2404.17723.
  • Hu, Y. et al. (2024). GRAG: Graph Retrieval‑Augmented Generation. arXiv:2405.16506.
  • Nakano, R. et al. (2021). WebGPT: Browser‑assisted Question‑Answering with Human Feedback. arXiv:2112.09332.
  • Yang, R. et al. (2025). KG‑IRAG: A Knowledge Graph‑Based Iterative Retrieval‑Augmented Generation Framework for Temporal Reasoning. arXiv:2503.14234.
  • Song, Y. et al. (2023). Advancements in Complex Knowledge Graph Question Answering: A Survey. DOI:10.3390/electronics12214395.
  • Nogueira, R.; Cho, K. (2019). Passage Re‑ranking with BERT. arXiv:1901.04085.
  • Hsu, H.‑L.; Tzeng, J. (2025). DAT: Dynamic Alpha Tuning for Hybrid Retrieval in Retrieval‑Augmented Generation. arXiv:2503.23013.
  • Lewis, P. et al. (2020). Retrieval‑Augmented Generation for Knowledge‑Intensive NLP Tasks. arXiv:2005.11401.
  • Karpukhin, V. et al. (2020). Dense Passage Retrieval for Open‑Domain Question Answering. arXiv:2004.04906.
  • Sun, H. et al. (2018). Open‑Domain Question Answering Using Early Fusion of Knowledge Bases and Text (GRAFT‑Net). arXiv:1809.00782.
  • Sun, H.; Bedrax‑Weiss, T.; Cohen, W. W. (2019). PullNet: Open‑Domain Question Answering with Iterative Retrieval on Knowledge Bases and Text. arXiv:1904.09537.
  • He, X. et al. (2024). G‑Retriever: Retrieval‑Augmented Generation for Textual Graph Understanding and Question Answering. arXiv:2402.07630.
  • Es, S.; James, J.; Espinosa‑Anke, L.; Schockaert, S. (2024). RAGAs: Automated Evaluation of Retrieval Augmented Generation. ACL:2024.eacl-demo.16.

یادداشت‌ها

  1. 1.0 1.1 Zhang, Q., et al. A Survey of Graph Retrieval-Augmented Generation for Customized Large Language Models. arXiv, 2025. arXiv:2501.13958.
  2. Xu, Z., et al. Retrieval-Augmented Generation with Knowledge Graphs for Customer Service Question Answering. SIGIR, 2024. arXiv:2404.17723; DOI: 10.1145/3626772.3661370.
  3. 3.0 3.1 Hu, Y., et al. GRAG: Graph Retrieval‑Augmented Generation. arXiv, 2024. arXiv:2405.16506; также в Findings of NAACL 2025: ACL Anthology.
  4. Nakano, R., et al. WebGPT: Browser‑assisted question‑answering with human feedback. arXiv, 2021. arXiv:2112.09332.
  5. Yang, R., et al. KG‑IRAG: A Knowledge Graph‑Based Iterative Retrieval‑Augmented Generation Framework for Temporal Reasoning. arXiv, 2025. arXiv:2503.14234.
  6. 6.0 6.1 Song, Y., Li, W., Dai, G., Shang, X. Advancements in Complex Knowledge Graph Question Answering: A Survey. Electronics, 2023. DOI: 10.3390/electronics12214395.
  7. 7.0 7.1 Nogueira, R., Cho, K. Passage Re‑ranking with BERT. arXiv, 2019. arXiv:1901.04085.
  8. Hsu, H.‑L.; Tzeng, J. DAT: Dynamic Alpha Tuning for Hybrid Retrieval in Retrieval‑Augmented Generation. arXiv, 2025. arXiv:2503.23013.
  9. Es, S.; James, J.; Espinosa Anke, L.; Schockaert, S. RAGAs: Automated Evaluation of Retrieval Augmented Generation. EACL (System Demonstrations), 2024. ACL:2024.eacl-demo.16; также preprint: arXiv:2309.15217.