Çıkarım#
Ultralytics Platform, eğitilmiş modelleri test etmek için tarayıcı tabanlı çıkarım ve programatik erişim için özel uç noktalar sunar.

Tahmin Sekmesi#
Ağırlıkları olan her modelde tarayıcı tabanlı çıkarım için bir Predict sekmesi bulunur:
- Modeline git
- Tahmin sekmesine tıkla
- Bir görüntü yükle, örneklerden birini kullan veya web kameranı aç
- Göreve özel katmanı, tahmin özetini, süreyi ve ham yanıtı incele
Ağırlıkları olmayan modellerde bunun yerine boş bir durum gösterilir — önce modeli eğit veya ağırlıkları yükle.

Giriş Yöntemleri#
Tahmin paneli birden fazla giriş yöntemini destekler:
| Yöntem | Açıklama |
|---|---|
| Görüntü yükleme | Bir görüntüyü sürükleyip bırak veya yüklemek için tıkla |
| Örnek görüntüler | Yerleşik örneklere tıkla (veri kümesi görüntüleri veya varsayılanlar) |
| Web kamerası yakalama | Tek kare yakalamayı destekleyen canlı kamera akışı |
| IP kamera | Kendi dağıtımında RTSP veya RTSPS akışı |
Görüntü Yükle#
Yüklemek için sürükleyip bırak veya tıkla:
- Desteklenen biçimler: JPEG, PNG, WebP, AVIF, HEIC, JP2, TIFF, BMP
- Maksimum boyut: 10 MB
- Otomatik çıkarım: Yüklemenin ardından sonuçlar otomatik olarak görünür
Tahmin paneli; bir görüntü yüklediğinde, bir örnek seçtiğinde veya web kamerasından bir kare yakaladığında çıkarımı otomatik olarak çalıştırır. Düğmeye tıklaman gerekmez.
Yüklemeden önce panel, görüntüyü en uzun kenarı seçilen Image Size ile eşleşecek şekilde yeniden boyutlandırır ve normalize edilmiş koordinatlar ister. Bu, tarayıcıda testin hızlı olmasını sağlar; kendin gönderdiğin istekler yeniden boyutlandırılmaz.
Örnek Görüntüler#
Tahmin paneli, modelinin bağlantılı veri kümesinden en fazla iki örnek görüntü gösterir; önce val bölümündeki, ardından test ve son olarak train bölümündeki görüntülere öncelik verir. Bağlantılı bir veri kümesi yoksa varsayılan örnekler kullanılır:
| Görüntü | İçerik |
|---|---|
bus.jpg | Araçların bulunduğu sokak sahnesi |
zidane.jpg | İnsanların bulunduğu spor sahnesi |
OBB modellerinde bunun yerine teknelerin ve bir havaalanının havadan çekilmiş görüntüleri gösterilir.
Örnek görüntüler sayfa yüklendiğinde önceden yüklenir; bu nedenle bir örneğe tıkladığında indirme beklemeden neredeyse anında çıkarım yapılır.
Web Kamerası#
Canlı kamera akışını başlatmak için görsel alanının üstündeki Web kamerası seçeneğini belirle:
- İstendiğinde kamera izni ver
- Bir kare yakalamak için video önizlemesine tıkla
- Yakalanan kare üzerinde çıkarım otomatik olarak çalışır
- Canlı akışa dönmek için Web kamerasına dön seçeneğine tıkla
Kendi dağıtımındaki Predict sekmesinde web kamerası bunun yerine sürekli çıkarım yapar. Canlı Kamera Çıkarımı bölümüne bak.
Sonuçları Görüntüle#
Çıkarım sonuçlarında model görevi için uygun çıktılar görüntülenir: kutular, maskeler, kilit noktaları, yönlendirilmiş kutular, sınıflandırma puanları, anlamsal kapsama veya derinlik haritası. Kullanılabilir olduğunda nesne sonuçlarında veri kümesinin sınıf renkleri kullanılır. Panel ayrıca ön işleme, çıkarım, son işleme ve ağ sürelerini gösterir.

