برای اجرای LLM چقدر رم لازم دارید؟

حافظه‌ای که یک مدل زبانی لازم دارد به سه عدد برمی‌گردد: چند پارامتر دارد، هر پارامتر با چند بیت ذخیره شده و چقدر کانتکست به آن می‌دهید. این حساب را اینجا برای اندازه‌های رایج مدل و برای همهٔ Macها انجام داده‌ایم تا بتوانید برای هر مدلی جوابش را پیدا کنید.

به‌روزرسانی

به‌طور خلاصه

  • وزن‌ها: پارامترها × بیت به ازای هر وزن ÷ 8. با فرمت 4 بیتی MLX این می‌شود حدود 0.56 GB به ازای هر میلیارد پارامتر؛ در 8 بیت حدود 1.06 GB و در 16 بیت 2 GB.
  • پس یک مدل 8B در 4 بیت حدود 4.5 GB، یک مدل 32B حدود 18 GB و یک مدل 70B حدود 39 GB لازم دارد، پیش از کانتکست.
  • کانتکست (KV cache) جداگانه اضافه می‌شود و با هر توکن بزرگ‌تر می‌شود: برای Qwen3 8B، کانتکستی با 32,000 توکن حدود 4.8 GB می‌گیرد، بیشتر از وزن‌های 4 بیتی خودش.
  • روی Mac، GPU به‌طور پیش‌فرض می‌تواند حدود 75% حافظهٔ یکپارچه را به کار ببرد، پس یک Mac با 16 GB حدود 12 GB برای مدل دارد. روی PC، مدل باید در VRAM خود کارت گرافیک جا شود تا با سرعت کامل اجرا شود.

1قاعده: پارامترها × بیت‌ها

یک مدل بیشتر از وزن‌هایش تشکیل شده است: یک عدد برای هر پارامتر. در 16 بیت هر کدام 2 بایت می‌گیرد، پس مدل به ازای هر میلیارد پارامتر 2 GB لازم دارد. کوانتیزاسیون هر وزن را با بیت‌های کمتری ذخیره می‌کند و مدل را تقریباً به همان نسبت کوچک می‌کند؛ در 4 بیت بیشتر مدل‌ها به کیفیت اصلی خود نزدیک می‌مانند.

فرمت‌های کوانتیزه‌شده کمی دادهٔ اضافه هم برای بازسازی وزن‌ها نگه می‌دارند. MLX اپل به‌طور پیش‌فرض برای هر گروه 64تایی از وزن‌ها یک مقیاس و یک بایاس، در نوع 16 بیتی خود مدل، نگه می‌دارد (MLX)، که نیم بیت به هر وزن اضافه می‌کند. نتیجه این اندازه‌هاست:

دقتبیت به ازای هر وزنGB به ازای هر میلیارد پارامتر
16 بیت (اصلی)162.0
8 بیت8.5حدود 1.06
6 بیت6.5حدود 0.81
4 بیت4.5حدود 0.56
3 بیت3.5حدود 0.44
2 بیت2.5حدود 0.31
کوانتیزاسیون affine در MLX با اندازهٔ گروه پیش‌فرض 64. فایل‌های GGUF با همان دقت تقریباً هم‌اندازه‌اند.

زیر 4 بیت، کیفیت سریع‌تر افت می‌کند. یک انتخاب پیش‌فرض خوب: بالاترین دقتی که با فضای کافی جا شود.

2حافظهٔ لازم برای اندازه‌های رایج مدل

اندازهٔ مدل16 بیت8 بیت4 بیت3 بیت
1B2 GB1.1 GB0.6 GB0.4 GB
3B6 GB3.2 GB1.7 GB1.3 GB
8B16 GB8.5 GB4.5 GB3.5 GB
14B28 GB14.9 GB7.9 GB6.1 GB
32B64 GB34 GB18 GB14 GB
70B140 GB74.4 GB39.4 GB30.6 GB
120B240 GB127.5 GB67.5 GB52.5 GB
235B470 GB249.7 GB132.2 GB102.8 GB
405B810 GB430.3 GB227.8 GB177.2 GB
671B1,342 GB712.9 GB377.4 GB293.6 GB
فقط وزن‌ها، طبق قاعدهٔ بالا. کانتکست و کمی حاشیه برای نرم‌افزار اجرا را هم اضافه کنید.

