Chuyển đến nội dung

Suy luận

Ultralytics Platform cung cấp một Inference API để kiểm tra các mô hình đã được huấn luyện. Sử dụng tab Test dựa trên trình duyệt để xác thực nhanh hoặc REST API để truy cập có lập trình.

Tab kiểm tra

Mỗi mô hình đều bao gồm một tab Test để suy luận dựa trên trình duyệt:

  1. Điều hướng đến mô hình của bạn
  2. Nhấp vào tab Test
  3. Tải ảnh lên hoặc sử dụng ảnh ví dụ
  4. Xem kết quả dự đoán ngay lập tức

Tải lên hình ảnh

Kéo và thả hoặc nhấp để tải lên:

  • Định dạng được hỗ trợ: JPG, PNG, WebP, GIF
  • Kích thước tối đa: 10MB
  • Suy luận tự động: Kết quả hiển thị tự động

Hình ảnh ví dụ

Sử dụng ảnh ví dụ có sẵn để kiểm tra nhanh:

ẢnhNội dung
bus.jpgCảnh đường phố với phương tiện
zidane.jpgCảnh thể thao với người

Xem kết quả

Hiển thị kết quả suy luận:

  • Hộp giới hạn với nhãn lớp
  • Điểm tin cậy cho mỗi lần detect
  • Màu lớp khớp với tập dữ liệu của bạn

Tham số suy luận

Điều chỉnh hành vi detect bằng các tham số:

Tham sốPhạm viMặc địnhMô tả
Ngưỡng tin cậy0.0-1.00.25Ngưỡng tin cậy tối thiểu
IoU0.0-1.00.70Ngưỡng IoU NMS
Kích thước hình ảnh32-1280640Kích thước thay đổi của đầu vào

Ngưỡng tin cậy

Lọc dự đoán theo độ tin cậy:

  • Cao hơn (0.5+): Ít dự đoán hơn, độ chính xác cao hơn
  • Thấp hơn (0.1-0.25): Nhiều dự đoán hơn, có thể có nhiễu
  • Mặc định (0.25): Cân bằng cho hầu hết các trường hợp sử dụng

Ngưỡng IoU

Điều khiển Non-Maximum Suppression:

  • Cao hơn (0,7 trở lên) : Cho phép nhiều hộp chồng lên nhau hơn
  • Thấp hơn (0,3-0,5) : Kết hợp các phát hiện gần đó một cách mạnh mẽ hơn
  • Mặc định (0.70) : Cân bằng NMS hành vi đối với hầu hết các trường hợp sử dụng

REST API

Truy cập suy luận theo chương trình:

Xác thực

Bao gồm khóa API của bạn trong các yêu cầu:

Authorization: Bearer YOUR_API_KEY

Điểm cuối

POST https://platform.ultralytics.com/api/models/{model_slug}/predict

Yêu cầu

curl -X POST \
  "https://platform.ultralytics.com/api/models/username/project/model/predict" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@image.jpg" \
  -F "conf=0.25" \
  -F "iou=0.7"
import requests

url = "https://platform.ultralytics.com/api/models/username/project/model/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("image.jpg", "rb")}
data = {"conf": 0.25, "iou": 0.7}

response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())

Phản hồi

{
    "success": true,
    "predictions": [
        {
            "class": "person",
            "confidence": 0.92,
            "box": {
                "x1": 100,
                "y1": 50,
                "x2": 300,
                "y2": 400
            }
        },
        {
            "class": "car",
            "confidence": 0.87,
            "box": {
                "x1": 400,
                "y1": 200,
                "x2": 600,
                "y2": 350
            }
        }
    ],
    "image": {
        "width": 1920,
        "height": 1080
    }
}

Các trường phản hồi

TrườngLoạiMô tả
successbooleanTrạng thái yêu cầu
predictionsmảngDanh sách các detect
predictions[].classchuỗiTên lớp
predictions[].confidencesố thựcĐộ tin cậy của detect (0-1)
predictions[].boxđối tượngTọa độ hộp giới hạn
imageđối tượngKích thước ảnh gốc

Phản hồi theo tác vụ cụ thể

Định dạng phản hồi thay đổi theo tác vụ:

{
  "class": "person",
  "confidence": 0.92,
  "box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400}
}
{
  "class": "person",
  "confidence": 0.92,
  "box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
  "segments": [[100, 50], [150, 60], ...]
}
{
  "class": "person",
  "confidence": 0.92,
  "box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
  "keypoints": [
    {"x": 200, "y": 75, "conf": 0.95},
    ...
  ]
}
{
  "predictions": [
    {"class": "cat", "confidence": 0.95},
    {"class": "dog", "confidence": 0.03}
  ]
}

Giới hạn tốc độ

Suy luận chia sẻ có giới hạn tốc độ:

GóiYêu cầu/PhútYêu cầu/Ngày
Miễn phí10100
Pro6010,000

Để có giới hạn cao hơn, hãy triển khai một điểm cuối chuyên dụng.

Xử lý lỗi

Các phản hồi lỗi thường gặp:

Thông báoGiải pháp
400Ảnh không hợp lệKiểm tra định dạng tệp
401Không được ủy quyềnXác minh khóa API
404Không tìm thấy mô hìnhKiểm tra slug mô hình
429Bị giới hạn tốc độChờ hoặc nâng cấp gói
500Lỗi máy chủThử lại yêu cầu

Câu hỏi thường gặp

Tôi có thể chạy suy luận trên video không?

API chấp nhận các khung hình riêng lẻ. Đối với video:

  1. Trích xuất khung hình cục bộ
  2. Gửi từng khung hình đến API
  3. Tổng hợp kết quả

Đối với video thời gian thực, hãy cân nhắc triển khai một điểm cuối chuyên dụng.

Làm cách nào để lấy hình ảnh đã được chú thích?

API trả về các dự đoán JSON. Để trực quan hóa:

  1. Sử dụng các dự đoán để vẽ hộp cục bộ
  2. Sử dụng Ultralytics plot() phương thức:
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model("image.jpg")
results[0].save("annotated.jpg")

Kích thước hình ảnh tối đa là bao nhiêu?

  • Giới hạn tải lên: 10MB
  • Recommended: <5MB for fast inference
  • Tự động thay đổi kích thước: Hình ảnh được thay đổi kích thước thành imgsz tham số

Các hình ảnh lớn được tự động thay đổi kích thước trong khi vẫn giữ nguyên tỷ lệ khung hình.

Tôi có thể chạy suy luận theo lô không?

API hiện tại xử lý một hình ảnh cho mỗi yêu cầu. Đối với xử lý theo lô (batch):

  1. Gửi các yêu cầu đồng thời
  2. Sử dụng điểm cuối chuyên dụng để đạt thông lượng cao hơn
  3. Cân nhắc suy luận cục bộ cho các lô lớn


📅 Được tạo 20 ngày trước ✏️ Cập nhật 14 ngày trước
glenn-jocherLaughing-q

Bình luận