Çıkarım#
Ultralytics Platform, eğitilmiş modelleri test etmek için tarayıcı tabanlı çıkarım ve programlı erişim için adanmış uç noktalar sağlar.

Tahmin Et Sekmesi#
Ağırlıkları olan her model, tarayıcı tabanlı çıkarım için bir Predict sekmesi içerir:
- Modeline git
- Predict sekmesine tıkla
- Bir görsel yükle, bir örnek kullan veya web kameranı aç
- Göreve özel yer paylaşımını, tahmin özetini, süreyi ve ham yanıtı incele
Ağırlıkları olmayan modeller bunun yerine boş bir durum gösterir; ö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örsel yükleme | Sürükleyip bırak veya bir görsel yüklemek için tıkla |
| Örnek görseller | Yerleşik örneklere (veri kümesi görselleri veya varsayılanlar) tıkla |
| Web kamerası yakalama | Tek kare yakalama özelliğine sahip canlı kamera yayını |
graph LR
A[Upload Image]:::start --> D[Auto-Inference]:::proc
B[Example Image]:::start --> D
C[Webcam Capture]:::start --> D
D --> E[Results + Overlays]:::out
classDef start fill:#4CAF50,color:#fff
classDef proc fill:#2196F3,color:#fff
classDef out fill:#9C27B0,color:#fffGörsel 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: Sonuçlar yüklemeden sonra otomatik olarak görünür
Tahmin paneli, bir görsel yüklediğinde, bir örnek seçtiğinde veya bir web kamerası karesi yakaladığında otomatik olarak çıkarım yapar. Düğmeye tıklamana gerek kalmaz.
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 normalleştirilmiş koordinatlar ister. Bu, tarayıcı testlerini hızlı tutar; kendin gönderdiğin istekler yeniden boyutlandırılmaz.
Örnek Görseller#
Tahmin paneli, modelinin bağlı veri setinden en fazla iki örnek görüntü gösterir; önce val bölümünü, ardından test bölümünü ve son olarak train bölümünü tercih eder. Bağlı bir veri seti yoksa varsayılan örnekler kullanılır:
| Görsel | İçerik |
|---|---|
bus.jpg | Araçların olduğu sokak manzarası |
zidane.jpg | İnsanların olduğu spor manzarası |
OBB modelleri için bunun yerine teknelerin ve bir havalimanının havadan çekilmiş görüntüleri gösterilir.
Örnek görseller sayfa yüklendiğinde önceden yüklenir, bu nedenle bir örneğe tıklamak indirme beklemesi olmadan neredeyse anında çıkarımı tetikler.
Web kamerası#
Canlı kamera yayınını başlatmak için web kamerası kartına tıkla:
- İstendiğinde kamera izni ver
- Bir kare yakalamak için video önizlemesine tıkla
- Çıkarım, yakalanan kare üzerinde otomatik olarak çalışır
- Web kamerasını yeniden başlatmak için tekrar tıkla
Sonuçları Görüntüle#
Çıkarım sonuçları, model görevine uygun çıktıyı görüntüler: kutular, maskeler, anahtar noktalar, yönlendirilmiş kutular, sınıflandırma puanları, anlamsal kapsam veya derinlik haritası. Nesne sonuçları, mevcut olduğunda veri kümesi sınıf renklerini kullanır. Panel ayrıca ön işleme, çıkarım, son işleme ve ağ sürelerini gösterir.
Sonuçlar paneli şunu gösterir:
| 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 olan yerlerde derinlik aralığı veya maske boyutu |
| JSON yanıtı | Kod bloğu içinde ham API yanıtı, base64 harita verileri çıkarılmış durumda |
Sonuçlar geldiğinde önizlemenin üzerinde iki denetim yer alır: kaplamalar bozulmadan büyütmek için görüntüye tıkla ve mevcut sonucun açıklama eklenmiş bir JPEG sürümünü kaydetmek için indirme düğmesini kullan.
Çıkarım Parametreleri#
Görüntünün altındaki üç kaydırıcı ile çıkarım davranışını ayarla:

