شرکت DeepSeek موتور inference اختصاصی DeepInfer را متنباز کرد
حدود ۴ دقیقه مطالعه
شرکت DeepSeek روز ۲۰ اکتبر ۲۰۲۶ فریمورک DeepInfer را با مجوز Apache 2.0 در گیتهاب متنباز کرد. طبق README رسمی، این همان فریمورک inference است که سرویسهای production بزرگ DeepSeek را اجرا میکند، ولی نسخهی عمومی فعلاً فقط از مدل DeepSeek-V4.1-Flash پشتیبانی میکند.
چه چیزی منتشر شد؟
آنچه منتشر شده فقط offline inference با قابلیتهای اصلی مقیاسپذیری است و برای راهاندازی یک سرویس کامل به اجزایی نیاز داری که در این انتشار نیستند. مقالههای MarkTechPost و SiliconANGLE مینویسند سیستم KV cache، جداسازی prefill و decode (PD disaggregation) و load balancing بین replica ها آزاد نشده و DeepSeek دلیلش را وابستگی شدید به زیرساخت داخلی میداند. طبق همین مقالهها، DeepInfer ابتدا عمدتاً روی vLLM ساخته شده و از ایدههای SGLang و TensorRT-LLM هم استفاده کرده است. کتابخانهی جداگانهی deepseek-recipe هم منتشر شده که رمزگذاری و رمزگشایی توکن را مثل API رسمی DeepSeek انجام میدهد؛ مجوز MIT آن را فقط MarkTechPost نوشته است.
سختافزارهای پشتیبانیشده GPU های NVIDIA با معماری SM100 و NPU های Huawei Ascend 950 هستند. SiliconANGLE میگوید Hopper و معماریهای قدیمیتر NVIDIA در فهرست نیستند. پیشنیازها در README شامل لینوکس، GCC نسخهی 13 به بالا، Python 3.12 و CUDA 13 (برای NVIDIA) یا CANN 9.2 (برای Ascend) است. مراحل ساخت و اجرا طبق README این است:
export DEEPINFER_ACCELERATOR=nvidia
./build.sh
python examples/offline_inference.py
چکپوینت پیشفرض در اولین اجرا از Hugging Face دانلود میشود:
deepseek-ai/DeepSeek-V4.1-Flash-1017
قابلیتها
کرنلها از FlashMLA، DeepGEMM، DeepEP، TileKernels، DeepSelect و کرنلهای سفارشی TileLang میآیند. موازیسازی شامل attention با DP یا CP متعادل و MoE با expert parallelism و EPLB است. DSpark یک روش speculative decoding است که طبق دو مقالهی ثانویه، یک draft model در هر گام ۵ توکن پیشنهاد میدهد و یک Confidence Head پیشبینی میکند کدام را مدل اصلی میپذیرد. در بخش prefill، روش SWA bounded replay فقط بخش کوچکی از state را دوباره محاسبه میکند؛ مقالهها عدد ۱۲۸ توکن را مینویسند، ولی مقدار پیشفرض در README برابر ۱۴۰ است و باید قبل از استفاده چک شود. scheduling ناهمزمان بهصورت پیشفرض روشن است، inference مستقل از batch و sampling قطعی فقط روی NVIDIA کار میکنند و structured output با regex، JSON schema و EBNF هم پشتیبانی میشود.
عددها و محدودیتها
بخش benchmark در README فقط دو نمودار Pareto دارد و عدد نمیدهد؛ prefill روی ۴ GPU از نوع SM100 و decode روی ۶۴ GPU اندازهگیری شده است. MarkTechPost از روی نمودارها میخواند که decode با EP64DP64 و context ۱۳۱٬۰۷۲ توکنی بالای ۲۵٬۰۰۰ توکن بر ثانیه به ازای هر GPU میرسد و prefill حدود ۶۰٬۰۰۰ توکن غیرکش بر ثانیه برای هر GPU است. DeepSeek ادعا میکند DSpark تعداد توکنهای بررسیشده را حدود ۳۰ درصد کم میکند، SWA تقریباً نصف محاسبهی prefill را حذف میکند و یک cluster روزانه ۱۵۵ تریلیون توکن سرو میکند. همهی این اعداد ادعای خود DeepSeek هستند، ارزیابی مستقلی منتشر نشده و benchmark ها فقط روی سختافزار NVIDIA اجرا شدهاند.
برای استفادهی واقعی چند محدودیت دیگر هم هست. MarkTechPost مینویسد کوچکترین واحد production حدود ۶۴ GPU برای prefill و ۶۴ GPU برای decode است و کرنل decoding داخلی FlashMLA حدود ۵ تا ۱۰ درصد سریعتر از نسخهی عمومی است (حداکثر ۵ درصد در کل مسیر). SiliconANGLE هم یادآوری میکند تلاش DeepSeek برای انتشار کل engine در آوریل ۲۰۲۵ بهخاطر همین مشکل وابستگی به زیرساخت داخلی عقب افتاده بود.
منابع:
