Triton Inference Server ile Yüksek Performanslı Sunum
Model deposu, model config.pbtxt, eşzamanlı model örnekleri, dinamik toplu işleme.
Triton Inference Server ile Yüksek Performanslı Sunum, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
Triton Nedir
NVIDIA Triton Inference Server, CPU ve GPU üzerinde aynı anda çok sayıda modeli barındıran üretim amaçlı bir hizmet sunum sistemidir. Yerleşik toplu işleme ve eşzamanlılık özellikleriyle bir HTTP/gRPC API'si üzerinden birden çok arka ucu (TensorRT, ONNX, PyTorch, TensorFlow, Python) destekler.
Model Deposu
Triton, modelleri bir model deposundan yükler: her modelin kendine ait bir klasörünün, sayısal bir sürüm alt klasörünün ve bir config.pbtxt dosyasının bulunduğu bir dizin.
model_repository/
resnet50/
config.pbtxt
1/
model.onnx
bert/
config.pbtxt
1/
model.ptconfig.pbtxt: Arka Uç
config.pbtxt dosyası, Triton'un bir modeli nasıl çalıştırması gerektiğini açıklar. Arka uç (veya platform), Triton'a hangi çalışma zamanını kullanacağını bildirir.
name: "resnet50"
backend: "onnxruntime"
max_batch_size: 32Girdi ve Çıktı Tensörleri
Her girdiyi ve çıktıyı; adını, veri türünü ve tensör boyutlarını (şeklini) bildirerek tanımlarsınız. Şekiller, modelin beklediği değerlerle eşleşmelidir. Öndeki toplu iş boyutu max_batch_size tarafından örtük olarak belirtilir.
input [
{
name: "input"
data_type: TYPE_FP32
dims: [ 3, 224, 224 ]
}
]
output [
{
name: "output"
data_type: TYPE_FP32
dims: [ 1000 ]
}
]Veri Türleri
Triton, istemcilerin ve modelin bayt düzeni üzerinde anlaşması için açık tensör veri türleri kullanır:
TYPE_FP3232 bit kayan nokta (görüntüler için yaygın)TYPE_FP16yarı duyarlık (GPU'larda daha hızlı)TYPE_INT64NLP için belirteç kimlikleriTYPE_INT8niceleme uygulanmış modeller
Dinamik Toplu İşleme: Fikir
Dinamik toplu işleme, Triton'un gelen birkaç isteği modeli çalıştırmadan önce daha büyük bir toplu işte birleştirmesini sağlar. GPU'lar büyük toplu işlerde çok daha verimli çalışır; bu nedenle istemci kodunu değiştirmeden işlem hacmini büyük ölçüde artırır.
Dinamik Toplu İşlemeyi Yapılandırma
Bunu yapılandırmada etkinleştirir ve Triton'un istekleri toplamak için ne kadar bekleyeceğini belirlersiniz. Küçük bir max_queue_delay_microseconds değeri, çok daha yüksek işlem hacmi karşılığında biraz gecikmeyi kabul eder.
dynamic_batching {
preferred_batch_size: [ 8, 16 ]
max_queue_delay_microseconds: 1000
}Eşzamanlı Model Örnekleri
Triton, varsayılan olarak bir modelin tek bir kopyasını (örneğini) çalıştırır. instance_group ile bir veya daha fazla GPU üzerinde aynı anda birkaç örnek çalıştırabilir, bağımsız istekleri eş zamanlı işleyebilir ve kaynak kullanımını iyileştirebilirsiniz.
instance_group [
{
count: 2
kind: KIND_GPU
gpus: [ 0 ]
}
]Toplu İşleme ve Eşzamanlılık
Bunlar farklı sorunları çözer:
- Dinamik toplu işleme, istekleri tek bir model çağrısında birleştirir (çağrı başına işlem hacmi)
- Eşzamanlı örnekler, birden çok model çağrısını aynı anda çalıştırır (paralellik)
Birbirlerini tamamlarlar; üretim yapılandırmalarında genellikle ikisi de kullanılır.
perf_analyzer
perf_analyzer, sunucuya sentetik istekler göndererek yük oluşturan ve işlem hacmi (saniyedeki çıkarım sayısı) ile gecikme yüzdeliklerini bildiren bir Triton aracıdır. Gecikme bütçeniz içinde işlem hacmini en üst düzeye çıkaran toplu iş ve eşzamanlılık ayarlarını bulmak için kullanın.
perf_analyzer -m resnet50 \
--concurrency-range 1:8 \
--percentile 95perf_analyzer Çıktısını Okuma
Bu araç, eşzamanlılık düzeylerini tarar ve her biri için işlem hacmiyle birlikte gecikmeyi yazdırır. Eğrinin dirsek noktasını ararsınız: eşzamanlılığı artırmanın işlem hacmini iyileştirmeyi bıraktığı veya P95 gecikmesini sınırınızın üzerine çıkardığı nokta.
# Concurrency: 4, throughput: 1820 infer/sec, p95 latency: 9.1 ms
# Concurrency: 8, throughput: 1905 infer/sec, p95 latency: 17.4 msHızlı Kontrol
Triton bilginizi test edin.
Özet
Triton ile yüksek performanslı hizmet sunmayı öğrendiniz:
- Model deposu: sürüm alt dizinleri ve
config.pbtxtiçeren model başına klasörler config.pbtxt, arka ucu, girdi ve çıktı tensörlerinin şekillerini ve veri türlerini tanımlar- Dinamik toplu işleme işlem hacmini artırır; eşzamanlı örnekler paralellik sağlar
- perf_analyzer, ayarları düzenlemek için işlem hacimini gecikmeyle karşılaştırarak ölçüm yapar
Sıkça Sorulan Sorular
“Triton Inference Server ile Yüksek Performanslı Sunum” dersi ücretsiz mi?
Evet — “Triton Inference Server ile Yüksek Performanslı Sunum” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Triton Inference Server ile Yüksek Performanslı Sunum” dersinde ne öğreneceğim?
Model deposu, model config.pbtxt, eşzamanlı model örnekleri, dinamik toplu işleme. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Triton Inference Server ile Yüksek Performanslı Sunum” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Docker ile Makine Öğrenmesi Modellerini Konteynerleştirme
- Buluta Dağıtım: AWS SageMaker
- Triton Inference Server ile Yüksek Performanslı Sunum
- Model Uç Noktalarını Ölçeklendirme ve Otomatik Ölçeklendirme