چت‌بات و هوش مصنوعی

RAG چیست و چطور باعث می‌شود ربات فقط از سایت شما پاسخ بدهد؟

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

نویسنده

تیم بایتیرا

تاریخ انتشار

۲۸ اردیبهشت ۱۴۰۵

زمان مطالعه

7 دقیقه

خلاصه

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

RAG (مخفف Retrieval-Augmented Generation، یعنی تولید پاسخ به کمک بازیابی) روشی است که در آن ربات پیش از نوشتن پاسخ، متن‌های مرتبط را از محتوای خود شما پیدا می‌کند و فقط بر اساس همان‌ها جواب می‌دهد. به این ترتیب مرز دانش ربات را شما تعیین می‌کنید، نه مدل زبانی. اگر قیمت یا شرایطی را روی سایت ننوشته باشید، وارد پاسخ هم نمی‌شود.

چرا مدل زبانی به‌تنهایی کافی نیست؟

مدل‌های زبانی دانش عمومی گسترده‌ای دارند، اما درباره کسب‌وکار شما چیزی نمی‌دانند. آن‌ها از متن‌هایی آموخته‌اند که تا تاریخ مشخصی جمع شده و صفحه «شرایط ارسال» فروشگاه شما احتمالاً جزو آن‌ها نبوده است. اگر مستقیم از مدل بپرسید «هزینه ارسال به شیراز چقدر است؟»، یا پاسخ کلی می‌دهد یا عددی می‌سازد که روان و مطمئن به نظر می‌رسد. درباره خطر این رفتار در مطلب پاسخ ساختگی؛ خطرناک‌ترین رفتار چت‌بات مفصل نوشته‌ایم.

RAG این مشکل را با یک تغییر ساده حل می‌کند: به‌جای اینکه از مدل بخواهیم «به یاد بیاورد»، متن درست را جلویش می‌گذاریم و می‌خواهیم «بخواند و خلاصه کند».

RAG در سه مرحله چطور کار می‌کند؟

مرحله آماده‌سازی: قطعه‌بندی و نمایه‌سازی

صفحه‌های سایت یک بار خوانده می‌شوند و هر صفحه به قطعه‌های کوچک‌تر تقسیم می‌شود. برای هر قطعه یک «بردار معنایی» (embedding) ساخته می‌شود؛ فهرستی از اعداد که معنای آن متن را نشان می‌دهد. متن‌هایی که معنای نزدیک دارند، بردارهای نزدیک به هم دارند. اگر می‌خواهید این بخش را دقیق‌تر بفهمید، توضیح embedding و جست‌وجوی معنایی را بخوانید.

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

مرحله بازیابی: پیدا کردن متن مرتبط

وقتی بازدیدکننده سؤالی می‌پرسد، برای پرسش او هم بردار ساخته می‌شود و نزدیک‌ترین قطعه‌ها پیدا می‌شوند. این جست‌وجو کلیدواژه‌ای نیست، معنایی است. اگر کاربر بنویسد «چقدر طول می‌کشه بسته برسه؟»، متنی که می‌گوید «زمان تحویل سه تا پنج روز کاری است» پیدا می‌شود، حتی بدون هیچ کلمه مشترک.

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

قطعه‌های پیداشده همراه با پرسش به مدل زبانی داده می‌شوند، با دستوری روشن: فقط بر اساس این متن‌ها پاسخ بده. اگر هیچ قطعه مرتبطی پیدا نشود، سیستم خوب اصلاً سراغ تولید نمی‌رود و پیام از پیش تعیین‌شده‌ای نشان می‌دهد؛ مثلاً راه تماس با پشتیبانی.

یک نمونه: آموزشگاه زبان و سؤال ساعت یازده شب

فرض کنید مدیر یک آموزشگاه زبان هستید و روی سایت صفحه‌هایی برای دوره‌ها، تقویم ترم‌ها و شرایط ثبت‌نام دارید. یکی از والدین ساعت یازده شب می‌نویسد: «برای پسرم که ده سالشه کلاس آنلاین دارید؟ کی شروع می‌شه؟»

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

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

