راهاندازی Ling-3.1-flash با SGLang و vLLM
خلاصهٔ کاملتر
تو این مقاله اومده که Ling-3.1-flash از InclusionAI یه مدل open-weight با معماری MoE هست (یعنی مدل کلی «متخصص» داره و برای هر توکن فقط چندتاشون کار میکنن). کل مدل ۵۶۰ میلیارد پارامتره ولی برای هر توکن ۲۵ میلیاردش فعال میشه، و context window یک میلیون توکنی داره. معماریش ۶۳ لایهٔ KDA و ۹ لایهٔ gated MLA (نسبت ۷ به ۱) با ۵۱۲ expert مسیریابیشده، ۱ expert مشترک و ۸ expert فعال برای هر توکن داره.
این مدل لپتاپی نیست. درسته که محاسبه برای هر توکن کمه، ولی کل وزنها باید توی حافظهٔ GPUها جا بشن. برای همین تنظیمات تأییدشده اینان: 8x H200 با tensor parallel 8 و expert parallel 8 (TP8 + EP8)، یا 4x GB300 با TP4 + EP4. دستورالعملهای H800، H100 و B200 هم توی cookbook خود InclusionAI هست.
راه پیشنهادی InclusionAI، SGLang هست که یه ایمیج Docker آماده به اسم lmsysorg/sglang:dev-ling-3.1-flash داره. اجرای سرور روی 8x H200 این شکلیه:
python3 -m sglang.launch_server \
--model-path inclusionAI/Ling-3.1-flash \
--tp 8 --ep 8 \
--speculative-algorithm NEXTN \
--host 0.0.0.0 --port 30000فلگ --tp 8 --ep 8 مدل رو هم با tensor parallelism و هم با expert parallelism بین هشت GPU پخش میکنه، که برای MoE مهمه چون expertها جدا از لایههای dense تقسیم میشن. --speculative-algorithm NEXTN هم MTP speculative decoding رو روشن میکنه (یعنی مدل چند توکن پیشنویس جلوتر حدس میزنه تا تولید سریعتر بشه). روی GB300 فقط کافیه --tp 4 --ep 4 بذاری. دو متغیر محیطی SGLANG_ENABLE_FP8_BLOCK_GEMV و SGLANG_ENABLE_FUSED_KDA_OUTPUT_QUANT هم روی GPUهای Hopper حدود ۱۰٪ decode رو با batch 1 سریعتر میکنن.
سرور یه endpoint سازگار با OpenAI میده. پارامترهای پیشنهادی temperature 1.0، top_k 20 و top_p 0.95 هستن و با enable_thinking توی chat_template_kwargs میشه ردّ استدلال مدل رو روشن یا خاموش کرد، چون این یه مدل hybrid reasoning هست.
پشتیبانی vLLM فعلاً روی یه branch جداست و باید با uv از سورس build بشه. دستور vllm serve با فلگهایی مثل --enable-expert-parallel، --enable-prefix-caching (استفادهٔ دوباره از KV cache برای درخواستهایی که شروع مشترک دارن)، parserهای ling3 برای tool call و reasoning، و --speculative-config با ۳ توکن speculative اجرا میشه. نویسنده میگه SGLang برای شروع سریعتر و پشتیبانیشدهتره، و vLLM بیشتر به درد تیمهایی میخوره که از قبل روش استاندارد شدن، با این ریسک که branch از mainline فاصله بگیره.
نکات کلیدی:
- Ling-3.1-flash مدل MoE با ۵۶۰B پارامتر کل و ۲۵B پارامتر فعال برای هر توکن و context یک میلیون توکنی هست.
- تنظیم اصلی SGLang روی 8x H200 با TP8 + EP8 هست و روی 4x GB300 با TP4 + EP4.
- ایمیج Docker آماده lmsysorg/sglang:dev-ling-3.1-flash شامل MTP speculative decoding هست.
- دو متغیر محیطی مخصوص Hopper حدود ۱۰٪ decode با batch 1 رو سریعتر میکنن.
- vLLM نیاز به build از یه branch جدا داره و از parserهای ling3 استفاده میکنه.