Sonuçlar panelinde şunlar gösterilir:
| Alan | Açıklama |
|---|---|
| Sonuç özeti | Algılama başına liste veya sınıflandırma ve anlamsal modeller için en iyi 5 sınıf |
| Hız istatistikleri | Ön işleme, çıkarım, son işleme ve ağ (ms) |
| Sürümler | Ultralytics ve PyTorch sürümleri, ayrıca uygun olduğunda derinlik aralığı veya maske boyutu |
| JSON yanıtı | Base64 harita verileri çıkarılmış, kod bloğundaki ham API yanıtı |
Sonuçlar yüklendikten sonra önizlemenin üzerinde iki denetim görünür: katmanları bozulmadan görüntüyü büyütmek için görüntüye tıkla ve mevcut sonucun açıklamalı JPEG'sini kaydetmek için indirme düğmesini kullan.
Çıkarım Parametreleri#
Görüntünün altındaki üç kaydırıcıyla çıkarım davranışını ayarla (derinlik modellerinde yalnızca Görüntü Boyutu gösterilir):

| Parametre | Aralık | Varsayılan | Açıklama |
|---|---|---|---|
| Güven | 0.01 – 1.0, 0.01 adımlarla | 0.25 | Minimum güven eşiği |
| IoU | 0.0 – 0.95, 0.01 adımlarla | 0.7 | NMS IoU eşiği |
| Görüntü Boyutu | 32 – 1280, 32 adımlarla | 640 | Giriş yeniden boyutlandırma ölçüsü |
Herhangi bir parametreyi değiştirmek, 500 ms gecikmeyle geçerli görüntüde çıkarımı otomatik olarak yeniden çalıştırır. Yeniden yüklemen gerekmez.
Güven Eşiği#
Tahminleri güven değerine göre filtrele:
- Yüksek (0.5+): Daha az sayıda, daha kesin tahmin
- Düşük (0.1-0.25): Daha fazla tahmin, bir miktar gürültü
- Varsayılan (0.25): Çoğu kullanım senaryosu için dengeli
IoU Eşiği#
Maksimum Olmayan Bastırmayı kontrol et:
- Yüksek (0.7+): Daha fazla örtüşen kutuya izin ver
- Düşük (0.3-0.5): Örtüşen tespitleri daha agresif biçimde bastır
- Varsayılan (0.7): Çoğu kullanım senaryosu için dengeli NMS davranışı
Dağıtımda Tahmin#
Çalışan her özel uç nokta, dağıtım sayfasında bir Predict sekmesi içerir. Bu sekme, paylaşılan tahmin hizmeti yerine dağıtımın kendi çıkarım hizmetini kullanır; böylece dağıtılmış uç noktanı tarayıcıdan test edebilirsin.
Hazır bir uç noktada işlenen görüntüler, İzleme sekmesine de katkıda bulunur. Sekmedeki örnekler ve toplu grafikler, bellekte tutulan hafif ve geçici verilerdir; hizmeti durdurmak, yeniden başlatmak, yeniden dağıtmak, boyutunu değiştirmek veya modeli değiştirmek bu verileri silebilir. Örnekleri saklamak için bir veri kümesine kaydet.
Canlı Kamera Çıkarımı#
Sahibi olduğun bir dağıtımın Predict sekmesinde, uç noktayı canlı videoda çalıştırmak için Web kamerası veya IP kamera seçeneğini belirle:
| Kaynak | Nasıl çalışır |
|---|---|
| Web kamerası | Tarayıcı kareleri tek tek uç noktaya gönderir ve her sonucun üzerine canlı akışta çizim yapar |
| IP kamera | Kimlik bilgileri de dahil olmak üzere bir rtsp:// veya rtsps:// URL'si gir ve Bağlan'a tıkla; uç nokta kamerayı okur ve her sonucu geri akış olarak gönderir |
Canlı çıkarım, yalnızca çalışma alanı sahibinin yükleyebildiği uç noktanın bağlı API anahtarını kullanır; diğer ekip üyeleri için web kamerası tek kareler yakalar ve bir modelin Predict sekmesinde olduğu gibi IP kamera kullanılamaz. IP kameraya internet üzerinden erişilebilmelidir: uç nokta, 192.168.x.x gibi yerel ağ adreslerini reddeder. Her sonuç en yeni kareye aittir; bu nedenle çıkarım geride kaldığında kareler atlanır. Kaydırıcı değişiklikleri bir sonraki web kamerası karesine uygulanır ve IP kamera akışı yeniden başlatılır. Tarayıcı sekmesi gizlendiğinde canlı çıkarım duraklatılır. Kare yakalamak için önizlemeye tıkla veya IP kamerayı görüntülemeyi durdurmak için Bağlantıyı kes'e tıkla.
Arka Plan Kamerası#
Özel CPU ve bellek boyutuna sahip bir uç nokta, bağlantıyı kestikten veya sayfayı kapattıktan sonra da bir IP kamerayı izlemeye devam edebilir. Bağlanan kamerada sonuçlar görünmeye başladıktan sonra Arka planda çalışmaya devam et seçeneğini aç. Dağıtım başlığında Kamera açık görünür ve sonuçlar geçici örnekler ve tahmin istatistikleri olarak İzleme sekmesine gider.
- Ayarlar: Arka plan kamerası her zaman varsayılan güven değerini (0.25), IoU değerini (0.7) ve modelin eğitim görseli boyutunu kullanır; kaydırıcılar bu ayarlara uygulanmaz.
- Maliyet: Ek ücret olmadan uç noktanın etkin örneğinde çalışır; kamera açık veya kapalı olsa da saatlik çalışma süresi ücreti uygulanır.
- Değişiklikler: Kamerayı açmak, kapatmak veya başka bir kameraya geçirmek uç noktanın örneğini yeniden başlatır. Bu işlem uç noktanın hazır kalmasını sağlar, ancak geçici izleme verilerini temizler.
- Durdurma: Anahtarı kapat. Bağlantıyı kesmek veya sayfayı kapatmak kamerayı durdurmaz; uç noktanın boyutunu varsayılan boyuta getirmek ise kamerayı kaldırır. Kamera çevrimdışı olursa uç nokta yeniden bağlanmayı sürdürür.
- Uç nokta yaşam döngüsü: Uç noktayı durdurmak kamerayı ve ücretleri durdurur; yeniden başlatmak kayıtlı kamerayı çalıştırmaya devam eder.
Varsayılan boyutlu uç noktalar, arka plan seçeneği olmadan canlı web kamerası ve IP kamera çıkarımı sunar. API'den bir arka plan kamerası kaydetmek için dağıtım camera eylemini kullan.
API'den Akış Sonuçları#
Sonuçları sunucu tarafından gönderilen olaylar olarak almak için, bir RTSP veya RTSPS URL'sini source olarak ve Accept: text/event-stream başlığıyla özel bir uç nokta URL'sine gönder:
curl -N -X POST \
"https://YOUR_DEPLOYMENT_URL.run.app/predict" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: text/event-stream" \
-F "source=rtsp://user:password@camera.example.com:554/stream" \
-F "conf=0.25"Her kare olayı, normalleştirilmiş (0-1) koordinatlarla yanıt biçimindeki images öğesini, karenin preview JPEG veri URL'sini ve görev ile sınıf adlarını içeren metadata öğesini taşır. Yalnızca conf, iou ve imgsz geçerlidir; uç noktanın arka plan kamera URL'sinin akışını varsayılan ayarlar kullanır. Yalnızca status içeren olaylarda kare bulunmaz; error iletisi taşıyan bir olay (kamera okunamadı veya uç nokta modeli çalıştıramıyor) akışı sonlandırır. Uç nokta yeniden başlatıldığında veya istek zaman sınırına ulaştığında da akış kapanır; bu nedenle hata vermeden sona erdiğinde bekleme süresini artırarak yeniden bağlan. Platform API dağıtım tahmin rotası ve SDK akış sağlamaz; kamera isteklerini bağlı API anahtarıyla uç nokta URL'sine gönder. Başlık olmadan yapılan kamera source isteği 400 döndürür.
Özel Uç Nokta API'si#
Modelin Predict sekmesindeki API Belgeleri kartı, kaydırıcılarda o anda ayarlanmış güven, IoU ve görüntü boyutu değerleriyle önceden doldurulmuş örnek Python, JavaScript ve cURL isteklerini içerir. Modeli dağıtana kadar URL ve anahtar yer tutucu olarak kalır — kod sekmelerinin yanındaki Dağıt düğmesi modelin Deploy sekmesine gider. Dağıtımdan sonra, dağıtım sayfasının Predict sekmesindeki Belgeler sonuç sekmesi, bu uç noktanın URL'sini ve çalışma alanı sahipleri için bağlı API anahtarını doldurur; bunları kopyalayıp çalıştırmaya hazır hâle getirir.
Kimlik Doğrulama#
İsteklere API anahtarını ekle:
Authorization: Bearer YOUR_API_KEYKendi betiklerinden, not defterlerinden veya uygulamalarından çıkarım çalıştırmak için bir API anahtarı ekle. Settings > API Keys bölümünden bir anahtar oluştur. Özel bir uç nokta yalnızca oluşturulurken tanımlanan tek anahtarı kabul eder; paylaşılan model API'si çalışma alanındaki tüm etkin anahtarları, herkese açık modeller ise anonim istekleri de kabul eder.
Uç Nokta#
Özel uç noktalar istekleri kendi URL'leri üzerinden alır:
POST https://YOUR_DEPLOYMENT_URL.run.app/predictPaylaşılan çıkarım, modelin tam yolunu içeren Platform API'sini kullanır:
POST https://platform.ultralytics.com/api/models/{owner}/{project}/{model}/predictHer ikisi de aynı multipart/form-data gövdesini kabul eder ve aynı yanıt biçimini döndürür. Paylaşılan çıkarım için Python SDK ile client.models.predict(owner, project, model, body=...), özel bir dağıtım için client.deployments.predict(owner, deployment, body=...) kullan. Her iki SDK yöntemi de Platform API'sini çağırır; bu nedenle API'nin hız sınırları ve istek boyutu sınırı geçerlidir. Bu sınırları aşmak için İstek bölümünde gösterildiği gibi doğrudan özel uç nokta URL'sine gönderim yap. Paylaşılan çıkarım örneği:
from ultralytics_platform import Platform
client = Platform() # reads ULTRALYTICS_API_KEY
with open("image.jpg", "rb") as f:
results = client.models.predict("acme-vision", "inspection", "v3", body={"file": f, "conf": 0.25})İstek#
import requests
url = "https://YOUR_DEPLOYMENT_URL.run.app/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}
with open("image.jpg", "rb") as image_file:
response = requests.post(url, headers=headers, files={"file": image_file}, data=data)
print(response.json())
İstek Parametreleri#
| Parametre | Tür | Varsayılan | Aralık | Açıklama |
|---|---|---|---|---|
file | file | - | - | Görüntü veya video dosyası (source ayarlanmadıysa gereklidir) |
conf | float | 0.25 | 0.01 – 1.0 | Minimum güven eşiği |
iou | float | 0.7 | 0.0 – 0.95 | NMS IoU eşiği |
imgsz | int | - | 32 – 1280 | Piksel cinsinden giriş görüntüsü boyutu; varsayılan olarak modelin eğitim boyutu kullanılır (mevcut değilse 640) |
normalize | bool | false | - | Sınırlayıcı kutu koordinatlarını 0 – 1 aralığında döndür |
decimals | int | 5 | 0 – 10 | Koordinat değerleri için ondalık hassasiyet |
vid_stride | int | 1 | ≥ 1 | Videonun her N'inci karesinde tahmin yap; görüntülerde bu parametre yok sayılır |
bits | int | 8 | 8, 12, 16 | Derinlik haritası niceleme; yalnızca derinlik modelleri için |
source | string | - | - | Görüntü URL'si veya base64 dizesi (file yerine kullanılabilir); Platform API'si üzerinden en fazla 4.096 karakter |
Yanıt#
{
"images": [
{
"shape": [1080, 1920],
"results": [
{
"class": 0,
"name": "person",
"confidence": 0.92,
"box": { "x1": 100, "y1": 50, "x2": 300, "y2": 400 }
},
{
"class": 2,
"name": "car",
"confidence": 0.87,
"box": { "x1": 400, "y1": 200, "x2": 600, "y2": 350 }
}
],
"speed": {
"preprocess": 1.2,
"inference": 12.5,
"postprocess": 2.3
}
}
],
"metadata": {
"imageCount": 1,
"classNames": ["person", "bicycle", "car", "..."],
"functionTimeAlive": 1284.51,
"functionTimeCall": 0.018,
"task": "detect",
"version": {
"ultralytics": "8.x.x",
"torch": "2.6.0",
"torchvision": "0.21.0",
"python": "3.13.0"
}
}
}
Yanıt Alanları#
| Alan | Tür | Açıklama |
|---|---|---|
images | array | İşlenen görüntülerin listesi; işlenen her video karesi için bir girdi |
images[].shape | array | Görüntü boyutları [yükseklik, genişlik] |
images[].results | array | Tespitlerin listesi |
images[].results[].class | int | Sınıf indeksi (tamsayı kimliği) |
images[].results[].name | string | Sınıf adı |
images[].results[].confidence | float | Tespit güven değeri (0-1) |
images[].results[].box | object | Sınırlayıcı kutu koordinatları |
images[].semantic_mask | object | Piksel başına sınıf haritası (yalnızca anlamsal modeller için) |
images[].depth | object | Piksel başına derinlik haritası (yalnızca derinlik modelleri için) |
images[].speed | object | Milisaniye cinsinden işlem süreleri |
metadata | object | Görüntü sayısı, model sınıf adları, hizmet süreleri, görev ve sürümler |
Göreve Özgü Yanıtlar#
Yanıt biçimi göreve göre değişir:
{
"class": 0,
"name": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400}
}Hız Sınırları#
Paylaşılan model API'si her API anahtarı, oturum açmış kullanıcı veya anonim IP için dakikada 20 istek ile sınırlıdır. Platform dağıtımındaki tahmin rotası (POST /api/deployments/{owner}/{deployment}/predict) da aynı sınıra tabidir. İstekler kısıtlandığında API, Retry-After başlığıyla birlikte 429 döndürür. Tüm uç nokta kategorileri için hız sınırı başvurusunun tamamına bak.
Doğrudan özel bir uç noktaya gönderilen istekler Platform API hız sınırlayıcısından geçmez. Uç nokta geçici olarak kapasitesini doldurduğunda yine de yükü azaltır ve Retry-After başlığıyla birlikte 429 döndürür. Yüksek hacimli yerel çıkarım için Tahmin modu kılavuzuna bak.
Hata İşleme#
Yaygın hata yanıtları:
| Kod | Mesaj | Çözüm |
|---|---|---|
| 400 | Geçersiz görüntü | Dosya biçimini veya modelin eğitilmiş ağırlıklara sahip olup olmadığını kontrol et |
| 401 | Yetkisiz | API anahtarını doğrula |
| 404 | Model bulunamadı | Sahip, proje ve model adlarını kontrol et |
| 413 | Girdi çok büyük | Dosya boyutunu uç nokta sınırının altına indir |
| 429 | Hız sınırına ulaşıldı | Bekleyip yeniden dene veya istekleri doğrudan özel bir uç noktaya gönder |
| 500 | Sunucu hatası | İsteği yeniden dene |
| 503 | Hizmet kullanılamıyor | Tahmin hizmeti başlatılıyor veya hizmete erişilemiyor; kısa süre bekleyip yeniden dene |
Sık Sorulan Sorular#
Her iki çıkarım yöntemi de video dosyalarını kabul eder:
- Özel uç noktalar video dosyalarını doğrudan kabul eder. Desteklenen biçimler (istek başına en fazla 32 MB): ASF, AVI, GIF, M4V, MKV, MOV, MP4, MPEG, MPG, TS, WEBM, WMV. Sonuçlar işlenen her kare için döndürülür ve bir istek en fazla 1 saat çalışabilir. Ayrıntılar için özel uç noktalar bölümüne bak.
- Paylaşılan çıkarım (
POST /api/models/{owner}/{project}/{model}/predict) aynı tahmin hizmetini kullanır ve aynı video biçimlerini kabul eder; ancak istekler yaklaşık 4.5 MB ile sınırlıdır ve yaklaşık 30 saniye sonra zaman aşımına uğrar, bu nedenle yalnızca kısa klipler için uygundur. Tarayıcıdaki Tahmin sekmesi yalnızca görseller yükler; video dosyaları için özel uç nokta, web kamerası veya IP kamera için Canlı Kamera Çıkarımı kullan.
Derinlik modelleri video dosyalarını kabul etmez.
Tahmin sekmesinde, önizlemenin üzerindeki indirme düğmesi geçerli sonucu açıklama eklenmiş bir JPEG olarak kaydeder. API'nin kendisi JSON tahminleri döndürür. Bunları görselleştirmek için:
- Kutuları yerel olarak çizmek için tahminleri kullan
- Modeli Ultralytics ile yerel olarak çalıştır ve açıklama eklenmiş sonucu
save()ile kaydet (veyaplot()ile bir dizi al):
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model("image.jpg") results[0].save("annotated.jpg")Sonuç API'si ve görselleştirme seçeneklerinin tamamı için Predict modu belgelerine göz at.
- Predict sekmesi sınırı: 10 MB
- Paylaşılan çıkarım API'si sınırı: Python SDK üzerinden yapılanlar da dâhil, istek başına yaklaşık 4,5 MB
- Özel uç nokta sınırı: Doğrudan uç nokta URL'sine gönderilen istek başına 32 MB
- Predict sekmesinde otomatik yeniden boyutlandırma: Görüntüler yüklenmeden önce seçilen
Image Sizeboyutuna yeniden boyutlandırılır
En-boy oranı korunarak büyük görüntüler tarayıcıda otomatik olarak yeniden boyutlandırılır. Kendin gönderdiğin istekler yeniden boyutlandırılmaz; bu nedenle sınırı aşan istekler
413ile reddedilir.Mevcut API, her istekte bir görüntüyü işler. Toplu işlem için:
- Her görüntü için ayrı istek gönder
- Uygun olduğunda istekleri özel uç noktalara dağıt
- Büyük toplu işlemler için yerel çıkarım kullan
Python ile Toplu Çıkarımimport concurrent.futures import requests url = "https://YOUR_DEPLOYMENT_URL.run.app/predict" headers = {"Authorization": "Bearer YOUR_API_KEY"} images = ["img1.jpg", "img2.jpg", "img3.jpg"] def predict(image_path): with open(image_path, "rb") as f: return requests.post(url, headers=headers, files={"file": f}).json() with concurrent.futures.ThreadPoolExecutor(max_workers=4) as executor: results = list(executor.map(predict, images))