Teknik KILAVUZ

Sürekli Dozajlama

Sürekli toplu işlem, sabit bir toplu işlemin tamamının bitmesini beklemek yerine, çalışan bir toplu toplu işlemden istekleri jeton bazında ekleyen ve kaldıran bir sunum tekniğidir.

2 min readSon güncelleme

Genel Bakış

It keeps the GPU constantly busy and sharply increases how many users an AI model can serve at once.

Derin Dalış

GPU'lar birçok isteği toplu olarak birlikte işlediklerinde en hızlıdırlar. Naif yaklaşım, statik toplu işlem, sabit bir istek kümesini gruplandırır, hepsini tamamlanana kadar çalıştırır ve ardından bir sonraki toplu işi başlatır. Sorun: Dil modeli çıktılarının uzunlukları büyük farklılıklar gösteriyor, bu nedenle kısa istekler erken bitiyor ve grup en uzun olanı beklerken yuvaları boşta kalıyor, GPU döngüleri boşa gidiyor ve yeni gelenler gecikiyor. Sürekli gruplama (aynı zamanda Orca makalesi tarafından popüler hale getirilen ve vLLM, TensorRT-LLM ve TGI'da kullanılan, uçuş sırasında veya yineleme düzeyinde gruplama olarak da adlandırılır), tek bir kod çözme adımının ayrıntı düzeyinde çalışır. Her jeton oluşturulduktan sonra, bitmiş diziler gruptan çıkar ve yeni gelen istekler hemen yerine yerleştirilir. Bu, partiyi dolu tutar ve GPU'yu doygun hale getirir, genellikle bekleyen kullanıcılar için daha düşük gecikme süresiyle verimi birkaç kat artırır.

Teknik Bilgi

Temel değişiklik, tüm isteklerin toplu olarak gruplandırılmasından bireysel yinelemelerin toplu olarak gruplandırılmasına doğru. Her kod çözme adımında, zamanlayıcı aktif seti oluşturur: tüm uçuş sırasındaki diziler üzerinde bir ileri geçiş gerçekleştirir, her biri bir jeton yayar, dizi sonu jetonu veya uzunluk sınırına ulaşanları çıkarır ve serbest bırakılan yuvaları doldurmak için sıraya alınmış istekleri kabul eder. Bunu PagedAttention'ın esnek KV belleğiyle eşleştirmek, her dizinin önbelleği bağımsız bloklarda bulunduğundan, dizilerin uçuş sırasında eklenmesini ve çıkarılmasını ucuz hale getirir.

Stratejik Etki

Maliyet ve bütçe

Mimari kararlar yıllarca performansı ve işletme maliyetini etkiler.

Daha net kararlar

Teknik eğitim, ekiplerin yalnızca en yenisini değil, doğru yığını seçmesine de yardımcı olur.

Quality control

Daha iyi mühendislik seçenekleri, üretimdeki güvenilirlik olaylarını azaltır.

Sürekli Gruplamanın Geleceği

Üretim LLM hizmetinde sürekli gruplama artık standarttır. Gelecekteki çalışmalar zamanlayıcıyı iyileştirecek: işlem ağırlıklı ön doldurma aşamasını daha hafif kod çözme aşamasından (ayrıştırma) ayırmak, kod çözmenin durmasını önlemek için parçalı ön doldurma, karışık iş yükleri için öncelik ve adalet politikaları ve adım başına birden fazla taslak jetonun doğrulanması için spekülatif kod çözme ile daha sıkı bağlantı. Amaç, bireysel yanıt gecikmesini düşük ve öngörülebilir tutarken, GPU başına saniyede maksimum jeton sıkıştırmaktır.

Gerçek Dünya Uygulaması

Yeni gelen kullanıcı mesajlarını bir sonraki grup için sıraya koymak yerine hemen çalışan gruba kabul eden bir sohbet API'si

Grubun ortasında tamamlanmış kısa bir yanıtı çıkarmak ve yuvasını yeniden doldurmak, böylece GPU'nun uzun bir nesil boyunca beklemeyi asla boş bırakmaması

Her kod çözme adımında dizileri ucuz bir şekilde eklemek ve kaldırmak için sürekli toplu oluşturmayı vLLM'nin PagedAttention özelliğiyle birleştirme

Toplu işi dolu tutarak, yoğun, değişken uzunluktaki trafik altında saniyede yüksek token sayısını sürdüren bir kod tamamlama hizmeti

Riskler ve Korkuluklar

Bir kıyaslamayı optimize etmek daha geniş sistem zayıflıklarını gizleyebilir.

Altyapı ve bakım maliyetleri genellikle hafife alınır.

Sistemler karmaşıklaştıkça güvenlik ve gözlemlenebilirlik boşlukları büyüyebilir.

Uygulama Yol Haritası

1

Uygulamadan önce gecikmeyi, kaliteyi ve maliyet hedeflerini tanımlayın.

2

Gerçekçi yük ve veri koşulları altında kıyaslama yapın.

3

Hatalar, sapmalar ve kullanıcı etkisi için cihaz izleme.

4

Ölçeklendirmeden önce geri alma ve olay müdahale yollarını hazırlayın.

Keşfetmeye Devam Edin

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Continuous Batching quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Testi başlat

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Next guide

ML İş Yükleri için Kubernetes

Sık sorulan sorular

What is Continuous Batching?

Sürekli toplu işlem, sabit bir toplu işlemin tamamının bitmesini beklemek yerine, çalışan bir toplu toplu işlemden istekleri jeton bazında ekleyen ve kaldıran bir sunum tekniğidir. GPU'yu sürekli meşgul eder ve bir yapay zeka modelinin aynı anda hizmet verebileceği kullanıcı sayısını keskin bir şekilde artırır.

LLM sunumu için statik (sabit) toplu işlemin ana zayıflığı nedir?

Çıkış uzunlukları farklılık gösterdiğinden, biten diziler en yavaş olanı tamamlanana kadar boşta kalır, GPU döngülerinin boşa harcanmasına ve yeni isteklerin gecikmesine neden olur.

Sürekli toplu işlem istekleri hangi ayrıntı düzeyinde ekler ve kaldırır?

Sürekli (yineleme düzeyinde) toplu işlem, her kod çözme adımından sonra etkin kümeyi günceller, böylece tüm istek başına yerine simge bazında çalışır.

Bir dizi, sürekli yığınlama altında yığının ortasını bitirdiğinde yuvasına ne olur?

Biten diziler çıkarılır ve bekleyen istekler hemen yerine konulur, böylece grup dolu kalır ve GPU meşgul olur.

Hangi teknik, dizileri ekleme/çıkarmayı ucuz hale getirmek için doğal olarak sürekli gruplamayla eşleşir?

PagedAttention her dizinin KV önbelleğini bağımsız bloklarda saklar, böylece uçuş sırasında bir dizi eklemek veya kaldırmak diğerlerinin hafızasını rahatsız etmez.

Yineleme düzeyinde (sürekli) gruplamanın yaygınlaştırılmasında yaygın olarak hangi araştırma makalesine itibar edilir?

Orca makalesi yineleme düzeyinde planlamayı tanıttı ve fikir, vLLM, TGI ve TensorRT-LLM gibi hizmet sistemleri tarafından benimsendi.