اجرای LLM محلی برای کدنویسی: تجربهی واقعی با Qwen3.6
خلاصهٔ کاملتر
نویسندهی این مقاله دیده خیلیها میگن اشتراک OpenAI یا Anthropic رو کنسل کردن و با مدلهای محلی کار میکنن. خودش روی یه AMD Ryzen AI Max+ 395 با ۱۲۳ گیگ حافظهی یکپارچه (یعنی RAMی که CPU و GPU باهم شریکن) و قیمت زیر ۳۵۰۰ دلار امتحانش کرده. با harness کدنویسی Pi، مدل Qwen3.6-35B-A3B رو با کانتکست کامل ۲۶۲,۱۴۴ توکنی بالا آورده که هشت برابر فرض ۳۲k راهنمای Micro Centerـه.
اول سراغ این سؤال رفته که ۳۲k چقدر جا داره. فقط پرامپت سیستمی و تعریف ابزارهای Pi حدود ۱۶۴۰ توکن میگیره. تو یه تسک SWE-bench که اصلاحش فقط یه خطه، خوندن کامل فایلهای مربوط به حدود ۴۵ هزار توکن میرسه. Pi بهصورت پیشفرض ۱۶,۳۸۴ توکن برای جواب کنار میذاره و وقتی تاریخچه از «پنجره منهای این رزرو» رد بشه، compaction (یعنی خلاصه کردن تاریخچهی قدیمی) رو شروع میکنه. تو ۵۰۰ اجرای واقعی Claude Sonnet 4، میانهی اوج تاریخچه ۱۵,۱۴۰ توکن و بیشترینش ۹۲,۳۲۳ توکن بوده.
بعد مدل dense یعنی Qwen3.8-27B با کوانتیزاسیون ۴ بیتی AWQ رو تست کرده و فقط ۱۱.۲ توکن در ثانیه گرفته. دلیلش پهنای باند حافظهست. سیستمش حدود ۲۴۰ GB/s پهنای باند داره و مدل dense برای هر توکن حدود ۱۶.۷ گیگ وزن میخونه، پس سقفش حدود ۱۴ توکن در ثانیهست. یعنی جا شدن مدل تو حافظه کافی نیست، سرعت خوندنش هم مهمه.
مدل MoE (یعنی مدلی که برای هر توکن فقط چند تا «expert» از کل شبکه رو فعال میکنه) اینجا کمک کرده. Qwen3.6-35B-A3B از ۲۵۶ expert فقط ۸ تا رو برای هر توکن انتخاب میکنه و حدود ۲.۳ گیگ وزن میخونه. سرعت حدود ۳.۸ برابر شده. کانتکست بلند هم بهخاطر معماری هیبرید ارزونه: فقط ۱۰ لایه از ۴۰ لایه full attention دارن و KV cache (یعنی کشی که کلید و مقدار توکنهای قبلی رو نگه میداره) برای هر توکن فقط ۱۰ کیلوبایت جا میگیره.
تو vLLM، عوض کردن attention backend از ROCM_ATTN به TRITON_ATTN تأثیر بزرگی داشت. با پرامپت بلند، backend پیشفرض به ۱.۷ توکن در ثانیه افتاده بود، Triton به ۲۸.۳ و llama.cpp به ۴۷.۷ رسید. تو تست چند ایجنتی با OMAR، اگه حد راحتی رو ۲۰ توکن در ثانیه برای هر ایجنت بذاریم، llama.cpp تا ۶ ایجنت و vLLM تا ۴ ایجنت دووم آوردن. یه افت عجیب هم تو llama.cpp از ۸ به ۹ ایجنت دیده شد، چون backend ولکان بالای ۸ توکن در هر قدم مسیر کرنلش رو عوض میکنه.
نویسنده میگه شش ایجنت llama.cpp با حدود ۲۱ توکن در ثانیه براش کاربردیتره. ولی این مدل تو Artificial Analysis Intelligence Index امتیاز ۱۸ گرفته، در حالی که Opus 5.5 امتیاز ۵۶ داره. برای همین فعلاً اشتراکهاش رو نگه میداره و معتقده اون پستهای «کنسل کردم» باید بگن مدل محلیشون واقعاً چه کاری رو تموم کرده.
نکات کلیدی:
- کانتکست ۳۲k برای کدنویسی ایجنتی کمه؛ پرامپت سیستمی Pi و رزرو جوابش بهتنهایی حدود ۱۸ هزار توکن میگیرن.
- سقف سرعت تولید توکن تقریباً برابر پهنای باند حافظه تقسیم بر حجم وزن خوندهشده برای هر توکنه.
- مدل MoE یعنی Qwen3.6-35B-A3B حدود ۳.۸ برابر سریعتر از Qwen3.8-27B dense بود.
- TRITON_ATTN تو vLLM سرعت یه ایجنت Pi رو از حدود ۱۹ به ۴۱.۷ توکن در ثانیه رسوند.
- با حد ۲۰ توکن در ثانیه، llama.cpp تا ۶ ایجنت و vLLM تا ۴ ایجنت همزمان قابل استفاده بودن.




