مایکروسافت بهروزرسانی GraphRAG را اعلام کرد که توانایی موتورهای جستجوی هوش مصنوعی را برای ارائه پاسخهای خاص و جامع در عین استفاده از منابع کمتر بهبود میبخشد. این به روز رسانی سرعت پردازش LLM را افزایش می دهد و دقت را افزایش می دهد.
تفاوت بین RAG و GraphRAG
RAG (Retrieval Augmented Generation) یک مدل زبان بزرگ (LLM) را با یک فهرست جستجو (یا پایگاه داده) ترکیب می کند تا پاسخ هایی را به جستارهای جستجو ایجاد کند. فهرست جستجو، مدل زبان را با دادههای تازه و مرتبط استوار میکند. این امکان را کاهش می دهد که موتور جستجوی هوش مصنوعی پاسخ های قدیمی یا توهم ارائه دهد.
GraphRAG با استفاده از یک نمودار دانش ایجاد شده از یک فهرست جستجو برای ایجاد خلاصههایی که به عنوان گزارشهای جامعه نامیده میشوند، RAG را بهبود میبخشد.
GraphRAG از یک فرآیند دو مرحله ای استفاده می کند:
مرحله 1: موتور نمایه سازی
موتور نمایه سازی فهرست جستجو را به جوامع موضوعی که پیرامون موضوعات مرتبط تشکیل شده اند تقسیم می کند. این جوامع توسط موجودیت ها (مثلاً افراد، مکان ها یا مفاهیم) و روابط بین آنها به هم متصل می شوند و یک نمودار دانش سلسله مراتبی را تشکیل می دهند. سپس LLM برای هر جامعه خلاصه ای ایجاد می کند که به آن گزارش جامعه می گویند. این نمودار دانش سلسله مراتبی است که GraphRAG ایجاد می کند و هر سطح از ساختار سلسله مراتبی خلاصه ای را نشان می دهد.
این تصور غلط وجود دارد که GraphRAG از نمودارهای دانش استفاده می کند. اگرچه این تا حدی درست است، اما مهمترین بخش را نادیده می گیرد: GraphRAG نمودارهای دانش را از داده های بدون ساختار مانند صفحات وب در مرحله Indexing Engine ایجاد می کند. این فرآیند تبدیل دادههای خام به دانش ساختیافته، همان چیزی است که GraphRAG را از RAG متمایز میکند، که بر بازیابی و خلاصهسازی اطلاعات بدون ایجاد یک نمودار سلسله مراتبی متکی است.
مرحله 2: مرحله پرس و جو
در مرحله دوم GraphRAG از نمودار دانشی که ایجاد کرده است برای ارائه زمینه به LLM استفاده می کند تا بتواند با دقت بیشتری به یک سوال پاسخ دهد.
مایکروسافت توضیح میدهد که Retrieval Augmented Generation (RAG) برای بازیابی اطلاعاتی که بر اساس یک موضوع است تلاش میکند، زیرا فقط به روابط معنایی نگاه میکند.
GraphRAG با تبدیل تمام اسناد موجود در فهرست جستجوی خود به یک نمودار دانش که به صورت سلسله مراتبی موضوعات و موضوعات فرعی (موضوعات) را در لایههای خاص سازماندهی میکند، از RAG بهتر عمل میکند. در حالی که RAG برای یافتن پاسخ به روابط معنایی متکی است، GraphRAG از شباهت موضوعی استفاده میکند و آن را قادر میسازد تا پاسخها را حتی زمانی که کلمات کلیدی مرتبط معنایی در سند وجود ندارند، پیدا کند.
اعلان اصلی GraphRAG اینگونه توضیح می دهد:
RAG پایه با پرس و جوهایی که نیاز به تجمیع اطلاعات در سراسر مجموعه داده برای ایجاد یک پاسخ دارند، مبارزه می کند. پرس و جوهایی مانند “5 موضوع برتر در داده ها کدامند؟” عملکرد وحشتناکی دارد زیرا RAG پایه به جستجوی برداری از محتوای متنی مشابه معنایی در مجموعه داده متکی است. چیزی در پرس و جو وجود ندارد که آن را به اطلاعات صحیح هدایت کند.
با این حال، با GraphRAG میتوانیم به چنین سؤالاتی پاسخ دهیم، زیرا ساختار نمودار دانش تولید شده توسط LLM به ما درباره ساختار (و در نتیجه مضامین) مجموعه داده به عنوان یک کل میگوید. این اجازه می دهد تا مجموعه داده خصوصی در خوشه های معنایی معنادار که از قبل خلاصه شده اند سازماندهی شوند. LLM از این خوشه ها برای خلاصه کردن این مضامین در هنگام پاسخ دادن به درخواست کاربر استفاده می کند.
به روز رسانی به GraphRAG
برای جمع بندی، GraphRAG یک نمودار دانش از فهرست جستجو ایجاد می کند. «جامعه» به گروهی از بخشها یا اسناد مرتبط اشاره دارد که بر اساس شباهت موضوعی خوشهبندی شدهاند، و «گزارش جامعه» خلاصهای است که توسط LLM برای هر جامعه ایجاد میشود.
نسخه اصلی GraphRAG ناکارآمد بود زیرا همه گزارشهای جامعه، از جمله خلاصههای سطح پایینتر نامربوط را بدون توجه به ارتباط آنها با جستار جستجو، پردازش میکرد. مایکروسافت این را به عنوان یک رویکرد “ایستا” توصیف می کند زیرا فاقد فیلتر پویا است.
GraphRAG به روز شده “انتخاب جامعه پویا” را معرفی می کند که ارتباط هر گزارش جامعه را ارزیابی می کند. گزارشهای نامربوط و زیرمجموعههای آنها حذف میشوند و کارایی و دقت را تنها با تمرکز بر اطلاعات مرتبط بهبود میبخشند.
مایکروسافت توضیح می دهد:
در اینجا، ما انتخاب جامعه پویا را به الگوریتم جستجوی جهانی معرفی میکنیم که از ساختار نمودار دانش مجموعه دادههای نمایهسازی شده استفاده میکند. با شروع از ریشه نمودار دانش، از یک LLM برای ارزیابی میزان مرتبط بودن گزارش جامعه در پاسخ به سؤال کاربر استفاده می کنیم. اگر گزارش نامربوط تلقی شود، ما به سادگی آن و گرههای آن (یا جوامع فرعی) را از فرآیند جستجو حذف میکنیم. از سوی دیگر، اگر گزارش مربوطه تلقی شود، سپس از گره های فرزند آن عبور کرده و عملیات را تکرار می کنیم. در نهایت، فقط گزارشهای مربوطه به عملیات کاهش نقشه ارسال میشود تا پاسخی برای کاربر ایجاد کند. “
نکات مهم: نتایج GraphRAG به روز شده
مایکروسافت نسخه جدید GraphRAG را آزمایش کرد و به این نتیجه رسید که منجر به کاهش ۷۷ درصدی هزینههای محاسباتی، بهویژه هزینه توکن هنگام پردازش توسط LLM شده است. توکن ها واحدهای اساسی متن هستند که توسط LLM ها پردازش می شوند. GraphRAG بهبودیافته قادر است از یک LLM کوچکتر استفاده کند و هزینه ها را بدون به خطر انداختن کیفیت نتایج کاهش دهد.
تأثیرات مثبت بر کیفیت نتایج جستجو عبارتند از:
- جستجوی پویا پاسخ هایی را ارائه می دهد که اطلاعات خاص تری هستند.
- Responses ارجاع بیشتری به مطالب منبع می دهد که اعتبار پاسخ ها را بهبود می بخشد.
- نتایج جامعتر و مختص درخواست کاربر است که به جلوگیری از ارائه اطلاعات بیش از حد کمک میکند.
انتخاب جامعه پویا در GraphRAG کیفیت نتایج جستجو را با ایجاد پاسخهایی که خاصتر، مرتبطتر و توسط منبع منبع پشتیبانی میشوند، بهبود میبخشد.
اطلاعیه مایکروسافت را بخوانید:
GraphRAG: بهبود جستجوی جهانی از طریق انتخاب جامعه پویا
تصویر برجسته توسط Shutterstock/N Universe