برخی مدل‌ها از ابتدا با دقت پایین منتشر می‌شوند. gpt-oss-120b از OpenAI دارای 117 میلیارد پارامتر است و وزن‌های ترکیب متخصصانش را در یک فرمت 4 بیتی به نام MXFP4 نگه می‌دارد، پس روی یک GPU تکی 80 GB جا می‌شود (OpenAI). برای یک مدل مشخص، صفحه‌اش را باز کنید: همهٔ مدل‌های باز و Macی که لازم دارند، برای نمونه gpt-oss-120b یا Llama 3.3 70B.

3کانتکست هم حافظه می‌گیرد

وقتی مدل می‌خواند و می‌نویسد، برای هر توکن گفت‌وگو در هر لایه یک کلید و یک مقدار نگه می‌دارد: همان KV cache. اندازه‌اش برابر است با 2 × لایه‌ها × سرهای KV × اندازهٔ هر سر × بایت هر مقدار × توکن‌ها.

برای نمونه، Qwen3 8B دارای 36 لایه، 8 سر KV و اندازهٔ سر 128 است و در 16 بیت ذخیره می‌شود (config). یعنی 147,456 بایت برای هر توکن:

کانتکستKV cache برای Qwen3 8B (16 بیت)
8,192 توکنحدود 1.2 GB
32,768 توکنحدود 4.8 GB
40,960 توکن (کل کانتکست آن)حدود 6.0 GB
وزن‌های آن در 4 بیت حدود 4.6 GB است (8.2 میلیارد پارامتر)، پس یک کانتکست طولانی می‌تواند از خود مدل حافظهٔ بیشتری بخواهد.

مدل‌هایی با grouped-query attention، مثل همین مدل، سرهای KV کمتری از سرهای attention دارند (8 در برابر 32) که کش را از همان ابتدا چهار برابر کوچک می‌کند. با کوانتیزه‌کردن کش می‌توانید بیشتر صرفه‌جویی کنید: سرور mlx-lm گزینهٔ --kv-bits 4 را می‌پذیرد (mlx-lm). برای چت، چند هزار توکن کانتکست کافی است؛ برای ایجنت‌ها، اسناد طولانی یا کد، چند گیگابایت در نظر بگیرید.

4چه مدلی روی Mac جا می‌شود

حافظهٔ Mac بین CPU و GPU مشترک است و macOS به‌طور پیش‌فرض فقط بخشی از آن را به GPU می‌دهد. صفحهٔ مقایسه ما حدود 75% حساب می‌کند؛ README پروژهٔ mlx-lm نشان می‌دهد چطور در macOS 15 یا جدیدتر این حد را با sudo sysctl iogpu.wired_limit_mb=N بالا ببرید (mlx-lm)، اما macOS و اپ‌های دیگرتان هم هنوز جا لازم دارند.

حافظهٔ Macبرای GPU (حدود 75%)بزرگ‌ترین مدل در 4 بیتبزرگ‌ترین در 8 بیت
8 GB6 GBحدود 10Bحدود 5B
16 GB12 GBحدود 21Bحدود 11B
24 GB18 GBحدود 32Bحدود 16B
32 GB24 GBحدود 42Bحدود 22B
36 GB27 GBحدود 48Bحدود 25B
48 GB36 GBحدود 64Bحدود 33B
64 GB48 GBحدود 85Bحدود 45B
96 GB72 GBحدود 128Bحدود 67B
128 GB96 GBحدود 170Bحدود 90B
256 GB192 GBحدود 341Bحدود 180B
512 GB384 GBحدود 682Bحدود 361B
فقط وزن‌ها: چند گیگابایت از این مقدار را برای کانتکست کنار بگذارید. هر اندازه به مدل‌هایی پیوند دارد که در آن خوب اجرا می‌شوند.

حافظه تعیین می‌کند چه چیزی جا شود؛ پهنای باند حافظه تعیین می‌کند با چه سرعتی بنویسد. راهنمای بهترین Mac برای LLM محلی نیمهٔ دوم را توضیح می‌دهد و رتبه‌بندی همهٔ Macها هر دو را کنار هم می‌گذارد.

5RAM، VRAM و حافظهٔ یکپارچه

