Continuous batching nedir ve vLLM/TGI'da nasıl uygulanır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Sürekli toplu işleme, makine öğrenimi modeli sorgularını işleme tekniğidir; bu yöntemde, gelen inferans sorguları sürekli ve dinamik olarak toplu hale getirilir, böylece hesaplama kaynakları en verimli şekilde kullanılır ve gecikmeler azaltılır. Belirli bir zaman veya belirli sayıda sorgu beklemek yerine, sistem sürekli olarak gelen sorgulardan toplu oluşturur ve işler.
vLLM ve TGI (Text Generation Inference) içinde, sürekli toplu işleme asenkron bekleme ve dinamik toplu oluşturma yoluyla gerçekleştirilir. Örneğin, bir sorgu geldiğinde, kuyruklara konur ve motor, ilk sorguyu çok fazla geciktirmeden birkaç sorgudan oluşan bir toplu oluşturmaya çalışır. Yeni sorgular yoksa, toplu mevcut olanla başlatılır. Bu, GPU'nun verimli kullanılmasını ve her sorgu için gecikmenin en aza indirilmesini sağlar.
Yaklaşık olarak şu şekilde görünür:
- Sorgular kuyruklara gelir.
- Sistem, maksimum toplu boyutuna ulaşmayı veya zaman aşımını bekler.
- Bir toplu oluşturulur ve modele gönderilir.
- Sonuçlar sorgulara geri dağıtılır.
Bu yaklaşım, özellikle transformerlar için faydalıdır; burada toplu işleme, tek tek sorgulara kıyasla çok daha etkilidir.