MODULE 04 / LESSON 27

Choosing Your LLM در سیستم‌های RAG

انتخاب مدل زبانی (LLM) یکی از مهم‌ترین تصمیم‌ها هنگام ساخت یک سیستم RAG است. چون انتخاب مدل مستقیماً روی: کیفیت پاسخ‌ها سرعت سیستم هزینه اجرا تجربه کاربر تأثیر می‌گذارد. امروزه تعداد زیادی LLM وجود دارد که هرکدام: توانایی‌های…

نویسنده: محمد ابوطالبی۹۴۹ واژهماژول ۴: LLM & Prompting

انتخاب مدل زبانی (LLM) یکی از مهم‌ترین تصمیم‌ها هنگام ساخت یک سیستم RAG است.

چون انتخاب مدل مستقیماً روی:

  • کیفیت پاسخ‌ها
  • سرعت سیستم
  • هزینه اجرا
  • تجربه کاربر

تأثیر می‌گذارد.

امروزه تعداد زیادی LLM وجود دارد که هرکدام:

  • توانایی‌های متفاوت
  • قیمت متفاوت
  • سرعت متفاوت

دارند.


معیارهای قابل اندازه‌گیری برای انتخاب LLM

قبل از بررسی کیفیت مدل، چند ویژگی فنی وجود دارد که به راحتی قابل مقایسه هستند.


1. اندازه مدل (Model Size)

اندازه مدل معمولاً با تعداد پارامترها بیان می‌شود.

مثلاً:

7B
13B
70B
405B

یعنی:

  • 7 میلیارد پارامتر
  • 13 میلیارد پارامتر
  • 70 میلیارد پارامتر

مدل‌های کوچک

تقریباً:

1B تا 10B پارامتر

مزایا:

  • سریع‌تر
  • ارزان‌تر
  • قابل اجرا روی سخت‌افزار ضعیف‌تر

معایب:

  • استدلال ضعیف‌تر
  • دانش کمتر
  • عملکرد پایین‌تر در وظایف پیچیده

مدل‌های بزرگ

تقریباً:

100B تا 500B+

مزایا:

  • توانایی بیشتر
  • Reasoning بهتر
  • درک بهتر متن

معایب:

  • هزینه بالا
  • نیاز به GPU قوی
  • Latency بیشتر

نکته مهم

مدل بزرگ‌تر معمولاً بهتر است، اما همیشه نه.

گاهی یک مدل کوچک‌تر:

  • برای یک وظیفه خاص
  • با Prompt مناسب
  • همراه با RAG

می‌تواند بهتر عمل کند.


2. هزینه (Cost)

اکثر ارائه‌دهندگان LLM هزینه را بر اساس Token حساب می‌کنند.

معمولاً:

Price per million tokens

هزینه معمولاً شامل:

Input Tokens

متنی که به مدل می‌دهید:

  • Prompt
  • Context بازیابی شده از RAG

Output Tokens

متنی که مدل تولید می‌کند.


مدل‌های:

  • جدیدتر
  • بزرگ‌تر
  • قوی‌تر

معمولاً هزینه بیشتری دارند.


3. Context Window

Context Window یعنی:

حداکثر تعداد Tokenهایی که مدل می‌تواند همزمان پردازش کند.

شامل:

Prompt + Retrieved Documents + Generated Answer

مثال:

مدل:

128K Context Window

می‌تواند حدود:

128 هزار Token

را پردازش کند.


Context بزرگ چه مزیتی دارد؟

برای RAG مفید است چون می‌توان:

  • Documentهای بیشتری وارد Prompt کرد
  • اطلاعات بیشتری به مدل داد

اما:

هزینه Token همچنان پرداخت می‌شود.


4. سرعت مدل

دو معیار مهم:


Time To First Token (TTFT)

زمانی که طول می‌کشد اولین Token تولید شود.

مهم برای:

  • Chatbot
  • سیستم‌های Real-Time

Tokens Per Second

سرعت تولید Token.

مثلاً:

50 tokens/sec

اگر RAG شما چت آنلاین است:

Latency اهمیت زیادی دارد.


5. تاریخ آخرین آموزش (Knowledge Cutoff)

Knowledge Cutoff:

آخرین تاریخی که اطلاعات آموزشی مدل شامل آن بوده است.

مثلاً:

Knowledge cutoff: 2025

یعنی:

مدل اطلاعات بعد از 2025 ندارد.


حتی در RAG:

مدل جدیدتر معمولاً بهتر است.

خصوصاً برای:

  • اخبار
  • قوانین جدید
  • تکنولوژی‌های جدید

کیفیت مدل (Model Quality)

مهم‌ترین بخش انتخاب LLM کیفیت است.

اما اندازه‌گیری کیفیت سخت‌تر است.

کیفیت شامل:

  • توانایی حل مسئله
  • Reasoning
  • تولید متن طبیعی
  • کدنویسی
  • درک دستورها

است.


برای مقایسه مدل‌ها از Benchmark استفاده می‌شود.


انواع Benchmark برای LLM

سه دسته اصلی وجود دارد:

  1. Automated Benchmarks
  2. Human Evaluation
  3. LLM as Judge

1. Automated Benchmarks

در این روش:

کامپیوتر پاسخ مدل را بررسی می‌کند.


مثال:

MMLU

(Massive Multitask Language Understanding)

شامل:

57 موضوع مختلف:

  • علوم
  • ریاضی
  • حقوق
  • پزشکی
  • علوم انسانی

است.

فرمت:

سوال چندگزینه‌ای.


مزیت:

  • سریع
  • قابل تکرار
  • ارزان

عیب:

همه توانایی‌های مدل را نشان نمی‌دهد.


مثلاً:

یک مدل ممکن است در MMLU عالی باشد ولی:

  • متن خوبی تولید نکند
  • پاسخ مکالمه‌ای ضعیف بدهد

2. Human Evaluation

در این روش انسان‌ها پاسخ مدل‌ها را مقایسه می‌کنند.

روش:

دو مدل به یک Prompt پاسخ می‌دهند.

مثلاً:

Model A
Model B

کاربر انتخاب می‌کند:

کدام بهتر است؟


نتایج معمولاً با الگوریتم:

Elo Rating

رتبه‌بندی می‌شوند.

مثل رتبه‌بندی شطرنج.


نمونه معروف:

LLM Arena


مزیت:

می‌تواند موارد ظریف را ببیند:

  • طبیعی بودن متن
  • کیفیت پاسخ
  • ترجیح انسانی

عیب:

  • هزینه زیاد
  • زمان‌بر

3. LLM as a Judge

در این روش:

یک LLM دیگر، مدل را ارزیابی می‌کند.

ساختار:

Question

↓


Model Answer

↓

Judge LLM

↓

Score

مزایا:

  • ارزان‌تر
  • سریع‌تر
  • قابل توسعه

مشکل:

Bias

مثلاً:

مدل‌های GPT ممکن است پاسخ‌های GPT را بیشتر دوست داشته باشند.

یا:

Gemini مدل‌های Gemini را ترجیح دهد.


ویژگی‌های یک Benchmark خوب

یک Benchmark مناسب باید:


1. مرتبط با پروژه باشد

مثلاً:

اگر RAG شما کدنویسی نیست:

Benchmark کدنویسی مهم نیست.


2. سخت باشد

اگر همه مدل‌ها نمره کامل بگیرند:

Benchmark بی‌ارزش است.


3. قابل تکرار باشد

نتیجه‌ها نباید هر بار کاملاً تغییر کنند.


4. با عملکرد واقعی هماهنگ باشد

مثلاً:

اگر مدل در Benchmark کدنویسی خوب است:

واقعاً باید کد خوب تولید کند.


مشکل Data Contamination

یک مشکل مهم:

مدل‌های LLM روی اینترنت آموزش دیده‌اند.

ممکن است:

سوالات Benchmark قبلاً در داده آموزشی مدل وجود داشته باشد.

در این حالت:

مدل جواب را حفظ کرده است.

نه اینکه واقعاً توانایی داشته باشد.


مشکل Saturation Benchmark

Benchmarkها عمر محدودی دارند.

الگو:

ابتدا:

مدل‌ها نمره پایین می‌گیرند.

بعد از چند سال:

مدل‌ها به سقف می‌رسند.

مثلاً:

98%
99%
100%

دیگر Benchmark نمی‌تواند تفاوت مدل‌ها را نشان دهد.


پس:

Benchmark جدید ساخته می‌شود.


روند پیشرفت LLMها

الگوی کلی:

Benchmark جدید
        ↓
مدل‌ها پیشرفت می‌کنند
        ↓
Benchmark اشباع می‌شود
        ↓
Benchmark جدید ساخته می‌شود

انتخاب LLM برای RAG

در عمل باید بین چند عامل تعادل ایجاد کنید:

معیار اهمیت
کیفیت پاسخ خیلی زیاد
هزینه زیاد
سرعت زیاد
Context Window متوسط تا زیاد
تاریخ آموزش متوسط

مثال انتخاب مدل

Chatbot داخلی شرکت

نیاز:

  • دقت
  • اطلاعات سازمانی

اولویت:

Quality > Cost > Speed

دستیار لحظه‌ای موبایل

نیاز:

  • پاسخ سریع

اولویت:

Latency > Cost > Quality

سیستم پزشکی یا حقوقی

نیاز:

  • دقت بالا

اولویت:

Quality > Cost

نکته مهم در RAG

در RAG، شما بخشی از مشکل دانش را با Retriever حل می‌کنید.

بنابراین همیشه بزرگ‌ترین مدل لازم نیست.

یک مدل متوسط با:

  • Retriever خوب
  • Chunking مناسب
  • Reranking
  • Prompt مناسب

ممکن است بهتر از یک مدل بزرگ بدون RAG عمل کند.


جمع‌بندی نهایی

  • انتخاب LLM روی سرعت، هزینه و کیفیت RAG اثر مستقیم دارد.
  • مدل‌های بزرگ‌تر معمولاً قوی‌تر ولی گران‌تر هستند.
  • Context Window برای RAG اهمیت زیادی دارد.
  • Benchmarkها ابزار مقایسه هستند ولی محدودیت دارند.
  • سه نوع اصلی ارزیابی:
    • Automated Benchmark
    • Human Evaluation
    • LLM as Judge
  • Benchmarkها به مرور اشباع می‌شوند.
  • انتخاب مدل باید بر اساس کاربرد واقعی انجام شود.
  • در سیستم‌های RAG باید مدل را همراه با Retriever و کل Pipeline ارزیابی کرد، نه به تنهایی.