| Parametre | Aralık | Varsayılan | Açıklama |
|---|---|---|---|
| Güven (Confidence) | 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 boyutu |
Herhangi bir parametreyi değiştirmek, mevcut görsel üzerinde 500ms'lik bir gecikmeyle çıkarımı otomatik olarak yeniden çalıştırır. Yeniden yüklemene gerek yoktur.
Güven Eşiği#
Tahminleri güvene göre filtrele:
- Daha yüksek (0.5+): Daha az, daha kesin tahminler
- Daha düşük (0.1-0.25): Daha fazla tahmin, biraz gürültü
- Varsayılan (0.25): Çoğu kullanım durumu için dengeli
IoU Eşiği#
Maksimum Olmayan Bastırmayı (NMS) kontrol et:
- Daha yüksek (0.7+): Daha fazla örtüşen kutuya izin ver
- Alt (0.3-0.5): Çakışan tespitleri daha agresif bir şekilde bastır
- Varsayılan (0.7): Çoğu kullanım durumu için dengeli NMS davranışı
Dağıtım Tahmini#
Çalışan her adanmış uç nokta, doğrudan dağıtım kartı üzerinde bir Predict sekmesi içerir. Bu, paylaşılan tahmin hizmeti yerine dağıtımın kendi çıkarım hizmetini kullanır ve dağıtılmış uç noktanızı tarayıcıdan test etmenize olanak tanır.
Özel Uç Nokta API'si#
Model Predict sekmesindeki API Docs kartı; kaydırıcılarda şu anda ayarlanmış olan güven, IoU ve görüntü boyutuyla önceden doldurulmuş Python, JavaScript ve cURL istek örnekleri içerir. Sen modeli dağıtana kadar URL ve anahtar yer tutucudur; kod sekmelerinin yanındaki Deploy düğmesi modelin Deploy sekmesine atlar. Dağıtımdan sonra, dağıtım kartının Code sekmesi bu uç noktanın URL'sini ve çalışma alanı sahipleri için bağlı API anahtarını kopyalayıp çalıştırmaya hazır şekilde doldurur.
Kimlik Doğrulama#
İsteklerine 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 adresinden bir tane oluştur. Özel bir uç nokta yalnızca oluşturulduğu tek anahtarı kabul eder; paylaşılan model API'si çalışma alanındaki herhangi bir etkin anahtarı kabul eder ve genel modeller ayrıca anonim istekleri kabul eder.
Uç Nokta#
Özel uç noktalar kendi URL'lerinde istekleri kabul eder:
POST https://YOUR_DEPLOYMENT_URL.run.app/predictPaylaşılan çıkarım, modelin tam yoluyla Platform API'sini kullanır:
POST https://platform.ultralytics.com/api/models/{owner}/{project}/{model}/predictİkisi de aynı multipart/form-data gövdesini kabul eder ve aynı yanıt şeklini döndürür. Python SDK ile, paylaşılan çıkarım için client.models.predict(owner, project, model, body=...) veya adanmış bir dağıtım için client.deployments.predict(owner, deployment, body=...) kullan:
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 | Tip | Varsayılan | Aralık | Açıklama |
|---|---|---|---|---|
file | dosya | - | - | Resim veya video dosyası (source ayarlanmadığı sürece gereklidir) |
conf | kayan nokta | 0.25 | 0.01 – 1.0 | Minimum güven eşiği |
iou | kayan nokta | 0.7 | 0.0 – 0.95 | NMS IoU eşiği |
imgsz | tamsayı | 640 | 32 – 1280 | Piksel cinsinden giriş görüntüsü boyutu |
normalize | bool | false | - | Sınırlayıcı kutu koordinatlarını 0 – 1 olarak döndür |
decimals | tamsayı | 5 | 0 – 10 | Koordinat değerleri için ondalık hassasiyeti |
bits | tamsayı | 8 | 8, 12, 16 | Derinlik haritası nicelemesi, yalnızca derinlik modelleri |
source | dize | - | - | Resim URL'si veya base64 dizesi (file seçeneğinin alternatifi) |
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,
"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 | Tip | Açıklama |
|---|---|---|
images | dizi | İşlenen görüntülerin listesi, videolar için video karesi başına bir girdi |
images[].shape | dizi | Görüntü boyutları [yükseklik, genişlik] |
images[].results | dizi | Algılama listesi |
images[].results[].class | tamsayı | Sınıf dizini (tam sayı kimliği) |
images[].results[].name | dize | Sınıf adı |
images[].results[].confidence | kayan nokta | Algılama güven düzeyi (0-1) |
images[].results[].box | nesne | Sınırlayıcı kutu koordinatları |
images[].semantic_mask | nesne | Piksel başına sınıf haritası (yalnızca anlamsal modeller) |
images[].depth | nesne | Piksel başına derinlik haritası (yalnızca derinlik modelleri) |
images[].speed | nesne | Milisaniye cinsinden işlem süreleri |
metadata | nesne | Görüntü sayısı, servis zamanlamaları, görev ve Ultralytics/PyTorch sürümleri |
Göreve Özel 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 bir API anahtarı, oturum açmış arayan veya anonim IP için dakikada 20 istek ile sınırlıdır. İstekler sınırlandırıldığında, API bir Retry-After başlığıyla birlikte 429 döndürür. Tüm uç nokta kategorileri için rate-limit reference bölümüne bakın.
Doğrudan bir dedicated endpoint adresine gönderilen istekler Platform API oran sınırlayıcısından geçmez. Uç nokta geçici olarak kapasite sınırına ulaştığında 429 ve bir Retry-After başlığı ile yükü yine de azaltır. Yüksek hacimli yerel çıkarım için Predict mode guide kılavuzuna göz at.
Hata Yönetimi#
Yaygın hata yanıtları:
| Kod | İleti | Çö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 düşür |
| 429 | Hız sınırı aşıldı | Bekleyin ve yeniden deneyin ya da istekleri doğrudan bir adanmış uç noktaya gönderin |
| 500 | Sunucu hatası | İsteği yeniden dene |
| 503 | Hizmet kullanılamıyor | Predict hizmeti başlatılıyor veya ulaşılamıyor; kısa bir süre bekle ve tekrar dene |
SSS#
Her iki çıkarım yöntemi de video dosyalarını kabul eder:
- Adanmış uç noktalar video dosyalarını doğrudan kabul eder. Desteklenen formatlar (100 MB'a kadar): ASF, AVI, GIF, M4V, MKV, MOV, MP4, MPEG, MPG, TS, WEBM, WMV. Her kare ayrı ayrı işlenir ve sonuçlar kare başına döndürülür. Ayrıntılar için adanmış uç noktalara bakın.
- Shared inference (
POST /api/models/{owner}/{project}/{model}/predict) aynı tahmin servisini kullanır ve aynı video biçimlerini kabul eder. Tarayıcı Predict sekmesi yalnızca görüntü seçer, bu nedenle video için API'yi veya dedicated endpoint kullan.
Predict sekmesinde, önizlemenin üzerindeki indirme düğmesi mevcut 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
- Ultralytics
plot()yöntemini kullanın:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model("image.jpg") results[0].save("annotated.jpg")Tam sonuçlar API'si ve görselleştirme seçenekleri için Tahmin modu belgelerine bakın.
- Predict sekmesi sınırı: 10 MB
- API limit: Hem paylaşılan çıkarım hem de özel uç noktalar için 100 MB
- Predict sekmesinde otomatik yeniden boyutlandırma: Görüntüler, yüklemeden önce seçilen
Image Sizedeğerine yeniden boyutlandırılır
Büyük görüntüler, en boy oranı korunarak tarayıcgda otomatik olarak yeniden boyutlandırılır. Kendin gönderdiğin istekler yeniden boyutlandırılmaz, bu nedenle sınırın üzerindeki görüntüler
413ile reddedilir.Mevcut API, istek başına bir görüntü işler. Toplu işlem için:
- Her görüntü için ayrı istekler gönder
- Uygun olduğunda istekleri özel uç noktalar arasında dağıt
- Büyük yığınlar 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))