وقتی کسی میپرسد «برای اجرای AI چه کارت گرافیکی لازم است؟»، هنوز یک اطلاعات مهم کم داریم: کدام مدل؟ تفاوت سختافزاری میان یک مدل ۴ میلیارد پارامتری و یک مدل چندصد میلیارد پارامتری بسیار زیاد است.
مهمترین منبع: VRAM
در بسیاری از مدلهای زبانی، VRAM مهمترین محدودیت سختافزاری است. وزنهای مدل باید داخل حافظه قرار بگیرند و هنگام اجرا نیز حافظهای برای KV Cache و عملیات دیگر لازم است.
یک محاسبهٔ بسیار تقریبی این است: یک مدل ۸ میلیارد پارامتری در FP16 فقط برای وزنها حدود ۱۶ گیگابایت حافظه نیاز دارد. اگر همان مدل به ۴ بیت Quantize شود، حجم وزنها میتواند بسیار کمتر شود. اما این محاسبه فقط وزنهاست؛ Context Length، Batch Size و معماری مدل نیز روی مصرف حافظه تأثیر میگذارند.
Quantization چیست؟
Quantization دقت عددی وزنها را کاهش میدهد تا مدل حافظهٔ کمتری مصرف کند. فرمتهای ۸ بیت و ۴ بیت بسیار متداولاند.
مزیت اصلی:
- مصرف VRAM کمتر
- امکان اجرای مدل بزرگتر روی همان سختافزار
- گاهی سرعت بالاتر
اما بسته به مدل و روش Quantization، ممکن است مقداری افت کیفیت ایجاد شود.
آیا CPU کافی است؟
برخی مدلهای کوچک را میتوان کاملاً روی CPU اجرا کرد. ابزارهای مبتنی بر llama.cpp اجرای مدلهای Quantized را روی CPU و حافظهٔ RAM امکانپذیر کردهاند. اما برای مدلهای بزرگ یا زمانی که سرعت پاسخ اهمیت دارد، GPU معمولاً تفاوت زیادی ایجاد میکند.
RAM چه نقشی دارد؟
اگر تمام مدل داخل VRAM قرار نگیرد، بعضی Runtimeها میتوانند بخشی از مدل را داخل RAM نگه دارند. این روش اجرای مدلهای بزرگتر را ممکن میکند، اما معمولاً سرعت را کاهش میدهد. بنابراین ۱۲۸ گیگابایت RAM نمیتواند واقعاً جای ۱۲۸ گیگابایت VRAM را بگیرد.
SSD
مدلهای بزرگ ممکن است دهها یا حتی صدها گیگابایت فضا اشغال کنند. NVMe سریع باعث میشود بارگذاری مدلها و مدیریت فایلها سریعتر انجام شود. اما بعد از بارگذاری مدل، سرعت تولید توکن بیشتر به GPU، پهنای باند حافظه و معماری مدل بستگی دارد تا سرعت SSD.
یک GPU یا چند GPU؟
اگر مدل داخل یک GPU جا نشود، میتوان وزنها را میان چند GPU تقسیم کرد؛ اما Multi-GPU پیچیدگی بیشتری دارد و پهنای باند ارتباط بین GPUها نیز اهمیت پیدا میکند. به همین دلیل دو GPU همیشه به معنای دو برابر شدن سرعت نیست.
Context طولانی رایگان نیست
مدلی ممکن است از Context بسیار طولانی پشتیبانی کند، اما استفادهٔ واقعی از آن حافظه و پردازش بیشتری نیاز دارد. هرچه Context افزایش یابد، KV Cache نیز میتواند بخش بیشتری از حافظه را اشغال کند. پس عدد Context Window روی صفحهٔ معرفی مدل نباید تنها معیار انتخاب باشد.
Ollama برای شروع
برای آزمایش مدلها بهصورت محلی روی Windows، macOS یا Linux، Ollama یکی از سادهترین گزینههاست: مدل را دریافت میکنید و با تنظیمات نسبتاً کمی اجرا میکنید.
vLLM برای سرویسدهی
وقتی قرار است یک مدل به چند کاربر یا سرویس پاسخ دهد، vLLM یکی از Runtimeهای مهم است و از تعداد زیادی معماری جدید پشتیبانی میکند.
قبل از خرید GPU
ابتدا مدل را مشخص کنید، نسخهٔ Quantized را بررسی کنید، VRAM مورد نیاز را محاسبه کنید، سرعت واقعی مدل روی سختافزار مشابه را پیدا کنید و تعداد کاربران همزمان را تعیین کنید؛ بعد سراغ خرید سختافزار بروید. خرید GPU و سپس جستوجو برای مدلی که روی آن اجرا شود، معمولاً ترتیب خوبی نیست.
برای انتخاب مدل، بهترین مدلهای Self-Hosted را هم ببینید.