RAG چیست؟
Retrieval-Augmented Generation به زبان ساده

اگر می‌خواهی AI روی اسناد شرکت، کتاب‌ها یا داده‌های خصوصی تو هم پاسخ بدهد — RAG راه‌حل توست.

RAG یا Retrieval-Augmented Generation یکی از مهم‌ترین تکنیک‌های ۲ سال اخیر در حوزه‌ی هوش مصنوعی است. به‌جای اینکه فقط به دانش پایه‌ی مدل تکیه کنی، اطلاعات روز و اختصاصی خودت را به آن می‌چسبانی. نتیجه: ChatGPT تو که روی اسناد شرکت، قوانین داخلی، یا کتاب‌خانه‌ی شخصی‌ات، متخصص شده است. در این مقاله، RAG را از پایه تا کاربردهای عملی به فارسی توضیح می‌دهم.

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

RAG چیست؟ تعریف ساده

برای فهم RAG، اول این مسئله را بفهم: مدل‌های زبانی فقط چیزهایی را می‌دانند که در آموزش‌شان دیده‌اند. ChatGPT درباره‌ی سیاست‌های داخلی شرکت تو هیچ نمی‌داند. درباره‌ی فایل‌های قرارداد PDF تو هیچ نمی‌داند. درباره‌ی محصولات کاتالوگ شما هیچ نمی‌داند.

RAG این مشکل را حل می‌کند با ۳ گام ساده:

  1. Retrieval (بازیابی): از سؤال کاربر، در بانک اطلاعاتی تو می‌گردد و مرتبط‌ترین اسناد را پیدا می‌کند.
  2. Augmentation (تقویت): آن اسناد را به‌عنوان «زمینه» همراه سؤال به مدل می‌فرستد.
  3. Generation (تولید): مدل بر اساس سؤال + اسناد مرتبط، پاسخ دقیق می‌دهد.
مثال ساده: فرض کن می‌خواهی یک چت‌بات داشته باشی که سوالات کارمندان درباره‌ی قوانین داخلی شرکت را جواب بدهد. به‌جای آموزش مدل از صفر (هزینه‌ی میلیون‌ها دلار)، با RAG، اسناد قوانین را در یک پایگاه داده‌ی خاص ذخیره می‌کنی. هر بار که کارمندی سؤال می‌پرسد، سیستم بخش مرتبط را پیدا می‌کند و به ChatGPT می‌دهد. ChatGPT پاسخ دقیق بر اساس قوانین واقعی شما می‌دهد.

چرا به RAG نیاز داریم؟ — ۵ دلیل

  1. دانش روز: ChatGPT تا تاریخ مشخصی آموزش دیده. اگر بپرسی «اخبار امروز چیست؟»، نمی‌داند. RAG می‌تواند به اینترنت یا منابع روز وصل شود.
  2. دانش اختصاصی: هیچ مدل عمومی، اسناد داخلی شرکت تو را نمی‌داند. RAG این پل را می‌سازد.
  3. کاهش Hallucination: Hallucination یعنی AI چیزی را با اعتماد به نفس بگوید که اصلاً درست نیست. وقتی به مدل اسناد دقیق می‌دهی، احتمال این خطا چندین برابر کاهش می‌یابد.
  4. قابل اعتمادسازی: می‌توانی به مدل بگویی «حتماً منبع هر ادعا را در پاسخ ذکر کن». این شفافیت در محیط حرفه‌ای بحرانی است.
  5. به‌روزرسانی بدون آموزش مجدد: اگر فردا یک سند جدید اضافه شود، فقط آن را در بانک اطلاعاتی بریز. نیاز به آموزش دوباره‌ی مدل نیست. این یعنی هزینه‌ی نگهداری بسیار کم.

معماری RAG — چطور کار می‌کند؟

یک سیستم RAG از ۵ جزء اصلی تشکیل شده:

  1. Document Loader: اسناد (PDF، Word، صفحات وب، دیتابیس) را می‌خواند.
  2. Chunker: اسناد را به قطعات کوچک ۲۰۰ تا ۱۰۰۰ کلمه‌ای می‌شکند. این قطعات «chunk» نامیده می‌شوند.
  3. Embedding Model: هر chunk را به یک «بردار عددی» تبدیل می‌کند. این بردارها معنای متن را نشان می‌دهند. متن‌های هم‌معنا، بردارهای نزدیک به هم دارند.
  4. Vector Database: بردارها را ذخیره می‌کند. وقتی سؤال جدیدی می‌آید، آن هم به بردار تبدیل می‌شود و نزدیک‌ترین chunk ها پیدا می‌شوند. معروف‌ترین vector databaseها: Pinecone، Weaviate، Chroma، Qdrant.
  5. LLM (مدل زبانی): ChatGPT یا Claude. سؤال + chunk های پیدا شده را می‌گیرد و پاسخ نهایی می‌سازد.

تصور بصری

کاربر می‌پرسد: «سیاست مرخصی شرکت چیست؟»
        ↓
[Embedding Model] سؤال را به بردار تبدیل می‌کند
        ↓
