هتارَگ: ترکیب خفن چند جور دیتابیس برای جواب‌ دادن بهتر با هوش مصنوعی

Fall Back

اگه یه مدت تو دنیای هوش مصنوعی و مدل‌های زبانی گشتی، حتما اسم RAG یا همون Retrieval-augmented generation به گوشت خورده. خلاصه‌ش اینه که RAG یعنی موقع جواب دادن، مدل می‌ره دنبال اطلاعاتی که لازم داره و از یه سری دیتابیس یا منابع خودش اطلاعات رو بیرون می‌کشه و باهاش جواب رو می‌سازه. این روش خیلی کاربردی شده واسه اینکه جواب‌های مدل‌های زبانی خیلی وقتا اشتباه درمیاد (بهش میگن hallucination، یعنی مدل از خودش جواب در میاره!) یا اطلاعاتشون قدیمی و از رده خارج میشه.

حالا مشکل چیه؟ اگه یه شرکت یا سازمان بخواد از RAG استفاده کنه، معمولاً فقط از یه مدل دیتابیس استفاده می‌کنه. مثلاً فقط دیتابیس برداری (Vector Database) که ارتباط معنایی جملات رو می‌فهمه، یا فقط گراف دانش (Knowledge Graph) که روابط دقیق بین داده‌ها رو نشون می‌ده، یا فقط جستجوی متنی کامل (Full-Text Search) که عین یه لغت رو سریع پیدا می‌کنه. هرکدوم از این‌ها مشکلات خودشون رو دارن:

  • دیتابیس برداری فهم معنایی خوبی داره، ولی بعضی وقتا کلیت موضوع رو از دست می‌ده.
  • گراف دانش تو روابط دقیق خفن عمل می‌کنه، ولی یادش می‌ره خیلی از جواب‌ها رو.
  • موتور جستجوی متنی خیلی سریع و دقیق کار می‌کنه، ولی اصلا نمی‌فهمه دنبال چی می‌گردی!
  • دیتابیس رابطه‌ای (مثل MySQL) برای‌ کارهای مالی و اینا عالیه، ولی هیچ برداشتی از معنی حرف‌های ما نداره.

حالا راه‌حل چیه؟ نویسنده‌های این مقاله اومدن یه سیستم جدید معرفی کردن به اسم HetaRAG که ترکیبی از همه این منابع اطلاعاتیه! یعنی به جای اینکه فقط با یه مدل دیتابیس کار کنه، می‌ره چندتا جور دیتابیس مختلف (برداری، گراف دانش، متنی و رابطه‌ای) رو با هم قاطی و هماهنگ می‌کنه تا هرکدوم ضعف‌های یکی دیگه رو جبران کنن.

اسم این کار “Hybrid, Deep Retrieval” هست. یعنی جستجو عمیق و ترکیبی که از چند منبع ناهمگون (Heterogeneous Data Stores – یعنی دیتابیس‌هایی که هرکدوم شکل و ساختار خودشونو دارن) استفاده می‌کنه و به بهترین نحو جواب رو جمع‌آوری می‌کنه.

اونا یه سیستم طراحی کردن که بتونه هرجور دیتابیس و موتور جستجویی رو با هم بچسبونه و با هم کار کنن. اینطوری هم دقت (Precision) جواب‌ها رو بالاتر می‌بره، هم احتمال اینکه جواب درست رو پیدا کنه (Recall) بیشتر می‌شه، هم متن جواب‌ها مرتبط و دقیق‌تر میشه. برای رسیدن به این هدف، یه نسخه اولیه از pipeline (یعنی مسیر پردازش اطلاعات توی مدل) رو پیاده‌سازی کردن و نتایج اولیه‌شو معرفی کردن.

برخلاف بسیاری از سیستم‌های فعلی که همه‌چیز رو توی یه شکل خاص دیتابیس می‌ریزن (که خب هرکدوم یجور مشکل داشتن)، HetaRAG با ترکیب نقاط قوت همه، سعی می‌کنه ضعف هیچکدوم غالب نشه.

قسمتی از کد و کارهای اولیه این پروژه رو تو گیت‌هاب گذاشتن (https://github.com/KnowledgeXLab/HetaRAG)، پس اگه کنجکاوی می‌تونی بری یه سری بهش بزنی.

در کل، HetaRAG باعث میشه مدل‌های زبانی بتونن جواب‌های قابل اعتمادتر، کامل‌تر و بروزتری ارائه بدن، بدون اینکه همش مجبور باشن آموزش‌های گرون و زمان‌بر ببینن. این یعنی قدم بزرگی برای هوش مصنوعی کاربردی و همه‌گیر! اگه باهوش‌ترین دوستت بخواد از هوش مصنوعی توی یه شرکت واقعی استفاده کنه و امنیت داده‌ها براش مهم باشه، چه گزینه‌ای بهتر از HetaRAG؟!

منبع: +