tag Throughput
Continuous Batching (Sürekli Toplu İşlem)
Bu sayfada Throughput (Continuous Batching (Sürekli Toplu İşlem)) etiketi ile işaretlenmiş 2 yapay zeka kavramını bulabilirsiniz.
Continuous Batching (Sürekli Toplu İşlem), LLM çıkarım sunucularında gelen istekleri statik batch'ler yerine sürekli, iterasyon bazlı dinamik gruplar hâlinde işleyen bir zamanlama tekniğidir. Geleneksel statik batching'de tüm istekler aynı uzunluğa tamamlanana kadar GPU boşta bekler; bu durum GPU kullanım oranını ciddi biçimde düşürür. Continuous batching ise her decoding adımında yeni isteklerin batch'e eklenmesine ve tamamlananların batch'ten çıkarılmasına olanak tanır. Tekniğin akademik temeli, Yu ve arkadaşlarının 2022'de yayımladığı "Orca: A Distributed Serving System for Transformer-Based Generative Models" çalışmasına dayanır. Bu makalede "iteration-level scheduling" adıyla tanımlanan yöntem, statik batch'e kıyasla 2-23× throughput artışı sağladığını kanıtladı. Pratik uygulamada ise 2023'te vLLM'nin PagedAttention ile birleştirdiği bu teknik, LLM servis altyapısında kalıcı bir standart hâline geldi. Teknik açıdan continuous batching; ön-doldurma (prefill) ve kod-çözme (decode) aşamalarının ayrılması, iterasyon düzeyinde zamanlama, verimli KV cache yönetimi ve öncelik kuyrukları bileşenlerine dayanır. Prefill aşamasında tüm prompt tokenleri bir kez işlenir; decode aşamasında her adımda tek token üretilir. Farklı isteklerin decode adımları eşzamanlı yürütüldüğünde GPU boşta kalmadan çalışmayı sürdürür; bu da KV cache alanının verimli kullanılmasını zorunlu kılar. Bellek yönetimi bu tekniğin kritik bir bileşenidir. PagedAttention, KV cache belleğini sanal sayfa tablosu modeline göre yönetir ve farklı uzunluktaki isteklerin yarattığı parçalanmayı önler. Çeşitli isteklerin KV state'leri aynı fiziksel GPU belleğinde örtüşmeden barındırılabilir; bu da sistemin eş zamanlı istek kapasitesini doğrudan artırır. Üretim ortamlarında continuous batching'i destekleyen başlıca framework'ler şunlardır: vLLM (PagedAttention ile), NVIDIA TensorRT-LLM, Hugging Face TGI (Text Generation Inference), SGLang (yapısal üretim için optimize) ve DeepSpeed-MII. GPU kapasitesi sabitken bu teknik, değişken uzunluktaki çok kullanıcılı API trafiğinde gecikme kararlılığını koruyarak saniyede işlenen token sayısını 10-20× artırabilmektedir. RAG pipeline'ları, ajansal AI sistemleri ve bulut LLM API'leri için temel bir altyapı bileşeni konumuna gelmiştir.
Continuous Batching (Sürekli Toplu İşlem)
Continuous Batching (Sürekli Toplu İşlem), LLM çıkarım sunucularında gelen istekleri statik batch'ler yerine sürekli, iterasyon bazlı dinamik gruplar hâlinde işleyen bir zamanlama tekniğidir. Geleneksel statik batching'de tüm istekler aynı uzunluğa tamamlanana kadar GPU boşta bekler; bu durum GPU kullanım oranını ciddi biçimde düşürür. Continuous batching ise her decoding adımında yeni isteklerin batch'e eklenmesine ve tamamlananların batch'ten çıkarılmasına olanak tanır. Tekniğin akademik temeli, Yu ve arkadaşlarının 2022'de yayımladığı "Orca: A Distributed Serving System for Transformer-Based Generative Models" çalışmasına dayanır. Bu makalede "iteration-level scheduling" adıyla tanımlanan yöntem, statik batch'e kıyasla 2-23× throughput artışı sağladığını kanıtladı. Pratik uygulamada ise 2023'te vLLM'nin PagedAttention ile birleştirdiği bu teknik, LLM servis altyapısında kalıcı bir standart hâline geldi. Teknik açıdan continuous batching; ön-doldurma (prefill) ve kod-çözme (decode) aşamalarının ayrılması, iterasyon düzeyinde zamanlama, verimli KV cache yönetimi ve öncelik kuyrukları bileşenlerine dayanır. Prefill aşamasında tüm prompt tokenleri bir kez işlenir; decode aşamasında her adımda tek token üretilir. Farklı isteklerin decode adımları eşzamanlı yürütüldüğünde GPU boşta kalmadan çalışmayı sürdürür; bu da KV cache alanının verimli kullanılmasını zorunlu kılar. Bellek yönetimi bu tekniğin kritik bir bileşenidir. PagedAttention, KV cache belleğini sanal sayfa tablosu modeline göre yönetir ve farklı uzunluktaki isteklerin yarattığı parçalanmayı önler. Çeşitli isteklerin KV state'leri aynı fiziksel GPU belleğinde örtüşmeden barındırılabilir; bu da sistemin eş zamanlı istek kapasitesini doğrudan artırır. Üretim ortamlarında continuous batching'i destekleyen başlıca framework'ler şunlardır: vLLM (PagedAttention ile), NVIDIA TensorRT-LLM, Hugging Face TGI (Text Generation Inference), SGLang (yapısal üretim için optimize) ve DeepSpeed-MII. GPU kapasitesi sabitken bu teknik, değişken uzunluktaki çok kullanıcılı API trafiğinde gecikme kararlılığını koruyarak saniyede işlenen token sayısını 10-20× artırabilmektedir. RAG pipeline'ları, ajansal AI sistemleri ve bulut LLM API'leri için temel bir altyapı bileşeni konumuna gelmiştir.
vLLM (vLLM)
vLLM, UC Berkeley'de geliştirilen ve büyük dil modellerinin (LLM) üretim ortamında hızlı ve verimli biçimde sunulmasını sağlayan açık kaynaklı bir çıkarım (inference) kütüphanesidir. Temel yeniliği olan PagedAttention mekanizması, KV önbelleğini işletim sistemlerindeki sanal bellek yönetiminden ilham alarak sayfalara böler ve dinamik olarak tahsis eder. Bu yaklaşım bellek parçalanmasını minimuma indirerek GPU belleğinin çok daha verimli kullanılmasına olanak tanır. Continuous batching özelliğiyle birleşince vLLM, standart HuggingFace Transformers pipeline'larına kıyasla 24 kata kadar daha yüksek throughput elde edebilir. vLLM, 2023 yılında SOSP konferansında yayımlanan akademik makaleyle tanıtıldı ve kısa sürede yapay zeka topluluğunun en çok kullandığı LLM servis altyapısı haline geldi. Proje GitHub'da 40K'ı aşan yıldızla aktif bir geliştirici kitlesine sahip olmaya devam etmektedir. OpenAI uyumlu REST API sunan vLLM, mevcut sistemlere minimal değişiklikle entegre edilebilmektedir. Teknik açıdan vLLM; Llama, Mistral, Qwen, Gemma ve diğer popüler modelleri destekler. Tensor parallelism ve pipeline parallelism ile modeli birden fazla GPU'ya dağıtabilir, quantization (AWQ, GPTQ, bitsandbytes) ile bellek gereksinimini düşürür. LoRA adaptörlerini çalışma zamanında dinamik olarak yükleyip kaldırabilmesi birden fazla görev için tek bir model örneğini paylaşmaya imkân tanır. Türkiye'de yapay zeka tabanlı ürün geliştiren şirketler ve araştırma kurumları, vLLM'i özellikle maliyet optimizasyonu amacıyla tercih etmektedir. Aynı GPU kümesinde standart kütüphanelere kıyasla çok daha yüksek istek kapasitesi sunulabilmesi, bulut maliyetlerini önemli ölçüde düşürür. Yerli yapay zeka altyapılarında veri egemenliğini korurken yüksek performans elde etmek isteyen kurumlar için kritik bir araçtır. vLLM, OpenAI uyumlu API sunduğundan mevcut entegrasyonlar minimum değişiklikle kendi altyapısına taşınabilir; bu da geçiş sürecini hızlandıran önemli bir avantajdır. Akademik temelli olmasına karşın hızla olgunlaşan proje, kurumsal destek almak isteyen ekipler için de güvenilir bir tercih olmayı sürdürmektedir.