DeepSeek Çıkarım (Inference) Motoru DeepInfer'ı Açık Kaynak Olarak Yayınladı
Kaynak: Hacker News
İçindekiler 6 başlık
DeepInfer, DeepSeek'in büyük ölçekli üretim servislerine güç veren yüksek performanslı çıkarım (inference) çerçevesidir. Bu açık kaynaklı sürüm, büyük ölçekte model sunumu (serving) için gereken temel özelliklerle birlikte çevrimdışı (offline) çıkarım yetenekleri sunmaktadır. Büyük dil modellerini (LLM) üretim ortamında verimli çalıştırmak isteyen yazılım mühendisleri için bu mimari, modern çıkarım optimizasyonlarını öğrenmek adına eşsiz bir referans niteliğindedir.
Desteklenen Modeller#
- DeepSeek-V4.1-Flash
Desteklenen Özellikler#
- Optimize edilmiş çekirdekler (kernels), model ve örnekleyici (sampler) çalışma zamanı
- Paralellik: Attention DP / dengeli CP, MoE EP + EPLB
- DSpark ve güven planlamalı doğrulama (confidence-scheduled verification)
- SWA sınırlı yeniden oynatma (bounded replay)
- Asenkron zamanlama (sıfır ek yüklü toplu iş zamanlayıcısı)
- Yığın-değişmez (batch-invariant) çıkarım
- Deterministik örnekleme
- Yapılandırılmış çıktılar (Structured outputs)
Özellik Detayları ve Yapılandırma#
- Optimize edilmiş çekirdekler: FlashMLA, DeepGEMM, DeepEP, TileKernels, DeepSelect ve özel TileLang çekirdeklerini içerir. Donanım seviyesinde hızlandırma sağlamak için bu kütüphanelerin birleşimi kritik bir rol oynar.
- DSpark ve güven planlamalı doğrulama: Taslak token'lar (draft tokens) ile kod çözmeyi (decoding) hızlandırır ve doğrulamayı planlamak için güven tahminlerini kullanır. Aktifleştirmek için
DEEPINFER_ENABLE_MTP_VARLEN=1ayarlanır;DEEPINFER_USE_NEXTN_DECODEise maksimum taslak uzunluğunu kontrol eder (varsayılan: 5). - Decoder SWA sınırlı yeniden oynatma: Yalnızca sınırlı bir soneki yeniden oynatarak decoder ön-doldurma (prefill) iş yükünü azaltır. Varsayılan V4.1 ayarları için
DEEPINFER_YOCO_PREFILL_TRUNCATION_MODE=compactveDEEPINFER_YOCO_PREFILL_KEEP_TOKENS=140olarak ayarlanır; korunan sonek, SWA penceresini ve maksimum geri izleme (backtracking) uzunluğunu kapsamalıdır. - Asenkron zamanlama: CPU toplu iş (batch) zamanlamasını cihaz yürütmesiyle örtüştürür. Varsayılan olarak etkindir ve darboğazları önler.
- Yığın-değişmez çıkarım: Farklı yığın (batch) bileşimlerinde model sonuçlarını birebir aynı tutar.
DEEPINFER_BATCH_INVARIANT=1ile etkinleştirilir (yalnızca NVIDIA). Test ve hata ayıklama süreçlerinde tutarlılık için çok değerlidir. - Deterministik örnekleme: Aynı girdi token'ları ve örnekleme parametreleri için birebir aynı çıktıları üretir.
DEEPINFER_BATCH_INVARIANT=1veDEEPINFER_ENABLE_MTP_VARLEN=0ayarlanarakSamplingParamsiçerisine sabit birseq_seedverilir (yalnızca NVIDIA). - Yapılandırılmış çıktılar: Üretimi bir regex, JSON şeması veya EBNF grameri ile sınırlandırır.
SamplingParamsiçerisineso_args={"schema_type": ..., "schema": ...}parametresi geçilerek kullanılır. Uygulama geliştirirken API entegrasyonlarında veri güvenilirliğini garanti altına alır.
Desteklenen Donanımlar#
- NVIDIA SM100 GPU'lar
- Huawei Ascend 950 NPU'lar
Tam Bir Çıkarım Servisi İçin Gerekenler (Bu Sürümde Yer Almayanlar)#
- Bir KV önbellek (cache) sistemi
- VE/Prefill/Decode ayrıştırması (disaggregation): Gerekli motor işlevselliğinin çoğu halihazırda uygulanmıştır.
- Hem prefill hem de decode aşamaları için veri-paralel kopyalar (replicas) arasında yük dengeleme (load balancing)
Başlarken: Ön Koşullar#
- Linux
- GCC = 13.0
- Python 3.12
- CUDA 13 (yalnızca NVIDIA)
- CANN 9.2 (yalnızca Ascend)
Geliştiriciler için çıkarım motorlarının kaynak kodlarını incelemek, Ölçeklendirme ve Optimizasyon ile Structured Output ve JSON Modu gibi üretim pratiklerini derinlemesine anlamayı sağlar.
Kaynak ve atıf
Bu yazı, Hacker News üzerinde yayımlanan içerikten yararlanılarak Edumints tarafından yapay zekâ desteğiyle Türkçe hazırlandı. Ayrıntılar ve yazarların kendi anlatımı için orijinaline bakabilirsin:
- github.com/deepseek-ai/DeepInfer