[Vector DB] از بین ۱۰۰۰۰ chunk، ۳ مرتبط‌ترین را پیدا می‌کند
        ↓
[LLM] دریافت می‌کند: «سؤال + ۳ chunk» → پاسخ تولید می‌کند
        ↓
کاربر پاسخ دقیق بر اساس اسناد واقعی شرکت دریافت می‌کند

کاربردهای واقعی RAG در ایران

  1. چت‌بات پشتیبانی: به‌جای ۲۰ کارمند پشتیبانی، یک چت‌بات RAG-محور که روی ۵۰۰ صفحه سند راهنمای محصول و FAQ آموزش دیده. ۸۰٪ سؤالات را دقیق پاسخ می‌دهد.
  2. دستیار حقوقی: یک سیستم RAG روی قوانین جمهوری اسلامی + آرای دیوان عالی + نظریات مشورتی. وکیل سؤال می‌پرسد، سیستم منابع دقیق با شماره ماده و تاریخ به او می‌دهد.
  3. تحلیل قرارداد: یک قرارداد ۵۰ صفحه‌ای را آپلود می‌کنی. می‌پرسی «بندهای ریسک کجاست؟»، «جریمه‌ی تأخیر چقدر است؟» — پاسخ دقیق با ارجاع به صفحه.
  4. دستیار پزشک: یک سیستم روی ۱۰۰۰ مقاله‌ی پزشکی جدید + گایدلاین‌های وزارت بهداشت. پزشک می‌پرسد، سیستم تشخیص افتراقی و درمان به‌روز می‌دهد. (با تأکید: ابزار کمکی، نه جایگزین تشخیص پزشک.)
  5. دستیار پژوهش دانشگاهی: دانشجو ۳۰ مقاله را آپلود می‌کند، می‌پرسد «نقطه‌نظرات متفاوت در این مقالات چیست؟» — RAG نقاط اختلاف و توافق را با ارجاع شناسایی می‌کند.
  6. دستیار آموزش شرکتی: کارمند جدید می‌تواند به‌جای دیدن ۲۰ ساعت ویدیوی آموزشی، از چت‌بات RAG-محور هر سؤال خاصش را بپرسد و پاسخ مستقیم با ارجاع به منبع بگیرد.

RAG vs Fine-tuning — کدام برای چه کاری؟

این سؤال بسیار رایج است. هر دو روش، مدل را به دانش اختصاصی متصل می‌کنند، اما فلسفه‌ی متفاوتی دارند:

معیارRAGFine-tuning
هزینهکم (فقط vector DB + API calls)بالا (آموزش مدل + سرور)
زمان راه‌اندازییک هفته۱-۳ ماه
به‌روزرسانی دادهآنی (chunk جدید را اضافه کن)نیاز به آموزش دوباره
دقت در دانش جدیدعالی (داده‌ی واقعی)متوسط (مدل ممکن است فراموش کند)
دقت در سبک پاسخمحدودعالی
شفافیت منبعقابل ارائهغیرقابل ردیابی

قانون کلی: اگر می‌خواهی مدل دانش جدید داشته باشد، RAG. اگر می‌خواهی مدل سبک یا رفتار جدید داشته باشد، Fine-tuning. برای ۹۰٪ کسب‌وکارها، RAG راه‌حل درست است.

ابزارهای ساخت سیستم RAG

کتابخانه‌های کد

  • LangChain — پایتون، محبوب‌ترین. اکوسیستم گسترده.
  • LlamaIndex — پایتون، تخصصی‌تر در RAG. ساده‌تر برای سناریوهای پیچیده.
  • Haystack — پایتون، گزینه‌ی خوب برای production.

Vector Databases

  • Pinecone — ابری، آماده، با plan رایگان
  • Weaviate — open-source، self-host شدنی
  • Chroma — سبک، برای پروژه‌های کوچک عالی
  • Qdrant — سریع، مقیاس‌پذیر

راه‌حل‌های No-Code

  • OpenAI GPTs — می‌توانی یک GPT اختصاصی بسازی و فایل‌هایت را به آن بچسبانی
  • Anthropic Projects (Claude) — قابلیت مشابه با Claude Pro
  • Custom GPTs در ChatGPT Plus — برای پروژه‌های شخصی کافی
اگر فقط می‌خواهی برای استفاده‌ی شخصی، یک «دستیار AI» روی ۱۰ تا ۲۰ سند خودت بسازی، با Custom GPT در ChatGPT یا Projects در Claude در نیم ساعت قابل انجام است — بدون نیاز به کدنویسی.

