Bỏ để qua phần nội dung

Ultralytics API suy luận HUB

Sau khi đào tạo mô hình, bạn có thể sử dụng API Suy luận chia sẻ miễn phí. Nếu bạn là người dùng Pro , bạn có thể truy cập API suy luận chuyên dụng. Các Ultralytics HUB Inference API cho phép bạn chạy suy luận thông qua REST API của chúng tôi mà không cần cài đặt và thiết lập Ultralytics YOLO môi trường tại địa phương.

Ultralytics Ảnh chụp màn hình HUB của tab Triển khai bên trong trang Mô hình với mũi tên trỏ đến thẻ API Suy luận chuyên dụng và một mũi tên đến thẻ API Suy luận được chia sẻ


Xem: Ultralytics Hướng dẫn về API suy luận HUB

API suy luận chuyên dụng

Để đáp ứng nhu cầu cao và sự quan tâm rộng rãi, chúng tôi rất vui mừng được tiết lộ Ultralytics API suy luận chuyên dụng HUB, cung cấp triển khai bằng một cú nhấp chuột trong môi trường chuyên dụng cho người dùng Pro của chúng tôi!

Ghi

Chúng tôi rất vui mừng được cung cấp tính năng này MIỄN PHÍ trong giai đoạn beta công khai của chúng tôi như một phần của Gói Pro, với các cấp trả phí có thể có trong tương lai.

  • Phạm vi bảo hiểm toàn cầu: Được triển khai trên 38 khu vực trên toàn thế giới, đảm bảo truy cập có độ trễ thấp từ mọi vị trí. Xem danh sách đầy đủ Google Vùng mây.
  • Google Cloud Run-Backed: Được hỗ trợ bởi Google Cloud Run, cung cấp cơ sở hạ tầng có khả năng mở rộng vô hạn và độ tin cậy cao.
  • Tốc độ cao: Có thể có độ trễ dưới 100ms đối với YOLOv8n suy luận ở độ phân giải 640 từ các khu vực lân cận dựa trên Ultralytics Thử nghiệm.
  • Tăng cường bảo mật: Cung cấp các tính năng bảo mật mạnh mẽ để bảo vệ dữ liệu của bạn và đảm bảo tuân thủ các tiêu chuẩn ngành. Tìm hiểu thêm về Google Bảo mật đám mây.

Để sử dụng Ultralytics HUB Dedicated Inference API, nhấp vào nút Start Endpoint . Tiếp theo, sử dụng URL điểm cuối duy nhất như được mô tả trong hướng dẫn bên dưới.

Ultralytics Ảnh chụp màn hình HUB của tab Triển khai bên trong trang Mô hình với mũi tên trỏ đến nút Điểm cuối Bắt đầu trong thẻ API Suy luận Chuyên dụng

Mẹo

Chọn khu vực có độ trễ thấp nhất để có hiệu suất tốt nhất như được mô tả trong tài liệu.

Để tắt điểm cuối chuyên dụng, hãy nhấp vào nút Dừng Điểm cuối .

Ultralytics Ảnh chụp màn hình HUB của tab Triển khai bên trong trang Mô hình với mũi tên trỏ đến nút Điểm cuối dừng trong thẻ API suy luận chuyên dụng

API suy luận được chia sẻ

Để sử dụng Ultralytics API suy luận chia sẻ HUB, hãy làm theo hướng dẫn bên dưới.

Người dùng miễn phí có các giới hạn sử dụng sau:

  • 100 cuộc gọi / giờ
  • 1000 cuộc gọi / tháng

Người dùng Pro có các giới hạn sử dụng sau:

  • 1000 cuộc gọi / giờ
  • 10000 cuộc gọi / tháng

Python

Để truy cập Ultralytics API suy luận HUB sử dụng Python, sử dụng mã sau:

import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())

Ghi

Thay thế MODEL_ID với ID mô hình mong muốn, API_KEY với khóa API thực của bạn, và path/to/image.jpg với đường dẫn đến hình ảnh bạn muốn chạy suy luận.

Nếu bạn đang sử dụng API suy luận chuyên dụng, thay thế url cũng.

uốn

Để truy cập Ultralytics API suy luận HUB sử dụng cURL, sử dụng mã sau:

curl -X POST "https://predict.ultralytics.com" \
  -H "x-api-key: API_KEY" \
  -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"

Ghi

Thay thế MODEL_ID với ID mô hình mong muốn, API_KEY với khóa API thực của bạn, và path/to/image.jpg với đường dẫn đến hình ảnh bạn muốn chạy suy luận.

Nếu bạn đang sử dụng API suy luận chuyên dụng, thay thế url cũng.

Lập luận

Xem bảng dưới đây để biết danh sách đầy đủ các đối số suy luận có sẵn.

Lý lẽMặc địnhKiểuSự miêu tả
filefileTệp hình ảnh hoặc video được sử dụng để suy luận.
imgsz640intKích thước của hình ảnh đầu vào, phạm vi hợp lệ là 32 - 1280 Pixel.
conf0.25floatNgưỡng tin cậy cho dự đoán, phạm vi hợp lệ 0.01 - 1.0.
iou0.45floatGiao lộ qua Union (IoU) ngưỡng, phạm vi hợp lệ 0.0 - 0.95.

Phản ứng

Các Ultralytics API suy luận HUB trả về phản hồi JSON.

Phân loại

Mô hình phân loại

from ultralytics import YOLO

# Load model
model = YOLO("yolov8n-cls.pt")

