Çıkarım kapasitesi planlamak
Çıkarım kapasitesi, tepe penceresindeki eşzamanlı istek sayısının tek bir kopyanın hizmet hedefini bozmadan taşıdığı eşzamanlılığa bölünmesiyle planlanır: yük testiyle eşzamanlılık–gecikme eğrisini çıkarın, p95 hedefinin aşıldığı noktanın bir kademe altını kopya kapasitesi kabul edin, tepe eşzamanlılığı bu sayı ile hedef doluluğun çarpımına bölüp yukarı yuvarlayın ve en az bir kopyanın kaybını taşıyacak yedeklilik payını ekleyin. Doluluk arttıkça kuyrukta bekleme hızlanarak büyüdüğü için hedef doluluk tavana yakın değil, tepe dalgasını yutacak payı bırakacak şekilde seçilir.
ÖNKOŞULLAR
- Üretimden veya pilot kullanımdan alınmış, zaman damgası ile girdi ve çıktı token sayısını içeren istek kaydı
- Hangi gecikme, hangi yüzdelikte sağlanacak — ürün tarafıyla yazılı hizmet seviyesi mutabakatı
- Üretimle aynı model ve donanım yapılandırmasına sahip, yük üretecine açılabilen bir ortam
- Sunum yığınının eşzamanlılık, kuyruk ve ölçekleme ayarlarını değiştirme yetkisi
GEREKEN ARAÇLAR
- Eşzamanlılığı sabit tutabilen ve akışlı yanıtı ölçebilen bir yük üreteci
- Zaman serisi metrik deposu ve gösterge paneli
- Kuyrukta geçen süreyi işlem süresinden ayırabilen iz kaydı altyapısı
- Otomatik ölçekleme denetleyicisi olan bir iş yükü zamanlayıcı
- Kapasite ve maliyet modelini kuracağınız bir hesap tablosu veya not defteri ortamı
- 01
Yük profilini token cinsinden çıkar
İstek sayısını değil saniyedeki girdi ve çıktı tokenını ölçün; tepe saat, ortalama ve uzun kuyruk istekleri ayrı dağılımlar olarak raporlansın.
Kapasite planını istek/saniye üzerine kurmak, farklı boyuttaki işleri aynı sayıyor demektir. Kısa bir sınıflandırma isteği ile uzun bir rapor üretimi aynı hatta çok farklı yük bırakır: birincisi neredeyse yalnızca ön doldurma, ikincisi dakikalarca süren bir çözümleme işidir. Planın birimi bu yüzden istek değil tokendır.
Ölçülecek büyüklük Neden kapasiteyi belirler Saniyedeki girdi tokenı Ön doldurma işini ve ilk token süresini belirler Saniyedeki çıktı tokenı Çözümleme işini ve cihazın ne kadar süre meşgul kalacağını belirler Eşzamanlı açık istek Bellekte tutulan KV miktarını ve kuyruk uzunluğunu belirler Çıktı uzunluğu dağılımı Uzun kuyruk istekleri bir kopyayı tek başına meşgul eder Tepe / ortalama oranı Yedeklilik ve ölçekleme payının büyüklüğünü belirler Bu beş büyüklük ölçülmeden yazılan plan, istek sayısı hiç değişmese bile yanlışa düşer. Tepe tanımını günlük ortalamadan değil, en yoğun birkaç dakikalık pencereden alın. Haftanın günü, mesai saati ve kampanya takvimi gibi düzenli dalgalar ayrı ayrı görünsün: kapasite kararı ortalamaya değil bu pencerelerin en yükseğine göre verilir.
- 02
Hizmet seviyesi hedefini yüzdelikle yaz
İlk token süresi ile token arası süre için ayrı hedef koyun; her hedefi bir yüzdelikle ve geçerli olduğu yük koşuluyla birlikte tanımlayın.
Tek bir "ortalama yanıt süresi" hedefi iki ayrı bütçeyi birbirine karıştırır. İlk token süresi kuyruk ve ön doldurmadan, token arası süre çözümlemeden beslenir; biri bozulduğunda diğerini iyileştiren ayar işe yaramaz. Ayrıca ortalama, kullanıcının şikâyet ettiği kuyruğu gizler: hedef her zaman bir yüzdelikle yazılır.
Kullanım biçimi Belirleyici metrik Neden Akışlı sohbet İlk token süresi Kullanıcının bekleme algısı ilk kelime görününce biter Uzun metin üretimi Token arası süre Toplam süre üretilen token sayısıyla çarpılarak büyür Ajan zinciri Adım başına toplam süre Gecikme her araç çağrısında üst üste biner Toplu işleme Saatlik token verimi Etkileşim yok; gecikme değil verim bütçelenir Aynı modeli kullanan iki ürün farklı metriklerle planlanır; tek bir hedef ikisine birden uymaz. - 03
Tek kopyanın kapasite eğrisini ölç
Sabit eşzamanlılık kademeleriyle yük testi koşun; her kademede p95 gecikmeyi ve token verimini kaydedip verimin düzleştiği doyma noktasını bulun.
Kopya kapasitesi bir tahmin değil ölçüm sonucudur ve tek bir sayı olarak değil bir eğri olarak çıkar. Eşzamanlılık arttıkça verim bir noktaya kadar yükselir, sonra düzleşir; gecikme ise düzleşmez, artmaya devam eder. Kullanılabilir kapasite bu iki eğrinin ayrıştığı dirsektir.
- 1Isınma turu koş
Ağırlıklar ve önbellekler yerine oturana kadar ölçüm başlatmayın; ısınma verisi rapora girmez.
- 2Eşzamanlılığı kademelendir
Eşzamanlılığı sabit kademelerle artırın ve her kademeyi kuyruk dengeye gelene kadar sürdürün.
- 3Girdi dağılımını sabitle
Her kademede aynı istem ve çıktı uzunluğu dağılımını kullanın; dağılım değişirse kademeler karşılaştırılamaz.
- 4İki eğriyi birlikte çiz
Her kademe için p95 gecikme ile saniyedeki token verimini kaydedin; doyma noktası ikisinin ayrıştığı yerdir.
Doğrulama adımı: dirsek noktasını bulduktan sonra bir kademe altında uzun bir koşu yapın ve p95'in kademe boyunca sabit kaldığını görün. Sabit kalmıyorsa ölçtüğünüz şey kapasite değil, kuyruğun henüz dolmamış hâlidir.
- 04
Kuyruk davranışını dolulukla birlikte modelle
Doluluk arttıkça bekleme süresi hızlanarak büyür; hedef doluluğu tavanın altında seçin ve kuyrukta geçen süreyi işlem süresinden ayrı ölçün.
Doluluk ile bekleme arasındaki ilişki doğrusal değildir: tavana yaklaştıkça küçük bir yük artışı beklemeyi orantısız biçimde büyütür. Bu yüzden "donanımı sonuna kadar kullanmak" bir verimlilik hedefi gibi görünse de kapasite planında bir risk kaynağıdır. Hedef doluluk, tepe dalgasını yutacak payı bırakacak şekilde seçilir.
Belirti Muhtemel neden Bakılacak metrik p95 yüksek ama cihaz doluluğu düşük İstekler kabul edilmeden kuyrukta bekliyor Kuyruk derinliği ve kuyruk süresi Verim düz, gecikme artıyor Doyma noktası aşılmış Eşzamanlılık–gecikme eğrisi Zaman aşımı dalgası Kuyruk üst sınırsız büyüyor Kuyruk üst sınırı ve reddetme oranı Gecikme tepe saatte katlanıyor Hedef doluluk tavana çok yakın Ortalama ve tepe doluluk Dördü de kopya eklemeden önce yapılandırmada görülmesi gereken belirtilerdir. Kuyruğa bir üst sınır ve bir kabul denetimi koyun. Sınırsız kuyruk, bir verim sorununu zaman aşımı fırtınasına çevirir: istekler sırada beklerken istemci yeniden dener, yeniden denemeler kuyruğu daha da büyütür. Sınıra ulaşıldığında açıkça reddetmek, sessizce geciktirmekten hem dürüst hem ucuzdur.
- 05
Kopya sayısını ve yedeklilik payını hesapla
Tepe eşzamanlılığı kopya kapasitesine ve hedef doluluğa bölün, yukarı yuvarlayın ve en az bir kopya kaybını hizmet hedefi bozulmadan taşıyacak payı ekleyin.
python # VARSAYIM: aşağıdaki değerler ölçüm değildir, kendi eğrinizden gelmelidir. import math tepe_eszamanlilik = 120 # adım 1: tepe penceresindeki açık istek sayısı kopya_kapasitesi = 16 # adım 3: dirsek noktasının bir kademe altı hedef_doluluk = 0.7 # adım 4: kuyruk payı taban = math.ceil(tepe_eszamanlilik / (kopya_kapasitesi * hedef_doluluk)) yedeklilik = 1 # N+1; iki bölgeye yayılıyorsa bölge başına tekrarlanır toplam_kopya = taban + yedeklilikYedeklilik payı filonun büyüklüğüne göre değişir. İki kopyayla çalışıyorsanız birinin kaybı kapasitenin yarısını götürür; küçük filolar bu yüzden oransal olarak daha fazla pay ister. Birden çok bölgeye yayıyorsanız hesap bölge başına tekrarlanır: bir bölgenin tamamı düştüğünde kalan bölgeler tepe yükü taşıyabilmelidir.
- 06
Ölçekleme tetikleyicisini doğru sinyale bağla
Ölçeklemeyi cihaz doluluğuna değil kuyruk derinliği gibi talebi doğrudan gösteren bir sinyale bağlayın ve ısınma süresini tetikleyici eşiğine yansıtın.
Cihaz doluluğu, dil modeli sunumunda yanıltıcı bir sinyaldir: çözümleme adımları bellek bant genişliğine takıldığında doluluk yüksek görünürken iş ilerlemez, tersine kuyrukta istek beklerken doluluk düşük okunabilir. Talebi gösteren sinyal, bekleyen istektir.
- Kuyrukta bekleyen istek sayısı
- Kuyrukta geçen sürenin p95 değeri
- Çalışan toplu işin doluluk oranı
- Reddedilen veya zaman aşımına uğrayan istek oranı
Tetikleyici eşiğini ısınma süresine göre öne alın: yeni kopya hazır olana kadar geçen süre boyunca yük artmaya devam edecektir. Ölçek-içeri tarafında ise histerezis kullanın; eşiğin hemen altına inen bir dalgalanma kopyayı kapatıp birkaç dakika sonra yeniden açtırırsa, en pahalı durumu sürekli tekrar edersiniz.
- 07
Tepe yükü ve arıza senaryosunu birlikte prova et
Tepe yükü üretimde beklenen süre kadar sürdürün ve prova sırasında bir kopyayı bilerek düşürüp hizmet hedefinin korunup korunmadığını ölçün.
Kararlı durumda yapılan testler iki şeyi gizler: soğuk başlangıç ve önbellek kaybı. Bir kopya düştüğünde yalnızca kapasite azalmaz, o kopyanın önek önbelleği de gider; hayatta kalan kopyalar hem daha çok trafik hem daha soğuk trafik alır. Bu çift etki ancak provada görünür.
- 1Tepeyi gerçek süresince sürdür
Yükü üretimde beklenen tepe penceresi kadar sürdürün; birkaç dakikalık bir tepe gerçek tepe değildir.
- 2Bir kopyayı düşür
Yük sürerken bir kopyayı kapatın; hata oranını, p95 gecikmeyi ve kuyruk derinliğini kaydedin.
- 3Kurtarma süresini ölç
Yeni kopyanın yük almaya hazır olmasına kadar geçen süreyi ayrı ölçün; bu süre yedeklilik payınızın alt sınırıdır.
- 4Bozulma sırasını doğrula
Kapasite yetmediğinde hangi trafiğin önce düşürüleceği yazılı mı ve prova sırasında o sırayla mı düşüyor?
Provanın çıktısı bir rapor değil iki karardır: yedeklilik payı yeterli mi ve bozulma planı yazılı mı? Bozulma planı, kapasite yetmediğinde hangi isteğin bekletileceğini, hangisinin daha kısa yanıtla karşılanacağını ve hangisinin reddedileceğini önceden söyler.
- 08
Kapasite ile maliyeti tek tabloda bağla
Kapasite kararını bin token başına maliyet ve kopya başına boşta geçen süreyle birlikte raporlayın; tek bir başlık rakamı karar verdirmez.
Birim maliyeti gerçek doluluğunuzda hesaplayın, tam kapasitede değil. Aynı donanım üçte bir dolulukla çalıştığında token başına maliyet üç katına çıkar; bu yüzden kapasite ve maliyet aynı tablonun iki sütunudur. Yedeklilik payı da bu tabloya girer: ödediğiniz şey kullanılan kapasite değil, kullanılabilir kapasitedir.
Kaldıraç Kapasiteye etkisi Gecikmeye etkisi Kopya eklemek Doğrusala yakın artar Kuyruk beklemesi düşer, token hızı değişmez Eşzamanlılık tavanını yükseltmek Verim artar Token arası süre uzar İstem uzunluğunu kısaltmak Ön doldurma işi azalır İlk token süresi düşer Daha küçük model Aynı donanımda daha çok istek Gecikme düşer, kalite ayrıca ölçülmeli Nicemleme Bellek serbest kalır, eşzamanlılık artar Çözümleme hızlanabilir, kalite ayrıca ölçülmeli Sütunlar yön bilgisidir, ölçüm değil; büyüklükler yalnızca kendi yük profilinizde çıkar. Planı canlı bir belge olarak tutun ve yenileme tetikleyicilerini yazın: istem şablonunun değişmesi, yeni bir ürün akışının açılması, model değişimi ve bağlam kullanımının artması. Bunların her biri token profilini değiştirir, yani kapasite hesabının girdisini değiştirir.
SIK DÜŞÜLEN TUZAKLAR
Kapasiteyi istek/saniye ile ifade etmek
Çıktı uzunlukları farklı iki istek aynı iş değildir. İstek sayısına kurulan plan, uzun çıktı üreten tek bir özellik yayına alındığı gün sessizce geçersiz olur.
Ortalama gecikmeyle plan yapmak
Ortalama, kuyruğu gizler. Kullanıcı deneyimi dağılımın kuyruğunda yaşanır ve ortalamaya göre boyutlandırılmış bir filo tam da tepe saatte doyma noktasına oturur.
Doluluğu tavana yakın hedeflemek
Tavana yakın dolulukta bekleme süresi küçük yük artışlarında orantısız büyür; üstüne bir kopya kaybı geldiğinde geri dönülecek pay kalmaz.
Otomatik ölçeklemeyi yedeklilik yerine saymak
Ölçekleme, ağırlık yükleme ve ısınma süresi kadar geriden gelir. Ani dalga veya düğüm kaybı, yeni kopya hazır olmadan önce hizmet hedefini bozar.
Yük testini sıcak önbellekle koşmak
Sıcak önek önbelleği ve yüklü ağırlıklarla alınan ölçüm iyimserdir. Üretimde yeniden başlatma, dağıtım ve ölçekleme anları soğuk gerçekleşir.
KONTROL LİSTESİ
- Tepe penceresi yük profili token cinsinden yazılı
- İlk token ve token arası süre hedefleri yüzdelik ve yük koşuluyla tanımlı
- Tek kopyanın doyma noktası yük testiyle ölçüldü
- Kuyrukta bekleme süresi işlem süresinden ayrı raporlanıyor
- Kopya sayısı formülü ve yedeklilik payı yazılı bir belgede duruyor
- Ölçekleme tetikleyicisi bekleyen isteği gösteren bir sinyale bağlı
- Bir kopya kaybı provası yapıldı, kurtarma süresi kaydedildi
- Bin token başına maliyet gerçek dolulukta hesaplandı
Maddelerin tamamı işaretlenmeden kurulum üretime alınmamalı.
Sık sorulan sorular
Çıkarım kapasitesi kaç eşzamanlı istek üzerinden planlanır?
Evrensel bir sayı yok; kapasite modele, donanıma, istem uzunluğuna ve hizmet hedefine göre değişir. Doğru yöntem kendi eğrinizi çıkarmaktır: sabit eşzamanlılık kademeleriyle yük testi koşup verimin düzleştiği, gecikmenin ise artmaya devam ettiği dirsek noktasını bulun ve bir kademe altını kopya kapasitesi kabul edin.
Cihaz doluluğu düşükken gecikme neden yüksek olabiliyor?
Çünkü süre çoğunlukla işlemede değil beklemede geçiyor olabilir. En sık neden, isteklerin kabul edilmeden kuyrukta beklemesidir: eşzamanlılık tavanı, kabul denetimi veya kopya sayısı dar olduğunda cihaz boş dururken kuyruk uzar. Göstergenin kendisi de güvenilir değildir; çekirdeğin çalıştığını söyler, işin ilerlediğini değil — bu yüzden çözümleme bellek bant genişliğine takılıyken doluluk tersine yüksek okunurken de iş yavaş ilerler. Her iki durumda da teşhis, kuyrukta geçen süre işlem süresinden ayrı ölçülmeden konulamaz.
Otomatik ölçekleme yedeklilik yerine geçer mi?
Hayır. Yeni kopyanın ayağa kalkması, ağırlıkları yüklemesi ve ısınması zaman alır; arıza anı ile yeni kapasitenin hazır olması arasındaki boşlukta hizmet hedefi bozulur. Ölçekleme öngörülebilir büyümeyi karşılar, ani kayıp için önceden ayrılmış yedeklilik payı gerekir.
Kapasite planını ne zaman yenilemek gerekir?
Token profilini değiştiren her olayda: istem şablonu veya araç şemaları güncellendiğinde, geri getirilen bağlam uzadığında, yeni bir ürün akışı açıldığında ve model ya da sunum yığını değiştiğinde. İstek sayısı hiç değişmeden de girdi token hacmi büyüyebilir; plan bu yüzden takvime değil değişikliğe bağlanır.
Kaynaklar
- 01Sunum yığını ve otomatik ölçekleme dokümantasyonları — Model ve altyapı sağlayıcıları · Dokümantasyon
- 02Kuyruk kuramı: doluluk ile bekleme süresi ilişkisi üzerine standart kaynaklar — Yöneylem araştırması literatürü · Makale
- 03Sinaptik Research — çıkarım kapasitesi saha notları — Sinaptik Lab · Teknik rapor
BUILD
Bu rehberi kurumunuzda uygulayalım mı?
Aynı mimariyi kendi verinizle kurmak için discovery oturumundan üretime kadar birlikte ilerliyoruz.
