Model sunumunun, eğitilmiş modeller ile üretim arasındaki boşluğu nasıl doldurduğunu öğrenin. Ultralytics Ultralytics için dağıtım stratejilerini keşfedin.
Model sunumu, eğitilmiş bir makine öğrenimi modelini barındırma ve işlevselliğini bir ağ arabirimi aracılığıyla yazılım uygulamalarına sunma sürecidir. Diskte kaydedilmiş statik bir model dosyası ile gerçek dünya verilerini işleyen canlı bir sistem arasında köprü görevi görür. Bir model makine öğrenimi (ML) eğitim aşamasını tamamladıktan sonra, görüntüler, metinler veya tablo verileri gibi girdileri alabileceği ve tahminleri döndürebileceği bir üretim ortamına entegre edilmelidir. Bu genellikle modeli bir Uygulama Programlama Arayüzü (API) ile sararak, web sunucuları, mobil uygulamalar veya IoT cihazlarıyla iletişim kurmasını sağlayarak gerçekleştirilir.
Model sunmanın temel amacı, tahminsel modelleme yeteneklerini etkili bir şekilde işlevselleştirmektir. Eğitim, doğruluk ve kayıp minimizasyonuna odaklanırken, sunma, gecikme (tahminlerin ne kadar hızlı döndürüldüğü) ve verim (saniyede kaç istek işlenebileceği) gibi performans metriklerine odaklanır. Sağlam hizmet altyapısı, bilgisayar görme (CV) sistemlerinin ağır yükler altında güvenilirliğini korumasını sağlar. Genellikle, farklı bilgi işlem ortamlarında tutarlı davranış sağlamak için modeli bağımlılıklarıyla birlikte paketleyen Docker gibi araçları kullanan konteynerleştirme gibi teknolojileri içerir.
Model sunumu, çeşitli sektörlerde her yerde bulunan yapay zeka özelliklerine güç vererek, aşağıdakilere dayalı olarak anında karar vermeyi sağlar veri.
Bir modeli etkili bir şekilde kullanmak için, genellikle modelleri ONNX gibi standart bir biçime ONNXgibi standartlaştırılmış bir biçime aktarmak genellikle faydalıdır. Bu, farklı eğitim çerçeveleri ve hizmet motorları arasında birlikte çalışabilirliği artırır. Aşağıdaki örnek, bir modeli yüklemeyi ve çıkarım yapmayı, Python kullanarak bir hizmet uç noktasında bulunacak mantığı simüle etmeyi gösterir. Python.
from ultralytics import YOLO
# Load the YOLO26 model (this typically happens once when the server starts)
model = YOLO("yolo26n.pt")
# Simulate an incoming API request with an image source URL
image_source = "https://ultralytics.com/images/bus.jpg"
# Run inference to generate predictions for the user
results = model.predict(source=image_source)
# Process results (e.g., simulating a JSON response to a client)
print(f"Detected {len(results[0].boxes)} objects in the image.")
Servis stratejisinin seçimi, büyük ölçüde belirli kullanım durumuna bağlıdır. Çevrimiçi Hizmet, REST veya gRPC gibi protokoller aracılığıyla anında yanıtlar sağlar ve bu, kullanıcıya yönelik web uygulamaları için çok önemlidir. Buna karşılık, Toplu Hizmet, büyük hacimli verileri çevrimdışı olarak işler ve bu, gece raporu oluşturma gibi görevler için uygundur. Gizlilik veya internet bağımlılığı olmadan düşük gecikme süresi gerektiren uygulamalar için, Edge AI, hizmet sürecini doğrudan cihaza taşır ve TensorRT gibi optimize edilmiş formatları kullanır. TensorRT gibi optimize edilmiş formatları kullanarak sınırlı donanımlarda performansı en üst düzeye çıkarır. Birçok kuruluş, Ultralytics kullanarak bu modellerin bulut API'leri ve uç cihazlar dahil olmak üzere çeşitli uç noktalara dağıtımını basitleştirir.
Yakından ilişkili olmakla birlikte, "Model Sunumu" Model Dağıtımı ve Çıkarımdan farklıdır.