روی PC با کارت گرافیک، مدل فقط وقتی با سرعت کامل اجرا می‌شود که در حافظهٔ خود کارت، یعنی VRAM، جا شود: 32 GB در RTX 5090 (NVIDIA). لایه‌هایی که جا نمی‌شوند می‌توانند از RAM سیستم اجرا شوند، اما خواندن آن حافظه بسیار کندتر است و مدل خیلی کند می‌شود.

Mac حافظهٔ VRAM جداگانه ندارد: GPU همان حافظهٔ یکپارچه‌ای را می‌خواند که CPU می‌خواند، برای همین یک Mac با 64 GB یا 128 GB مدل‌هایی را جا می‌دهد که هیچ کارت گرافیک مصرفی تکی نمی‌تواند. چند PC هم حالا همین‌طور کار می‌کنند، مثل DGX Spark از NVIDIA و دستگاه‌های Ryzen AI Max از AMD با 128 GB حافظهٔ مشترک بین CPU و GPU: M5 Max در برابر DGX Spark و M5 Max در برابر RTX 5090 را ببینید.

6مدل‌های ترکیب متخصصان (MoE)

یک مدل ترکیب متخصصان همهٔ پارامترهایش را در حافظه نگه می‌دارد اما برای هر توکن فقط چند تا از آن‌ها را به کار می‌برد. حافظه از کل پارامترها پیروی می‌کند؛ سرعت از بخش فعال. gpt-oss-20b دارای 21 میلیارد پارامتر است که 3.6 میلیارد آن فعال است (OpenAI): مثل یک مدل 21B حافظه می‌خواهد و تقریباً به سرعت یک مدل 4B می‌نویسد.

همین مدل‌های ترکیب متخصصان را برای Mac مناسب می‌کند، چون Mac در مقایسه با کارت‌های گرافیک نسبت به پهنای باند، حافظهٔ بیشتری دارد. مقایسه هر دو عدد را برای همهٔ مدل‌های محبوب نشان می‌دهد.

7پرسش‌ها

برای اجرای مدل 70B چقدر رم لازم دارم؟
حدود 39 GB برای وزن‌ها در 4 بیت، به‌علاوهٔ کانتکست: در عمل یک Mac با 64 GB یا بیشتر، یا چند کارت گرافیک. در 8 بیت حدود 74 GB لازم دارد، پس 128 GB.
آیا 16 GB رم برای اجرای LLM کافی است؟
بله، برای مدل‌هایی تا حدود 14B پارامتر در 4 بیت: یک Mac با 16 GB به‌طور پیش‌فرض حدود 12 GB به GPU می‌دهد. مدل‌های 8B با فضای کافی برای کانتکست به‌راحتی اجرا می‌شوند. بهترین LLMها برای Mac با 16 GB را ببینید.
یک مدل 8B چقدر VRAM لازم دارد؟
حدود 4.5 GB در 4 بیت، 8.5 GB در 8 بیت و 16 GB در 16 بیت، به‌علاوهٔ حدود 1.2 GB برای کانتکستی با 8,000 توکن در مورد Qwen3 8B.
آیا طول کانتکست حافظه مصرف می‌کند؟
بله. KV cache با هر توکن گفت‌وگو بزرگ‌تر می‌شود. برای Qwen3 8B حدود 147 KB به ازای هر توکن در 16 بیت است: حدود 4.8 GB در 32,000 توکن.
آیا می‌توانم مدلی بزرگ‌تر از رم خود را اجرا کنم؟
نه به شکلی که به کار بیاید. اگر وزن‌ها جا نشوند، سیستم swap می‌کند یا از حافظهٔ کندتر می‌خواند و خروجی بسیار کند می‌شود. از دقت پایین‌تر، مدل کوچک‌تر یا مدل ترکیب متخصصان استفاده کنید، یا آن را روی چند دستگاه پخش کنید: کلاسترهای هوش مصنوعی Mac را ببینید.

منابع

  1. MLXml-explore.github.io
  2. OpenAIhuggingface.co
  3. confighuggingface.co
  4. mlx-lmgithub.com
  5. mlx-lmgithub.com
  6. NVIDIAnvidia.com
  7. OpenAIhuggingface.co

بیشتر بخوانید