ربات پاسخ‌گوی سایت بایتیرا دقیقاً همین مسیر را طی می‌کند: سایت را خودکار می‌خواند، پاسخ را فقط از قطعه‌های بازیابی‌شده می‌سازد، صفحه منبع را زیر هر پاسخ نشان می‌دهد و پرسش‌های بی‌پاسخ را در داشبورد فهرست می‌کند.

RAG در مقایسه با روش‌های دیگر

روشدانش ربات از کجا می‌آیدبه‌روزرسانی اطلاعاتخطر پاسخ ساختگی
پرسش مستقیم از مدلدانش عمومی هنگام آموزشممکن نیستزیاد
آموزش تکمیلی مدل (fine-tuning)نمونه‌هایی که به مدل یاد داده‌ایدنیاز به آموزش دوبارههمچنان وجود دارد
RAGمحتوای فعلی سایت شمابا خواندن دوباره سایتکم، چون به متن مشخص محدود است

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

چطور سایت‌تان را برای RAG آماده کنید: گام‌به‌گام

  • گام ۱: سؤال‌های پرتکرار را بنویسید. از پیام‌های دایرکت، تماس‌ها و ایمیل‌ها فهرستی از سؤال‌های واقعی مشتری‌ها جمع کنید.
  • گام ۲: برای هر سؤال یک جای مشخص روی سایت داشته باشید. جواب‌های پراکنده در کپشن اینستاگرام یا تصویر، برای ربات قابل‌خواندن نیستند. آن‌ها را به متن صفحه بیاورید.
  • گام ۳: هر بند را مستقل بنویسید. چون قطعه‌ها جدا بازیابی می‌شوند، جمله‌ای مثل «این شرایط فقط برای آن شامل می‌شود» بدون نام بردن از موضوع، بیرون از بافت مبهم است.
  • گام ۴: اطلاعات بیرون از سایت را جداگانه وارد کنید. ساعت کاری، شماره تماس یا شرایط ارسالی که روی سایت نیست را در بخش اطلاعات کسب‌وکار بنویسید.
  • گام ۵: با پرسش‌های واقعی تست کنید. سؤال‌های گام ۱ را با جمله‌بندی خود مشتری‌ها بپرسید و صفحه منبع هر پاسخ را بررسی کنید.
  • گام ۶: پایگاه دانش را تازه نگه دارید. بعد از تغییر قیمت یا شرایط، سایت را دوباره بخوانید. نکته‌های این مرحله در راهنمای به‌روزرسانی پایگاه دانش آمده است.

اشتباهات رایج در استفاده از RAG

  • انتظار پاسخ درباره چیزی که نوشته نشده. RAG فقط آنچه را روی سایت هست بازیابی می‌کند. اگر جوابی نیست، راه‌حل اضافه کردن محتواست، نه تغییر ربات.
  • اطلاعات متناقض در صفحه‌های مختلف. اگر در یک صفحه نوشته‌اید ارسال رایگان از فلان مبلغ و در صفحه دیگر عدد دیگری، ربات ممکن است هر کدام را بازیابی کند. یک منبع واحد نگه دارید.
  • متن مهم داخل تصویر یا فایل PDF اسکن‌شده. متنی که به شکل تصویر است برای خزنده قابل‌خواندن نیست.
  • نادیده گرفتن منبع زیر پاسخ. هنگام تست، همیشه نگاه کنید پاسخ از کدام صفحه آمده؛ سریع‌ترین راه پیدا کردن صفحه‌های مبهم همین است.

پرسش‌های رایج

آیا RAG جلوی همه خطاها را می‌گیرد؟

نه کاملاً، اما خطر را بسیار کم می‌کند. پاسخ فقط به اندازه محتوای شما دقیق است. اگر صفحه‌ای قدیمی یا مبهم باشد، پاسخ هم همان‌طور می‌شود؛ برای همین نمایش منبع و به‌روز نگه داشتن محتوا مهم است.

برای استفاده از RAG باید خودم برنامه‌نویسی کنم؟

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

RAG با جست‌وجوی داخلی سایت چه فرقی دارد؟

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

#RAG#هوش مصنوعی#معماری

مطالب مرتبط