چالش‌های RAG و راه‌حل

  1. کیفیت chunking: اگر chunk ها بد بریده شوند، اطلاعات مهم در دو chunk جدا می‌افتند و سیستم نمی‌فهمد. راه‌حل: استفاده از Semantic Chunking به‌جای تقسیم با اندازه‌ی ثابت.
  2. اطلاعات متناقض در اسناد: اگر دو سند یک چیز را متفاوت بگویند، مدل گیج می‌شود. راه‌حل: تاریخ‌گذاری اسناد، اولویت‌بندی، و دستور صریح به مدل که «جدیدترین منبع را اولویت بده».
  3. سؤالات چندبخشی: «X چیست و چه فرقی با Y دارد؟» — RAG ممکن است فقط X را بفهمد. راه‌حل: Query Decomposition — سؤال را به زیرسؤالات کوچک‌تر تبدیل کن.
  4. هزینه‌ی Embedding: برای میلیون‌ها سند، تبدیل به بردار هزینه دارد. راه‌حل: استفاده از مدل‌های embedding ارزان‌تر (OpenAI Ada-002، یا Sentence Transformers رایگان).
  5. زبان فارسی: بسیاری از مدل‌های embedding برای انگلیسی بهینه‌اند. راه‌حل: استفاده از text-embedding-3-large از OpenAI یا مدل‌های چندزبانه‌ی Cohere.

آینده‌ی RAG

RAG در حال تحول سریع است. روندهای ۲۰۲۶:

  • Multi-modal RAG: به‌جای فقط متن، می‌توانی تصویر، صدا و ویدیو را هم بازیابی کنی. مثلاً سیستمی که از ۱۰۰۰ ساعت ویدیوی جلسات شرکت، صحنه‌ی مرتبط را پیدا می‌کند.
  • Agentic RAG: به‌جای یک بازیابی ساده، AI خودش تصمیم می‌گیرد چندین بار جستجو کند، نتایج را ترکیب کند، و مسیر تحقیق را خودش طراحی کند.
  • Hybrid Search: ترکیب جستجوی معنایی (Vector) با جستجوی کلیدواژه‌ای (Keyword). دقت بسیار بالاتر.
  • Long Context Models: با مدل‌هایی که ۲ میلیون توکن context دارند (Gemini)، گاهی می‌توانی کل اسناد را مستقیم بدهی، بدون نیاز به vector DB.

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

سوالات متداول

RAG مخفف چیست؟

RAG مخفف Retrieval-Augmented Generation است که به فارسی به «تولید تقویت‌شده با بازیابی» ترجمه می‌شود. ترکیبی از سیستم جستجو و مدل زبانی است.

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

نه لزوماً. اگر سناریوی ساده‌ای داری (مثلاً ۱۰ سند شخصی)، با Custom GPT در ChatGPT یا Projects در Claude بدون کد می‌توانی بسازی. برای سیستم‌های production و حرفه‌ای، آشنایی با پایتون و LangChain ضروری است.

RAG با Fine-tuning چه فرقی دارد؟

RAG به مدل «دانش» می‌دهد (با بازیابی اسناد در لحظه). Fine-tuning به مدل «رفتار/سبک جدید» می‌دهد (با آموزش مجدد). RAG ارزان‌تر، سریع‌تر و قابل به‌روزرسانی است. Fine-tuning برای تغییر سبک پاسخ بهتر است.

بهترین Vector Database برای شروع کدام است؟

برای پروژه‌های کوچک و یادگیری، Chroma رایگان و ساده است و روی لپ‌تاپ می‌چرخد. برای پروژه‌های production، Pinecone (با plan رایگان شروع کن) یا Qdrant توصیه می‌شود.

RAG برای زبان فارسی کار می‌کند؟

بله، اما با ملاحظات. باید از مدل‌های embedding چندزبانه استفاده کنی (مثل OpenAI text-embedding-3-large یا Cohere multilingual). همچنین chunking برای فارسی باید با احتیاط بیشتری انجام شود چون مرز جملات گاهی واضح نیست.

هزینه‌ی راه‌اندازی RAG چقدر است؟

برای پروژه‌ی کوچک با Chroma + OpenAI API، می‌توانی با کمتر از ۱۰ دلار/ماه شروع کنی. برای پروژه‌ی متوسط با ۱۰۰هزار سند و Pinecone + GPT-4o، حدود ۱۰۰-۵۰۰ دلار/ماه. برای enterprise، چندین هزار دلار.

آیا RAG می‌تواند Hallucination را کاملاً حذف کند؟

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

RAG چه ربطی به مهندسی پرامپت دارد؟

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

می‌خوای از تئوری به مهارت برسی؟

این مقاله یک شروع است. اگر می‌خواهی مهندسی پرامپت را به‌صورت مدون، با پروژه‌ی واقعی و پشتیبانی مستقیم یاد بگیری، دوره‌ی جامع مهندسی پرامپت همان مسیری است که دنبالش هستی — ۱۳ فصل، ۵۸ جلسه، گروه پشتیبانی و ۳ روز ضمانت بازگشت کامل وجه.

شروع دوره
نویسنده: متین لب‌خندق — مهندس هوش مصنوعی با ۱۰ سال برنامه‌نویسی و ۵ سال تمرکز روی مدل‌های زبانی (LLM)؛ سازنده‌ی سیستم‌های واقعیِ production با ChatGPT، Claude و Gemini و بنیان‌گذار آکادمی متین لب‌خندق. مقاله‌ی پایه: راهنمای جامع مهندسی پرامپت.