کد خبر: 49272
تاریخ انتشار: جمعه, 09 آذر 1403 - 11:34

داخلی

»

مقاله های روز

بازیابی سیستم های نسل افزوده چیست؟

منبع : لیزنا
دکتر جعفر مهراد 
بازیابی سیستم های نسل افزوده چیست؟

دکتر جعفر مهراد استاد پیشکسوت دانشگاه شیراز و بنیانگذار موسسه ISC: برای این که هوش مصنوعی هوشمندتر شود و پاسخ های مفید و مرتبط تری را ارائه کند، لازم است که پایگاه های دانش، اطلاعات زمینه ای بیشتری در هنگام پاسخ دادن به سوالات کاربران در اختیار داشته باشد.

این جاست که رویکردهای جدیدی مانند بازیابی نسل افزوده Retrieval Augmented Generation (RAG) اکنون پا به عرصه حیات علمی گذاشته و با ادغام در مدل های زبان بزرگ، مانند چت جی پی تی از شرکت OpenAI، به یکی از محبوبترین و شناخته شده ترین ابزارها تبدیل شده است(١).

آلن براندنبرگر (Alen Brandenberger) مدیر ارشد نوآوری محصول در Stack Overflow, توضیح می دهد (٢): «فناوری های هوش مصنوعی مولد بسیار قدرتمند عمل می کنند، اما با آنچه که می دانند یا داده هایی که روی آن ها آموزش دیده اند، از محدودیت برخوردار می باشند. بازیابی نسل افزوده، راهبردی است که نقاط قوت بازیابی اطلاعات و اعلان های سیستمی طراحی شده را در هم می امیزد و مدل های زبان بزرگ را قادر می سازد تا اطلاعات مرتبط، متنی و به روز را از یک منبع خارجی ارایه دهند.»

بازیابی نسل افزوده، فراتر از محدودیت های موتور های جستجوی سنتی عمل می کند که صرفا فهرستی از اسناد مرتبط بالقوه را ارائه می دهند. در مقابل، RAG با انجام جستجو های عمیق تر، اطلاعات دقیق تری را استخراج و آن ها را به یک پاسخ منسجم و قابل خواندن برای انسان ترکیب می کند. عمل RAG شبیه به این است که یک محقق متخصص در کنار خود داشته باشید که داده‌ها را با دقت فراوانی بررسی کرده تا رهنمودها و اطلاعات دقیق مورد نیاز شما را ارائه دهد.

بلوک های ساختمان یک سیستم بازیابی نسل افزوده:

برای درک عمل سیستم RAG, بهتر است به اجزای اصلی آن توجه کنیم(٣):

 جاسازی ها (Embeddings):

تبدیل متن به معنای ریاضی:

تصویری که تلاش می کند به رایانه یاد دهد تا پیچیدگی های زبان انسان را درک کند - اینجاست که جاسازی ها وارد عمل می شوند. جاسازی ها، تمام کلمات، عبارات و حتی کل اسناد را به موجودیت های ریاضی معروف به بردار تبدیل می کند. این بردارها، جوهر معنایی متن را در بردارند و رایانه ها را قادر می سازند تا روابط بین کلمات و مفاهیم را درک کنند.

کلمات "dog" و "puppy" را در نظر بگیرید - علیرغم املای متفاوت آن ها، این کلمات از نظر معنی ارتباط نزدیکی دارند. جاسازی ها با نگاشت این کلمات به عنوان بردارهایی که در یک فضای چند بعدی در نزدیکی یکدیگر قرار گرفته اند، به طور موثر این رابطه را به تصویر می کشند. این نزدیکی، سیستم های RAG را قادر می سازد تا درک کنند که درخواستی که شامل "dogs" می شود به اسنادی که درباره "puppies" بحث می کنند نیز مرتبط است، بنابراین این سیستم، از محدودیت های موتورهای جستجوی مبتنی بر کلیدواژه سنتی فراتر می رود

پایگاه داده های برداری:

پایگاه داده های برداری (۴) یک نوع تخصصی از پایگاه داده است که برای ذخیره و مدیریت داده های برداری با ابعاد بالا طراحی شده است. بردار ها، نمایش های ریاضی نقاط داده هستند که اغلب در مدلهای یادگیری ماشین مانند جاسازی کلمات یا شبکه های یادگیری عمیق بدست می آیند. ویژگی اصلی پایگاه داده‌های برداری توانایی آن ها برای جستجو های مشابه است، به این معنی که می توانند نقاط داده ای را پیدا کنند که از نظر معنایی شبیه به بردار پرس و جو هستند.

سیستم های بازیابی نسل افزوده به طوری که در ابتدا بیان کردم تکنیکی است که قابلیت های مدلهای زبان بزرگ را با ترکیب منابع دانش خارجی افزایش می دهد.

رابطه بین پایگاه داده های برداری و سیستم های بازیابی نسل افزوده (۵)جدایی ناپذیر از عملکرد دومی است. در زیر نحوه کار آن ها را با یکدیگر ملاحظه می کنیم:

- آماده سازی داده ها: هنگامی که کاربر یک پرس و جو ارسال می کند، پایگاه داده برداری مرتبط ترین بردار ها (اسناد) را براساس شباهت بازیابی می کند.

- غنی سازی زمینه: بردار های بازیابی شده برای غنی سازی پرس و جو استفاده می شوند و زمینه اضافی را برای مدل زبان بزرگ فراهم می آورند.

- تولید پاسخ: مدل زبان بزرگ با استفاده از پرس و جوی غنی شده، پاسخی را تولید می‌کند که منجر به خروجی های دقیق تر و مرتبط تر می شود.

تصور کنید از یک ربات چت برای دریافت اطلاعات در مورد «آخرین پیشرفت ها در انرژی های تجدیدپذیر» استفاده می کنید. در اینجا، نحوه عملکرد پایگاه داده های برداری و سیستم های بازیابی نسل افزوده را با هم می بینیم:

- پرسش کاربر: «اخرین پیشرفت ها در انرژی های تجدید پذیر چیست؟»

- بازیابی: ربات چت از یک پایگاه داده برداری برای جستجوی اسناد مربوط به پیشرفت های انرژی تجدیدپذیر استفاده می کند.

- تقویت: ربات چت، اسناد مربوطه را بازیابی و از محتوای آن ها برای تقویت درخواست اصلی استفاده بعمل می آورد.

- تولید: مدل زبان بزرگ پاسخی را ایجاد می‌کند که شامل آخرین پیشرفت های انرژی تجدیدپذیر، غنی شده با زمینه اسناد بازیابی شده است.

بدین ترتیب، با ترکیب داده های برداری و سیستم های بازیابی نسل افزوده، سیستم قدرتمندی بدست می آید که کاربر هم از دانش از پیش آموزش دیده و هم از بازیابی بی درنگ اطلاعات مربوط بهره می برد که نتیجه آن پاسخ های دقیق تر و مرتبط تر را بهمراه دارد.

مدل های زبان بزرگ Llama 3.2:

در قلب یک سیستم بازیابی نسل افزوده، به طوری که در بالا دیدیم، مدل زبان نهفته است که مسول درک پرسش ها، ترکیب اطلاعات و تولید پاسخ های قابل خواندن برای انسان است.
مدل Llama 3.1 که توسط متا توسعه یافته است (۶) نشان دهنده یک جهش قابل توجه در فناوری مدل زبان بزرگ است. این برنامه که بر روی مجموعه داده های عظیمی از متن و کد آموزش دیده است، درک چشمگیری از زبان انسانی دارد و قادر به ایجاد پاسخ های روان، منسجم و مرتبط با زمینه است.

رتبه‌بندی مجدد:

برخلاف رویکرد استاندارد یک سیستم بازیابی نسل افزوده، که مستقیماً مرتبط ترین اسناد با بالاترین امتیاز شباهت کسینوس را به مدل زبان منتقل می کند، رتبه‌بندی مجدد (٧ و ٨)، مجموعه اولیه بزرگ تری از اسناد را بازیابی می کند و سپس تکنیک های رتبه بندی اضافی را برای اصلاح امتیازات مرتبط اعمال می کند. این تکنیک ها عواملی مانند شباهت معنایی، ساختار سند و موضوع یا زمینه خاص را در نظر می گیرند.

با اجرای رتبه بندی مجدد، سیستم های بازیابی نسل افزوده می توانند کیفیت مجموعه نهایی اسناد ارسال شده به مدل زبان را برای تولید پاسخ ها بهبود بخشند. این رویکرد، به سیستم اجازه می دهد تا مجموعه بزرگ تری از اسناد مرتبط بالقوه را، با استفاده از مقدار بالاترین سند، بازیابی نموده و سپس فقط مرتبط ترین اسناد را از این مجموعه انتخاب کند. این روند، به ایجاد تعادل بین فراخوانی بازیابی (بازیابی هر چه بیشتر اسناد مرتبط) و فراخوانی مدل زبان بزرگ (ارایه مرتبط ترین اطلاعات به مدل زبان بزرگ برای تولید پاسخ های دقیق) کمک می کند. به این مثال توجه کنید:

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

مدل های زبان بزرگ، مانند مثال بالا، کتابداران باهوشی هستند که براساس الگوهای آموخته شده از حجم وسیعی از داده ها، متونی را که برای انسان قابل درک و خواندن است تولید می کنند. سیستم بازیابی نسل افزوده، مانند فهرست کتابخانه است که به کتابدار کمک می کند مرتبط ترین اطلاعات را به طور سریع و کارآمد پیدا کند. از سوی دیگر، رتبه بندی مجدد، توانایی کتابدار برای تنظیم دقیق پیشنهاد های خود براساس اولویت ها و بازخورد شما است و تجربه کلی جستجو را شخصی تر و دقیق تر می کند.

نتیجه این که، در کتابخانه وسیع سیستم های مجهز به هوش مصنوعی، بازیابی نسل افزوده مانند یک سیستم فهرست کارآمد عمل می کند و به کتابدار ما (مدل زبان بزرگ) کمک می کند تا اطلاعاتی را که دارای بالاترین ربط است، به طور سریع و دقیق پیدا کند.

منابع:

1- Guu, K., et al., REALM: Retrieval-Augmented Language Model Pre-training. Cornell University, Feb. 10, 2020.
arXiv:2002.08909
2- Stack Overflow in the AI era with Ellen Brandenberger, S E Daily, Oct. 3, 2023
3- Ersoy, P. Retrieval-Augmented Generation (RAG) as the Future of Information Retrieval, in: Generative AI Medium, August, 31, 2024
4- en.wikipedia.org
5- Zhang, C., & Bhandaru, Millani, Optimize Vector Databases, Enhance RAG-Driven Generative AI, Intel Tech, March 27, 2024
6- Introducing Llama 3.1: our most capable models to date, Meta, July 23,2023
7- Lee, Jed, Application of RAG Using Llama 3, Chroma DB, QDrant & Re-Ranking. Medium, May 15, 2024
8- Chandrasekar, Akash, Mastering Re-Ranking for Superior LLM RAG Retrieval: A comprehensive Guide, Medium, May 6, 2024