RAG چیست؟ وقتی هوش مصنوعی از سند شما جواب می‌دهد

مدل درباره‌ی قرارداد شما، آیین‌نامه‌ی شرکتتان یا جزوه‌ی درسی‌تان چیزی نمی‌داند. RAG همان ترفندی است که این خلأ را پر می‌کند — و محدودیت‌های خودش را دارد.

🍊 تیم نارنگی ⏱ 5 دقیقه مطالعه
نمودار ساده از مسیر سؤال کاربر تا بازیابی تکه‌های سند و تولید جواب

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

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

در عمل چه اتفاقی می‌افتد

وقتی سؤالی می‌پرسید، سامانه‌ی RAG چهار کار پشت سر هم انجام می‌دهد:

  1. سند تکه‌تکه می‌شود. فایل شما به قطعه‌های چند صد کلمه‌ای بریده می‌شود، معمولاً با کمی همپوشانی تا جمله‌ها وسط بریده نشوند.
  2. هر تکه به عدد تبدیل می‌شود. به این کار امبدینگ می‌گویند؛ نتیجه‌اش رشته‌ای از اعداد است که معنای متن را نمایندگی می‌کند. متن‌های هم‌معنا، اعداد نزدیک به هم می‌گیرند.
  3. سؤال شما هم به عدد تبدیل و مقایسه می‌شود. نزدیک‌ترین تکه‌ها — معمولاً سه تا ده تا — انتخاب می‌شوند.
  4. همان تکه‌ها به مدل داده می‌شود همراه با سؤال و یک دستور: فقط بر اساس این متن جواب بده.

نکته‌ی کلیدی در قدم دوم است. جستجو بر اساس کلمه نیست، بر اساس معناست. برای همین اگر بپرسید «چند روز می‌توانم بدون حقوق غیبت کنم» تکه‌ای پیدا می‌شود که در آن نوشته «مرخصی بدون حقوق» — با اینکه هیچ کلمه‌ی مشترکی جز حقوق ندارند.

چرا این روش برنده شد

گزینه‌ی دیگر این بود که مدل را روی داده‌ی سازمان دوباره آموزش بدهند. RAG سه دلیل عملی دارد که تقریباً همیشه برنده می‌شود:

معیارRAGآموزش دوباره‌ی مدل
هزینه‌ی راه‌اندازیکمزیاد
به‌روزرسانی دادهفایل را عوض می‌کنیدآموزش دوباره لازم است
امکان ارجاع به منبعداردندارد
حذف یک سندسادهعملاً ناممکن
کنترل دسترسی کاربرانممکن استسخت
کیفیت در حوزه‌ی خیلی تخصصیمتوسطبهتر

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

نسخه‌ی ساده که همین حالا دارید

لازم نیست سامانه بسازید تا از این ایده استفاده کنید. وقتی یک PDF را در نارنگی پیوست می‌کنید و درباره‌اش سؤال می‌پرسید، دقیقاً همین منطق در مقیاس کوچک اجرا می‌شود.

حتی بدون پیوست هم می‌شود دستی انجامش داد — متن را در پرامپت بگذارید و قید صریح اضافه کنید:

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

سؤال: [سؤال شما]
---
[متن سند]
💡 مؤثرترین تک‌جمله

«اگر جواب در متن نیست، بگو نیست» تنها جمله‌ای است که بیشترین اثر را در کاهش جواب ساختگی دارد. بدون آن، مدل تمایل دارد خلأ را با دانش عمومی خودش پر کند و شما متوجه نمی‌شوید کجا از سند خارج شده.

کجا شکست می‌خورد

RAG جادو نیست و چند نقطه‌ی ضعف مشخص دارد که بهتر است از قبل بدانید:

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

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

اگر می‌خواهید برای سازمانتان بسازید

قبل از انتخاب ابزار، این سه چیز را روشن کنید: کیفیت اسناد ورودی، سیاست دسترسی کاربران، و اینکه شکست چه شکلی است. اولی معمولاً بیشترین وقت را می‌گیرد — چون اسنادی که سال‌ها روی هم انباشته شده‌اند، نسخه‌های تکراری و منسوخ دارند و RAG وفادارانه از نسخه‌ی غلط هم جواب می‌دهد.

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

جمع‌بندی

RAG جواب یک سؤال ساده است: چطور کاری کنیم مدل به‌جای حدس زدن، از روی سند ما بخواند. روشش هم ساده است — پیدا کردن تکه‌های مرتبط و نشان دادنشان به مدل — و همین سادگی باعث شده به روش غالب تبدیل شود.

مهم‌ترین چیزی که باید نگه دارید این است: RAG کیفیت جواب را به کیفیت سند گره می‌زند. سند خوب، جواب خوب. سند قدیمی و آشفته، جواب مطمئنِ غلط. برای درک عمیق‌تر مفاهیم پشت این روش، راهنمای Pinecone با زبان ساده توضیح داده است.

مطالب مرتبط:

پرسش‌های پرتکرار

فرق RAG با آموزش دادن مدل روی داده‌ی خودم چیست؟ +
در RAG مدل دست‌نخورده می‌ماند و فقط موقع جواب دادن، تکه‌های مرتبط سند به آن نشان داده می‌شود. در آموزش دوباره، خود وزن‌های مدل تغییر می‌کند که هزینه و زمان زیادی می‌خواهد. برای اکثر کاربردهای سازمانی، RAG هم ارزان‌تر است هم به‌روزرسانی داده در آن آسان‌تر.
برای استفاده از RAG باید برنامه‌نویس باشم؟ +
برای ساختن یک سامانه‌ی اختصاصی بله. ولی نسخه‌ی ساده‌اش را همین حالا دارید: وقتی یک فایل PDF را در چت پیوست می‌کنید و درباره‌اش سؤال می‌پرسید، همان منطق در مقیاس کوچک اجرا می‌شود.
آیا RAG جلوی جواب ساختگی را کامل می‌گیرد؟ +
کم می‌کند ولی حذف نمی‌کند. اگر بازیابی تکه‌ی درستی پیدا نکند، مدل ممکن است باز هم چیزی بسازد. برای همین در پرامپت باید صریح گفته شود که اگر جواب در متن نبود، بگوید نیست.
چرا از PDF اسکن‌شده جواب نمی‌گیرم؟ +
چون آن فایل از نظر کامپیوتر فقط عکس است و متنی برای جستجو ندارد. اول باید با ابزار تشخیص متن به فایل متنی تبدیل شود. برای اسناد فارسی اسکن‌شده، نتیجه‌ی این تبدیل معمولاً نیاز به اصلاح دستی دارد.
برای اسناد محرمانه‌ی شرکت امن است؟ +
به سرویسی که استفاده می‌کنید بستگی دارد، نه به خود روش. پیش از فرستادن سند حساس، سیاست نگهداری داده‌ی آن سرویس را بخوانید و اگر لازم است، بخش‌های حساس را قبل از آپلود حذف کنید.
#بازیابی اطلاعات #پایگاه داده برداری #امبدینگ #چت با pdf #جواب مستند
به‌دردِ کسی می‌خورد؟ تلگرام واتساپ
🍊

خواندنش خوب بود — حالا امتحانش کن

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

بدونِ نصب هم کار می‌کند — ولی در اپ سریع‌تر است