اگر امروز قصد دارید یک مدل کدنویسی پیشرفته را بهصورت آفلاین روی سیستم خود اجرا کنید، باید بدانید که اعداد تبلیغاتی معمولاً بخشی از حقیقت را پنهان میکنند. تفاوت میان پاسخی که در یک ثانیه میرسد و پاسخی که چهار دقیقه زمان میبرد، دقیقاً در مقدار حافظه گرافیکی شما نهفته است.
طبق مستندات فنی Unsloth، کارت گرافیکی با ۲۴ گیگابایت حافظه، نقطهٔ ورود واقعی برای نسخههای کوانتیده (Quantized) مدل Qwen 3.8 27B است. بسیاری از جداول سختافزاری عدد ۱۷ گیگابایت را ذکر میکنند، اما این عدد به مجموع حافظه سیستم (RAM + VRAM) اشاره دارد، نه ظرفیت خالص GPU. این رقم مستقیماً از جدول سختافزاری Unsloth استخراج شده است، جایی که در سرتیتر آن صراحتاً واحدها به عنوان «حافظه کل» یا «حافظه یکپارچه» تعریف شدهاند.
این تمایز برای هر کسی که قصد میزبانی یک مدل کدنویسی یا مدلهای عاملمحور (Agentic) با عملکرد بالا را بهصورت آفلاین دارد، حیاتی است. در سختافزارهایی با VRAM کمتر از ۲۴ گیگابایت، مدل اغلب به حافظه رم سیستم سرریز میشود و همین اتفاق باعث سقوط سرعت استنتاج (Inference) — لحظهای که مدل واقعاً جواب تولید میکند، شبیه به خودِ آشپزی و نه دورهی آموزش آشپز — یا شکست کامل عملیات میشود. اگر ۲۴ گیگابایت حافظه دارید، نسخهی کوانتیده مورد نظر Qwen را اجرا میکنید؛ با ۱۶ گیگابایت، در حال اجرای یک نسخه سازشی هستید؛ و پایینتر از آن، اصلاً تلاش نکنید.
همانطور که در تحلیلهای قبلی ما دربارهی بهینهسازی مدلهای بازمتن اشاره کردیم، مدیریت حافظه در مدلهای لبه (Edge) همواره گلوگاه اصلی بوده است. این مدل در حالی منتشر شده که صنعت به سمت مدلهای «در سطح دسکتاپ» حرکت میکند. Qwen 3.8 27B تحت مجوز Apache 2.0 در Hugging Face به عنوان یک مدل متنی-بینایی (Vision-Language) متراکم با ۲۷ میلیارد پارامتر منتشر شده است. برای سالها، مدلهای ۲۷ میلیارد پارامتری به عنوان داراییهای مراکز داده (Datacenter) شناخته میشدند، اما معماری Qwen 3.8 27B آن را به گزینهای مناسب برای ایستگاههای کاری (Workstation) پیشرفته تبدیل کرده است. این موضوع با مدلهایی مانند GLM 5.2 کاملاً متفاوت است، جایی که حتی یک نسخه ۲-بیت همچنان به ۲۵۶ گیگابایت رم در Mac Studio نیاز دارد.
تفاوت میان مدلی که فوراً پاسخ میدهد و مدلی که چهار دقیقه برای تکمیل یک نوبت گفتگو زمان میبرد را تصور کنید. این دقیقاً شکاف میان اجرای یک کوانت ۴-بیت روی RTX 4090 در مقابل یک کوانت ۲-بیت روی MacBook ۱۶ گیگابایتی است. در این مورد، برخی کاربران توانستهاند با استفاده از اولاما و مدلهای Qwen روی مکمینیهای ۱۶ گیگابایتی جایگزینهایی برای ابزارهای ابری مانند گیتهاب کوپایلت پیدا کنند، هرچند محدودیتهای سختافزاری همچنان پابرجاست.
ریاضیات حافظه
بر اساس راهنمای فنی منتشر شده در ۱۷ اوت ۲۰۲۶، نیازهای حافظه بسته به سطح کوانتش (Quantization) — یعنی فشردهسازی وزنهای مدل برای اشغال فضای کمتر — بهشدت تغییر میکند. این اعداد معمولاً چند گیگابایت بیشتر از حجم فایل هستند تا فضای کافی برای KV Cache، بافرهای محاسباتی و سربار سیستمعامل باقی بماند:
- ۲-بیت: ۱۱ تا ۱۳ گیگابایت حافظه کل (کوچکترین نسخه GGUF قابل استفاده، نسخه UD-IQ2_XXS از Unsloth با حجم ۹.۰۱ گیگابایت است).
- ۳-بیت: ۱۳ تا ۱۶ گیگابایت حافظه کل (فایلهای GGUF واقعی بین ۱۱.۹۱ تا ۱۳.۸۲ گیگابایت متغیر هستند).
- ۴-بیت: ۱۷ تا ۱۹ گیگابایت حافظه کل (هدف پیشنهادی؛ فایلهای GGUF بین ۱۶.۰۶ تا ۱۷.۹۲ گیگابایت هستند).
- ۶-بیت: ۲۴ گیگابایت حافظه کل (فایلهای GGUF بین ۲۲.۴۳ تا ۲۵.۹۲ گیگابایت متغیر هستند).
- ۸-بیت: ۳۱ گیگابایت حافظه کل (فایلهای GGUF بین ۲۸.۶۰ تا ۳۱.۴۶ گیگابایت متغیر هستند).
- BF16: ۵۶ گیگابایت حافظه کل (حجم فایل ۵۳.۸۱ گیگابایت است).
این ارقام نشاندهنده بودجه کل حافظه برای کل ماشین است. در کارت گرافیکی RTX 5080 که با ۱۶ گیگابایت حافظه GDDR7 عرضه میشود، مسیر ۴-بیت از طریق ترکیب VRAM و رم سیستم تامین میشود. مدل همچنان اجرا میشود، اما برخی لایهها در سمت اشتباه گذرگاه PCIe قرار میگیرند و سرعت تولید متن نیز به دنبال آنها به آنجا میرود. در تحلیل دقیقتر این وضعیت، باید توجه داشت که شاخصهای رایج Occupancy در ابزارهای نظارتی GPU ممکن است تصویری گمراهکننده از کارایی واقعی مدل در هنگام جابجایی دادهها بین حافظهها ارائه دهند.
سطوح عملکرد سختافزاری
عملکرد مدل کاملاً به محل استقرار وزنها بستگی دارد. کارت گرافیک به تنهایی کمتر از مجموع حافظه و پهنای باند آن اهمیت دارد:
- RTX 5090 (32 GB GDDR7): ایدهآلترین گزینه؛ اجرای نسخههای ۴ و ۶-بیت با فضای کافی برای پنجره متنی (Context Window) ۳۲ هزار توکنی. سرعت بالا و کمترین افت کیفیت.
- RTX 4090 (24 GB GDDR6X): پیکربندی پیشنهادی سازنده؛ اجرای نسخه ۴-بیت، اما کاربران باید بودجه KV Cache را بهدقت زیر نظر داشته باشند.
- RTX 5080 / 5070 Ti (16 GB GDDR7): اجرای کامل نسخه ۳-بیت روی GPU یا نسخه ۴-بیت با انتقال بخشی به رم (Offload). انتقال به رم هزینه سرعت را میطلبد.
- RTX 5070 (12 GB GDDR7): توصیه نمیشود؛ نسخه ۲-بیت جا میشود اما کیفیت خروجی توجیهپذیر نیست.
- Mac (32 GB+ Unified): اجرای راحت نسخه ۴-بیت. مجموعه کاری Metal تقریباً ۷۵٪ از کل رم را اشغال میکند.
- Mac (16 GB Unified): فقط نسخه ۲-بیت؛ سقف حافظه Metal در این مدلها ۱۲.۷۱ گیگابایت اندازهگیری شده است.
کاربران اپل با سقف سختافزاری خاصی روبرو هستند. در M2 Pro با ۱۶ گیگابایت رم، مجموعه کاری Metal محدود به حدود ۱۲.۷۱ گیگابایت است. این بدان معناست که مدل ۴-بیت بارگذاری میشود اما هنگام تولید توکن با خطای مرگبار رمزگشایی (res = -3) مواجه میگردد.
بنچمارک تجربه ۱۶ گیگابایتی
تستهای واقعی روی M2 Pro با استفاده از llama.cpp (بیلد b10450) تضاد شدیدی را میان بنچمارکهای مصنوعی و استفاده واقعی نشان میدهد. برای نسخه ۲-بیت UD-IQ2_XXS نتایج چنین بود:
- بدون زمینه (Zero Context): ۷.۱۱ توکن در ثانیه (tok/s) تولید و ۷۴.۵۹ tok/s پردازش پرامپت.
- عمق 4K: ۴.۶۸ tok/s تولید و ۵۴.۴۴ tok/s پردازش پرامپت.
- دنیای واقعی (پرامپت ۷۰۷۲ توکنی): ۲.۹۱ tok/s تولید و ۳۳.۸۴ tok/s پردازش پرامپت.
این افت عملکرد به این دلیل رخ میدهد که با پر شدن پنجره متنی، پردازش پرامپت کندتر میشود. میانگین متحرک llama.cpp نشان داد که سرعت در توکن ۲,۰۹۰ حدود ۴۳.۵۸ tok/s بود و در توکن ۶,۱۸۶ به ۳۷.۸۲ کاهش یافت. در یک تست، تسکی که در مدلهای ابری چهار دقیقه زمان میبرد، بهصورت محلی نزدیک به یک ساعت طول کشید.
راز پنجره متنی ۲۵۶ هزار توکنی
یکی از خیرهکنندهترین ویژگیهای Qwen 3.8 27B، پنجره متنی بومی ۲۶۲,۱۴۴ توکنی است که با YaRN تا ۱ میلیون توکن قابل گسترش است. این امر بهدلیل معماری لایههای ترکیبی (Hybrid Layer Topology) ممکن شده است. از ۶۴ لایه مدل، تنها ۱۶ لایه از «توجه» (Attention) کامل استفاده میکنند و ۴۸ لایه دیگر از Gated DeltaNet بهره میبرند که یک لایه توجه خطی با اندازه حالت ثابت برای هر توالی است.
این طراحی از انفجار حافظه KV Cache جلوگیری میکند. با بررسی فایل config.json مشخص میشود که ۱۶ لایه توجه کامل از ۴ سر KV با ابعاد ۲۵۶ استفاده میکنند. در حالت f16، این مقدار ۶۴ کیلوبایت برای هر توکن است:
- ۸,۱۹۲ توکن: ۰.۵ گیگابایت کش
- ۳۲,۷۶۸ توکن: ۲ گیگابایت کش
- ۱۳۱,۰۷۲ توکن: ۸ گیگابایت کش
- ۲۶۲,۱۴۴ توکن: ۱۶ گیگابایت کش
یک مدل معمولی ۶۴ لایه برای این حجم از زمینه به ۶۴ گیگابایت کش نیاز داشت. این چیدمان ترکیبی است که باعث میشود یک مدل ۲۷ میلیارد پارامتری با پنجره ۲۵۶ هزار توکنی برای دسکتاپ مناسب باشد. با این حال، استفاده از ظرفیت کامل زمینه بهتنهایی ۱۶ گیگابایت حافظه میطلبد که در ماشینهای ۱۶ گیگابایتی غیرممکن است. کاربران میتوانند با کوانتزه کردن کش از طریق دستور --cache-type-k q8_0 --cache-type-v q8_0 این فضا را نصف کنند.
استقرار و پیادهسازی
اجرای مدل از طریق llama.cpp ساده است. معماری مدل در فایلهای پیکربندی به عنوان qwen3_5 شناسایی شده که از فوریه ۲۰۲۶ (PR #19435) پشتیبانی میشود.
کاربران باید مراقب نام نسخهها باشند. سه ناشر مختلف فایلهایی با برچسب Q4_K_M منتشر کردند که تفاوت حجمی آنها تا ۲.۲ گیگابایت میرسید:
- lmstudio-community: ۱۶.۸۱ گیگابایت
- unsloth: ۱۷.۱۱ گیگابایت
- ggml-org: ۱۸.۹۷ گیگابایت
توصیه میشود بهجای اعتماد به برچسب، حجم دقیق بایتها را در Hugging Face چک کنید. پیشوند "UD" در نسخههای Unsloth نشاندهنده کوانتهای پویا است که لایههای حساس را در دقت بالاتر نگه میدارند؛ این موضوع در نسخههای ۲ و ۳-بیت بسیار حیاتی است.
برای فعالسازی قابلیتهای بینایی-زبانی (Vision-Language Model) — مدلی که همزمان متن و عکس را میفهمد — باید فایل جداگانه mmproj را دانلود کنید. فایل GGUF پایه فقط متنی است. این فایل بین ۰.۶۳ گیگابایت (نسخه Q8_0 ggml-org) تا ۰.۹۳ گیگابایت (نسخه F16 Unsloth/LM Studio) به بودجه حافظه اضافه میکند که علاوه بر وزنهای مدل است.
استقرار محلی گامبهگام
راهاندازی مدل حدود ۲۰ دقیقه زمان میبرد که بیشتر آن صرف دانلود وزنها میشود. در macOS، دستور brew install llama.cpp نسخهای بهروز ارائه میدهد. برای لینوکس و ویندوز، از باینریهای منتشر شده یا بیلد از سورس استفاده کنید.
گردش کار نصب:
- گام ۱: نصب llama.cpp. با دستور
llama-cli --versionبررسی کنید. هر بیلد سال ۲۰۲۶ عموماً کار میکند. - گام ۲: بازرسی کوانتها. از دستور curl برای بررسی API هگینگفیس جهت یافتن حجم دقیق بایتها قبل از دانلود استفاده کنید.
- گام ۳: دانلود وزنها. فایل GGUF خاص را دریافت کنید (مثلاً
Qwen3.8-27B-UD-Q3_K_XL.gguf). - گام ۴: اجرای سرور. از
llama-serverبا فلگ-c 16384استفاده کنید. برای حالت تفکر (Thinking Mode) از--temp 1.0 --top-p 0.95 --top-k 20و برای حالت غیر تفکر از--temp 0.7 --top-p 0.80 --top-k 20 --presence-penalty 1.5استفاده کنید. - گام ۵: افزودن بینایی. فلگ
--mmprojرا به همراه فایل پروژکتور دانلود شده ارسال کنید تا ورودی تصویر فعال شود.
چه زمانی محلی و چه زمانی API؟
میزبانی محلی تنها گزینه است زمانی که دادهها نباید از محیط سازمان خارج شوند، برای آزمایشگاههای ایزوله (Air-gapped) یا قراردادهایی که استنتاج شخص ثالث را ممنوع میکنند. همچنین اگر کارت گرافیک ۲۴ یا ۳۲ گیگابایتی دارید، هزینههای توکنی برای بازنویسیهای روتین کد را حذف میکند.
با این حال، برای اکثر کاربران، API اقتصادیتر است. در OpenRouter، مدل ۲۷-بیت توسط Chutes (fp8) با قیمت ۰.۴۰/۳.۰۰ دلار در هر میلیون توکن ورودی/خروجی و توسط AkashML (bf16) با قیمت ۰.۴۵/۳.۲۰ دلار ارائه میشود. توسعهدهندهای که ماهانه ۱۰ میلیون توکن ورودی و ۲ میلیون توکن خروجی پردازش میکند، حدود ۱۰ تا ۱۱ دلار پرداخت میکند؛ هزینهای که زمان زیادی میبرد تا در برابر قیمت یک GPU ردهبالا مستهلک شود.
اشتراک تیمی و مقیاسپذیری
یک سیستم محلی میتواند به یک یا دو توسعهدهنده خدمات دهد، اما نه به یک تیم کامل. اگرچه llama-server میتواند یک نقطه اتصال سازگار با OpenAI را از طریق --host 0.0.0.0 و --parallel 2 ارائه دهد، اما محدودیت ریاضی است. یک GPU مصرفی تنها یک جریان توکن تولید میکند؛ فلگ --parallel بودجه زمینه را تقسیم میکند، نه اینکه توان عملیاتی (Throughput) را افزایش دهد.
تیمهایی که به نقطه اتصال مشترک نیاز دارند باید از vLLM یا SGLang روی کارتهای مرکز داده استفاده کنند. یک کارت ۴۸ گیگابایتی برای یک تیم منطقیتر از چهار کارت ۴۰۹۰ است، زیرا فضای کافی برای KV Cacheهای همزمان فراهم میکند بدون اینکه نیاز باشد وزنها در چهار ماشین تکرار شوند.
توازن کیفیت
شکاف کیفی قابل توجهی میان کوانتهای ۲-بیت و ۴-بیت وجود دارد. در تستها، مدل ۲-بیت در تکالیف ساده پایتون (ادغام لیستهای پیوندی) دچار مشکل شد و بهجای انتسابهای معتبر، عبارات بدون اثر (self.val; self.next) تولید کرد.
این تایید میکند که اگرچه ماشینهای ۱۶ گیگابایتی میتوانند مدل را اجرا کنند، اما نمیتوانند نسخهای را اجرا کنند که یکپارچگی استدلالی مدل را حفظ کند. این تغییر در قابلیتها در مقایسه با نسل قبل عظیم است. Qwen 3.8 27B امتیاز ۷۳.۰ در Terminal Bench 2.1 (در مقابل ۶۳.۴ برای Qwen 3.6)، امتیاز ۶۱.۷ در SWE-bench Pro (در مقابل ۵۳.۵) و ۸۴.۳ در OSWorld-Verified (در مقابل ۶۳.۹) کسب کرده است.
اگر سرعت تولید محلی شما در طول زمینه مورد نیازتان زیر ۵ توکن در ثانیه است، هیچ مقدار تنظیماتی آن را درست نمیکند. سختافزار شما صرفاً میزبان مناسبی برای این مدل نیست.
خطاهای رایج در راهاندازی
بیشتر شکستهای محلی در واقع مشکلات حافظه در لباس مبدل هستند:
failed to decode generation batch, res = -3: وزنها از مجموعه کاری GPU بزرگتر هستند. یک سطح کوانت را پایین بیاورید.- پردازش کند پرامپت: کوانت بزرگتر از حافظه قابل دسترسی GPU است و باعث Paging میشود. مقدار
recommendedMaxWorkingSetSizeرا در لاگ چک کنید. modalities : text: پروژکتور بارگذاری نشده است. فایلmmprojرا دانلود کنید.- محتوای خالی با
finish_reason: length: حالت تفکر بهصورت پیشفرض رویxhighاست و بودجهmax_tokensرا مصرف کرده است. مقدارmax_tokensرا افزایش دهید یاreasoning_effortرا روی low قرار دهید. - تکرار بیپایان: نبود جریمه حضور (Presence Penalty). Qwen مقدار بین ۰ تا ۲ را توصیه میکند (پیشفرض ۱.۵).
model has unused tensor blk.64.nextn.*: این مربوط به سر پیشبینی چند-توکنی (MTP) است. بیضرر است و توسط مسیر GGUF نادیده گرفته میشود مگر اینکه وزنهای MTP جداگانه از ggml-org استفاده شود.
منتظر Qwen Cloud میزبانی شده ۲۷-بیت با زمینه پیشفرض ۱ میلیون توکن باشید که احتمالاً مرز بین آنچه میزبانی میکنیم و آنچه اجاره میکنیم را بازتعریف خواهد کرد.




گفتگو