# Run inference
results = model("image.jpg")

# Print image.jpg results in JSON format
print(results[0].to_json())
curl -X POST "https://predict.ultralytics.com" \
    -H "x-api-key: API_KEY" \
    -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"
import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())
{
  "images": [
    {
      "results": [
        {
          "class": 0,
          "name": "person",
          "confidence": 0.92
        }
      ],
      "shape": [
        750,
        600
      ],
      "speed": {
        "inference": 200.8,
        "postprocess": 0.8,
        "preprocess": 2.8
      }
    }
  ],
  "metadata": ...
}

Detection

Mô hình phát hiện

from ultralytics import YOLO

# Load model
model = YOLO("yolov8n.pt")

# Run inference
results = model("image.jpg")

# Print image.jpg results in JSON format
print(results[0].to_json())
curl -X POST "https://predict.ultralytics.com" \
    -H "x-api-key: API_KEY" \
    -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"
import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())
{
  "images": [
    {
      "results": [
        {
          "class": 0,
          "name": "person",
          "confidence": 0.92,
          "box": {
            "x1": 118,
            "x2": 416,
            "y1": 112,
            "y2": 660
          }
        }
      ],
      "shape": [
        750,
        600
      ],
      "speed": {
        "inference": 200.8,
        "postprocess": 0.8,
        "preprocess": 2.8
      }
    }
  ],
  "metadata": ...
}

OBB

Mô hình OBB

from ultralytics import YOLO

# Load model
model = YOLO("yolov8n-obb.pt")

# Run inference
results = model("image.jpg")

# Print image.jpg results in JSON format
print(results[0].tojson())
curl -X POST "https://predict.ultralytics.com" \
    -H "x-api-key: API_KEY" \
    -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"
import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())
{
  "images": [
    {
      "results": [
        {
          "class": 0,
          "name": "person",
          "confidence": 0.92,
          "box": {
            "x1": 374.85565,
            "x2": 392.31824,
            "x3": 412.81805,
            "x4": 395.35547,
            "y1": 264.40704,
            "y2": 267.45728,
            "y3": 150.0966,
            "y4": 147.04634
          }
        }
      ],
      "shape": [
        750,
        600
      ],
      "speed": {
        "inference": 200.8,
        "postprocess": 0.8,
        "preprocess": 2.8
      }
    }
  ],
  "metadata": ...
}

Phân đoạn

Mô hình phân khúc

from ultralytics import YOLO

# Load model
model = YOLO("yolov8n-seg.pt")

# Run inference
results = model("image.jpg")

# Print image.jpg results in JSON format
print(results[0].tojson())
curl -X POST "https://predict.ultralytics.com" \
    -H "x-api-key: API_KEY" \
    -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"
import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())
{
  "images": [
    {
      "results": [
        {
          "class": 0,
          "name": "person",
          "confidence": 0.92,
          "box": {
            "x1": 118,
            "x2": 416,
            "y1": 112,
            "y2": 660
          },
          "segments": {
            "x": [
              266.015625,
              266.015625,
              258.984375,
              ...
            ],
            "y": [
              110.15625,
              113.67188262939453,
              120.70311737060547,
              ...
            ]
          }
        }
      ],
      "shape": [
        750,
        600
      ],
      "speed": {
        "inference": 200.8,
        "postprocess": 0.8,
        "preprocess": 2.8
      }
    }
  ],
  "metadata": ...
}

Tư thế

Mô hình tạo dáng

from ultralytics import YOLO

# Load model
model = YOLO("yolov8n-pose.pt")

# Run inference
results = model("image.jpg")

# Print image.jpg results in JSON format
print(results[0].tojson())
curl -X POST "https://predict.ultralytics.com" \
    -H "x-api-key: API_KEY" \
    -F "model=https://hub.ultralytics.com/models/MODEL_ID" \
    -F "file=@/path/to/image.jpg" \
    -F "imgsz=640" \
    -F "conf=0.25" \
    -F "iou=0.45"
import requests

# API URL
url = "https://predict.ultralytics.com"

# Headers, use actual API_KEY
headers = {"x-api-key": "API_KEY"}

# Inference arguments (use actual MODEL_ID)
data = {"model": "https://hub.ultralytics.com/models/MODEL_ID", "imgsz": 640, "conf": 0.25, "iou": 0.45}

# Load image and send request
with open("path/to/image.jpg", "rb") as image_file:
    files = {"file": image_file}
    response = requests.post(url, headers=headers, files=files, data=data)

print(response.json())
{
  "images": [
    {
      "results": [
        {
          "class": 0,
          "name": "person",
          "confidence": 0.92,
          "box": {
            "x1": 118,
            "x2": 416,
            "y1": 112,
            "y2": 660
          },
          "keypoints": {
            "visible": [
              0.9909399747848511,
              0.8162999749183655,
              0.9872099757194519,
              ...
            ],
            "x": [
              316.3871765136719,
              315.9374694824219,
              304.878173828125,
              ...
            ],
            "y": [
              156.4207763671875,
              148.05775451660156,
              144.93240356445312,
              ...
            ]
          }
        }
      ],
      "shape": [
        750,
        600
      ],
      "speed": {
        "inference": 200.8,
        "postprocess": 0.8,
        "preprocess": 2.8
      }
    }
  ],
  "metadata": ...
}
📅 Được tạo cách đây 10 tháng ✏️ Đã cập nhật cách đây 1 tháng

Ý kiến