انتخاب سخت‌افزار برای مدل محلی؛ رم، VRAM و مک اپل سیلیکون

⏱ زمان مطالعه: حدود ۶ دقیقه

وقتی تصمیم می‌گیرید یک مدل زبانی را به‌جای فراخوانی API ابری، روی دستگاه خودتان اجرا کنید، اولین سؤال فنی همیشه سخت‌افزار است، نه انتخاب مدل. همان مدل روی دو دستگاه متفاوت می‌تواند تجربه‌ای کاملاً متفاوت بدهد؛ روی یکی روان و قابل‌استفاده در کار روزمره، و روی دیگری آن‌قدر کند که عملاً از رده خارج می‌شود. اگر تازه وارد این مسیر شده‌اید و هنوز مفاهیم پایه را مرور نکرده‌اید، بهتر است پیش از ادامه سری این مقاله‌ها، نگاهی به نقشهٔ راه مدل‌های متن‌باز و اجرای محلی بیندازید تا واژه‌ها و ابزارهای پایه برایتان آشنا باشد. در این مقاله می‌خواهیم بدون دادن عدد دقیق گیگابایت یا قیمت، رابطهٔ کیفی بین اندازهٔ مدل و حافظهٔ موردنیاز، تفاوت GPU و CPU، و مزیت معماری حافظهٔ یکپارچهٔ اپل سیلیکون را روشن کنیم تا بتوانید بر اساس نیاز واقعی خودتان تصمیم بگیرید، نه بر اساس عدد و رقمی که در یک پست شبکهٔ اجتماعی دیده‌اید.

رابطهٔ اندازهٔ مدل با حافظهٔ موردنیاز

هر مدل زبانی از میلیون‌ها تا میلیاردها پارامتر تشکیل شده، و برای اینکه استنتاج (inference) انجام شود، این پارامترها باید به‌طور کامل در حافظه بارگذاری شوند؛ چه آن حافظه RAM سیستم باشد و چه VRAM کارت گرافیک. هرچه تعداد پارامترها بیشتر باشد، حجم این وزن‌ها بزرگ‌تر می‌شود و طبیعتاً به حافظهٔ بیشتری نیاز دارد. این رابطه تقریباً خطی است: مدلی با پارامترهای چند برابر، حافظهٔ چند برابر هم می‌خواهد. تکنیک‌های quantization (فشرده‌سازی وزن‌ها به دقت عددی پایین‌تر) می‌توانند این حجم را به‌طور محسوس کاهش دهند، اما همیشه یک مصالحه بین کیفیت خروجی و سبکی مدل وجود دارد؛ فشرده‌سازی بیش از حد می‌تواند کیفیت پاسخ‌ها را افت دهد.

نکتهٔ کمتر دیده‌شده این است که حافظهٔ موردنیاز فقط برای وزن‌های مدل نیست. در حین تولید پاسخ، مدل یک حافظهٔ موقت به نام KV cache نگه می‌دارد که با طول context (یعنی متنی که به مدل می‌دهید و متنی که تولید می‌کند) بزرگ‌تر می‌شود. یعنی حتی با مدل ثابت، اگر بخواهید اسناد طولانی بدهید یا مکالمهٔ طولانی داشته باشید، به حافظهٔ اضافی نیاز خواهید داشت. این همان جایی است که خیلی از کاربران تازه‌کار غافلگیر می‌شوند: مدل روی تست کوتاه خوب کار می‌کند، اما با یک سند بلند کند می‌شود یا خطا می‌دهد.

انتخاب سخت‌افزار برای مدل محلی؛ رم، VRAM و مک اپل سیلیکون

GPU با VRAM اختصاصی در برابر CPU با RAM سیستم

سریع‌ترین حالت اجرای مدل محلی، زمانی است که کل وزن‌های مدل داخل VRAM یک کارت گرافیک اختصاصی جا شوند. GPU برای عملیات ماتریسی موازی طراحی شده و به همین دلیل استنتاج روی آن به‌طور محسوس سریع‌تر از CPU است. اما این سرعت یک سقف سخت دارد: VRAM کارت گرافیک محدود است، و اگر مدل بزرگ‌تر از این ظرفیت باشد، بخشی از وزن‌ها باید به RAM سیستم منتقل شود (offloading)؛ این جابه‌جایی بین حافظه‌ها یکی از رایج‌ترین دلایل کند شدن ناگهانی مدل‌های محلی است.

اجرای مدل فقط روی CPU هم کاملاً ممکن است و بسیاری از ابزارهای محلی این حالت را به‌طور پیش‌فرض پشتیبانی می‌کنند. مزیتش این است که به هیچ کارت گرافیک خاصی وابسته نیستید و از RAM معمولی سیستم استفاده می‌کنید که معمولاً حجم بیشتری دارد. اما تاوانش سرعت است؛ CPU برای این نوع محاسبات موازی بهینه نشده و پاسخ‌دهی می‌تواند چند برابر کندتر باشد. این حالت برای تست، توسعه، یا کارهایی که فوریت ندارند مناسب است، اما برای استفادهٔ real-time یا حجم بالا معمولاً رضایت‌بخش نیست.

