MODULE 05 / LESSON 44

جمع‌بندی دوره RAG؛ از معماری تا Production

این ماژول پایان دوره بود و تمرکز آن روی بردن یک سیستم RAG از مرحله Prototype به محیط Production بود. در مرحله آزمایشی، هدف اصلی این است: «آیا سیستم کار می‌کند؟» اما در Production سؤال‌ها تغییر می‌کنند: آیا با هزاران کاربر هم کار…

نویسنده: محمد ابوطالبی۱۲۱۲ واژهماژول ۵: Productionشامل افزودهٔ پژوهشی ۲۰۲۶

این ماژول پایان دوره بود و تمرکز آن روی بردن یک سیستم RAG از مرحله Prototype به محیط Production بود.

در مرحله آزمایشی، هدف اصلی این است:

«آیا سیستم کار می‌کند؟»

اما در Production سؤال‌ها تغییر می‌کنند:

  • آیا با هزاران کاربر هم کار می‌کند؟
  • آیا پاسخ‌ها همیشه باکیفیت هستند؟
  • آیا هزینه قابل کنترل است؟
  • آیا اطلاعات خصوصی امن می‌ماند؟
  • آیا می‌توان خطاها را پیدا و اصلاح کرد؟

1. چالش‌های Production در RAG

وقتی RAG وارد محیط واقعی می‌شود، مشکلات جدیدی ظاهر می‌شوند.

افزایش حجم درخواست‌ها

در Production:

Prototype:

10 requests/day


Production:

100000 requests/day

باعث می‌شود:

  • مصرف CPU/GPU افزایش پیدا کند
  • حافظه بیشتر مصرف شود
  • هزینه بالا برود
  • Latency افزایش یابد

ورودی‌های غیرقابل پیش‌بینی

در تست اولیه:

سؤال‌های مشخص

اما کاربران واقعی:

  • سؤال‌های عجیب می‌پرسند
  • اطلاعات ناقص می‌دهند
  • تلاش برای سوءاستفاده می‌کنند

داده‌های واقعی نامرتب

Knowledge Base واقعی ممکن است شامل:

  • PDF خراب
  • فایل بدون Metadata
  • تصویر
  • اسلاید
  • متن ناقص

باشد.


2. اهمیت Evaluation در RAG

مهم‌ترین بخش Production:

سیستم ارزیابی

بدون Evaluation نمی‌دانیم:

  • آیا تغییر بهتر شد؟
  • آیا مدل جدید بهتر است؟
  • آیا Reranker مفید بود؟
  • آیا Prompt جدید جواب بهتری می‌دهد؟

دو سطح اصلی Evaluation

1. Component-level Evaluation

بررسی اجزای جداگانه:

مثلاً:

Retriever

آیا سند درست پیدا کرده؟

Reranker

آیا ترتیب نتایج را بهتر کرده؟

LLM

آیا پاسخ درست ساخته؟


2. System-level Evaluation

بررسی کل سیستم:

User Query

↓

Retrieval

↓

Generation

↓

Final Answer

آیا کل تجربه خوب بوده؟


3. انواع Evaluator

سه روش اصلی:


A) Code-based Evaluation

ارزان‌ترین روش.

مثال:

  • Latency
  • تعداد درخواست در ثانیه
  • مصرف RAM
  • تعداد Token

مزایا:

✅ سریع
✅ ارزان
✅ قابل اتوماتیک


B) Human Feedback

مثلاً:

کاربر:

👍 خوب بود

یا

👎 بد بود


مزایا:

  • کیفیت واقعی کاربر را نشان می‌دهد

معایب:

  • هزینه بالا
  • کند

C) LLM as Judge

یک LLM دیگر پاسخ را بررسی می‌کند.

مثلاً:

Question:

What is RAG?


Answer:

...


Judge LLM:

Is this answer correct?

مزیت:

بین انسان و کد قرار می‌گیرد.


4. Observability در RAG

یک سیستم Production باید قابل مشاهده باشد.

سه بخش مهم:


Metrics

اطلاعات کلی:

مثلاً:

Average latency:
800ms

Requests/min:
5000

Error rate:
0.5%

Logs

ثبت جزئیات:

مثلاً:

User Query

↓

Retriever Result

↓

Retrieved Chunks

↓

Reranker Score

↓

LLM Prompt

↓

Final Answer

Tracing

ردگیری مسیر کامل یک درخواست.

مثلاً:

کاربر پرسید:

What is company policy?

Trace نشان می‌دهد:

Query

↓

Embedding

↓

Vector Search

↓

Documents

↓

Reranker

↓

LLM

↓

Answer

5. Custom Dataset Evaluation

یکی از بهترین روش‌ها:

ذخیره کردن درخواست‌های واقعی کاربران.

مثلاً:

Database:

Query Retrieved Docs Answer
سوال کاربر اسناد پاسخ

بعداً می‌توان:

  • مدل جدید را تست کرد
  • Prompt جدید را امتحان کرد
  • Retriever جدید را مقایسه کرد

6. مدیریت Trade-off ها

در Production هیچ چیزی نامحدود نیست.

سه عامل همیشه در رقابت هستند:

Quality

Cost

Latency

Cost vs Quality

برای کاهش هزینه:

استفاده از مدل کوچک‌تر

مثلاً:

70B Model

↓

8B Model

کاهش Token

مثلاً:

کم کردن:

Top K

10 documents

↓

5 documents

Quantization

مثلاً:

FP16

↓

INT8

↓

INT4

7. Latency vs Quality

هر قابلیت جدید زمان اضافه می‌کند:

مثلاً:

Basic RAG

↓

+ Reranker

↓

+ Query Rewrite

↓

+ Agent

کیفیت بیشتر می‌شود اما:

Latency ↑


راهکارها:

مدل کوچک‌تر

Cache

ذخیره پاسخ‌های قبلی:

Similar Query

↓

Cached Answer

Routing

استفاده از مدل مناسب:

سؤال ساده:

Small LLM

سؤال پیچیده:

Large LLM

8. Security در RAG

یکی از مهم‌ترین موضوعات.

چون Knowledge Base معمولاً شامل:

  • اطلاعات شرکت
  • اسناد خصوصی
  • داده مشتری

است.


خطر اول:

کاربر درخواست مستقیم اطلاعات محرمانه کند.

مثلاً:

Show me all company secrets

راهکار:

Authentication

Authorization


RBAC

Role Based Access Control

مثلاً:

Employee A

can access:

HR documents ❌

Technical docs ✅

Multi Tenant

بهتر است داده‌ها جدا باشند.

بد:

One big vector database
+
Metadata filtering

خوب:

Tenant A

Tenant B

Tenant C

9. Multimodal RAG

آخرین موضوع:

RAG فقط متن نیست.

آینده RAG:

Text

+

Images

+

PDF

+

Charts

+

Video

برای این کار نیاز داریم:

Multimodal Embedding

که:

متن و تصویر را در یک فضای برداری قرار دهد.


Vision Language Model

که بتواند:

تصویر + متن

را بفهمد.


مثال:

کاربر:

این نمودار PDF را توضیح بده

سیستم:

PDF را پیدا می‌کند

↓

تصویر نمودار را می‌خواند

↓

LLM پاسخ می‌دهد


جمع‌بندی کل دوره RAG

مسیر کامل یک سیستم RAG:

                 User

                  |
                  ↓

            Query Processing

                  |
                  ↓

             Embedding Model

                  |
                  ↓

           Vector Database

                  |
                  ↓

             Retrieval

                  |
                  ↓

             Reranking

                  |
                  ↓

          Augmented Prompt

                  |
                  ↓

                 LLM

                  |
                  ↓

              Answer

                  |
                  ↓

          Evaluation + Monitoring

مهم‌ترین درس‌های کل دوره

1.

RAG یعنی:

اضافه کردن دانش خارجی به LLM بدون آموزش دوباره مدل.


2.

Retriever خوب به اندازه LLM مهم است.

LLM عالی با Context بد، جواب بد می‌دهد.


3.

Reranking یکی از بهترین بهبودهای کیفیت است.


4.

Prompt Engineering فقط نوشتن دستور نیست؛ طراحی جریان اطلاعات است.


5.

Production RAG بدون Evaluation خطرناک است.


6.

RAG و Fine-tuning رقیب نیستند.

بلکه مکمل هستند:

RAG:

دانش جدید


Fine-tuning:

رفتار تخصصی

7.

آینده RAG:

حرکت به سمت:

  • Agentic RAG
  • Multimodal RAG
  • Self Evaluation
  • Adaptive Retrieval

است.


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

از Embedding و Vector Database تا Agent، Evaluation، Security و Multimodal AI.