مزیت حافظهٔ یکپارچهٔ اپل سیلیکون

معماری تراشه‌های اپل سیلیکون (سری M) یک ویژگی متفاوت دارد که آن را از مدل معمول «CPU با RAM جدا از GPU با VRAM جدا» متمایز می‌کند: حافظهٔ یکپارچه یا Unified Memory. در این معماری، CPU، GPU و Neural Engine همگی از یک استخر حافظهٔ مشترک استفاده می‌کنند، به‌جای اینکه GPU محدود به یک VRAM کوچک و جدا باشد. نتیجهٔ عملی این است که GPU روی مک می‌تواند به سهم بزرگی از حافظهٔ کل سیستم دسترسی داشته باشد، در حالی‌که در یک PC معمولی، GPU فقط به VRAM محدود خودش محدود است، حتی اگر RAM سیستم زیاد باشد.

این یعنی یک مک با حافظهٔ یکپارچهٔ بالا می‌تواند مدل‌های بزرگ‌تری را نسبت به یک لپ‌تاپ با GPU مجزا و VRAM محدود اجرا کند، حتی اگر توان خام محاسباتی GPU مک از یک کارت گرافیک اختصاصی قدرتمند کمتر باشد. اکوسیستم نرم‌افزاری هم به این نقطه‌قوت پاسخ داده؛ backendهایی مانند Metal در ابزارهایی نظیر llama.cpp، و فریم‌ورک‌هایی مثل MLX که مخصوص اپل سیلیکون ساخته شده‌اند، از این حافظهٔ یکپارچه به‌خوبی بهره می‌برند.

چه زمانی مک انتخاب بهتری است؟

اگر اولویت شما اجرای مدل‌های نسبتاً بزرگ‌تر بدون سرمایه‌گذاری روی یک ایستگاه‌کاری با کارت گرافیک جداگانه است، و به مصرف انرژی پایین و سکوت دستگاه هم اهمیت می‌دهید، مک با حافظهٔ یکپارچهٔ بالا گزینهٔ منطقی است. اما اگر کارتان بیشتر throughput خام یا اجرای موازی چند مدل هم‌زمان است، یک سیستم با GPU اختصاصی قدرتمند همچنان می‌تواند برتری داشته باشد.

معیارهای عملی برای انتخاب

سناریوی استفاده اولویت سخت‌افزاری نکتهٔ عملی
توسعه و تست سریع، کارهای غیرفوری هر سیستمی با RAM کافی، حتی بدون GPU می‌توانید با CPU شروع کنید و بعداً ارتقا دهید
استفادهٔ روزمره و real-time (چت، دستیار کدنویسی) GPU اختصاصی یا مک با حافظهٔ یکپارچهٔ بالا تأخیر پاسخ مستقیماً روی تجربهٔ کاربری اثر می‌گذارد
حریم خصوصی حداکثری روی اسناد محرمانه هر سخت‌افزاری، اما تمرکز روی اجرای کاملاً آفلاین سرعت اهمیت کمتری دارد، ایزوله بودن شبکه مهم‌تر است
اجرای هم‌زمان چند مدل یا بار پردازشی بالا GPU با VRAM بزرگ یا چند GPU حافظهٔ یکپارچهٔ مک برای این سناریو محدودیت پهنای باند دارد
پروژهٔ قابل‌حمل و کم‌مصرف مک با اپل سیلیکون مصرف انرژی پایین‌تر و سکوت در برابر سرعت خام

در نهایت، این تصمیم را نباید فقط بر مبنای عدد خام گیگابایت گرفت؛ نوع بار کاری، حساسیت به تأخیر، و اینکه آیا قرار است چند مدل هم‌زمان اجرا شود، همگی روی انتخاب نهایی اثر می‌گذارند. اگر هدف نهایی شما ساخت یک سیستم مبتنی بر بازیابی اسناد (RAG) روی سخت‌افزار محلی است، بهتر است این تصمیم را همزمان با نگاهی به نقشهٔ راه ساخت چت‌بات تخصصی بگیرید تا معماری کلی سیستم را هم در نظر داشته باشید.

جمع‌بندی

  • اندازهٔ مدل و حافظهٔ موردنیاز رابطهٔ تقریباً خطی دارند؛ طول context هم حافظهٔ اضافی (KV cache) مصرف می‌کند.
  • GPU با VRAM اختصاصی سریع‌ترین گزینه است، اما با سقف سخت حافظه محدود می‌شود.
  • CPU-only همیشه کار می‌کند، اما برای استفادهٔ real-time معمولاً به‌اندازهٔ کافی سریع نیست.
  • حافظهٔ یکپارچهٔ اپل سیلیکون به GPU اجازه می‌دهد از سهم بزرگ‌تری از حافظهٔ کل سیستم استفاده کند، که برای اجرای مدل‌های بزرگ‌تر روی یک دستگاه فشرده مزیت محسوبی است.
  • انتخاب سخت‌افزار را بر اساس سناریوی واقعی استفاده‌تان بگیرید، نه صرفاً بر اساس بزرگ‌ترین عدد ممکن.
(0 رأی)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *