ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ содСрТимому

Ultralytics HUB Inference API

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Ρ‚Ρ‹ ΠΎΠ±ΡƒΡ‡ΠΈΡˆΡŒ модСль, Ρ‚Ρ‹ смоТСшь бСсплатно ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Shared Inference API. Если Ρ‚Ρ‹ являСшься Pro-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, Ρ‚ΠΎ моТСшь ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Dedicated Inference API. Ultralytics HUB Inference API позволяСт Ρ‚Π΅Π±Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· наш REST API Π±Π΅Π· нСобходимости ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ локально срСду Ultralytics YOLO .

Ultralytics Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ HUB Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Deploy Π½Π° страницС Model со стрСлкой, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ Dedicated Inference API, ΠΈ стрСлкой, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½Π° ΠΊΠ°Ρ€Ρ‚Ρƒ Shared Inference API.


Π‘ΠΌΠΎΡ‚Ρ€ΠΈ: Ultralytics ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС HUB Inference API Walkthrough

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌΠΈ

Π’ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° высокий спрос ΠΈ всСобщий интСрСс ΠΌΡ‹ с Ρ€Π°Π΄ΠΎΡΡ‚ΡŒΡŽ прСдставляСм Ultralytics HUB Dedicated Inference API, прСдлагая Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΠΈΠΊ Π² Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ срСдС для Π½Π°ΡˆΠΈΡ… Pro-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ!

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

ΠœΡ‹ Ρ€Π°Π΄Ρ‹ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘Π•Π‘ΠŸΠ›ΠΠ’ΠΠž Π²ΠΎ врСмя ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Π±Π΅Ρ‚Π°-тСстирования Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Pro Plan, Π° Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ появлСниС ΠΏΠ»Π°Ρ‚Π½Ρ‹Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ.

  • Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅: Π Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ Π² 38 Ρ€Π΅Π³ΠΈΠΎΠ½Π°Ρ… ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ, обСспСчивая доступ с Π½ΠΈΠ·ΠΊΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΈΠ· любого мСста. Π‘ΠΌΠΎΡ‚Ρ€ΠΈ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список Ρ€Π΅Π³ΠΈΠΎΠ½ΠΎΠ² Google Cloud.
  • Google Cloud Run-Backed: ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ Google Cloud Run, обСспСчивая бСсконСчно ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠ½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ инфраструктуру.
  • Высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ: Π‘ΡƒΠ±-100 мс Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ для YOLOv8n Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Π² Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ 640 ΠΈΠ· Π±Π»ΠΈΠ·Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Ρ€Π΅Π³ΠΈΠΎΠ½ΠΎΠ² Π½Π° основС тСстирования Ultralytics .
  • УсилСнная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ: ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅ срСдства бСзопасности, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ Ρ‚Π²ΠΎΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ соотвСтствиС отраслСвым стандартам. Π£Π·Π½Π°ΠΉ большС ΠΎ бСзопасности Google Cloud.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ultralytics HUB Dedicated Inference API, Π½Π°ΠΆΠΌΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Start Endpoint. Π”Π°Π»Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ URL ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΊΠ°ΠΊ описано Π² руководствах Π½ΠΈΠΆΠ΅.

Ultralytics Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ HUB Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Deploy Π²Π½ΡƒΡ‚Ρ€ΠΈ страницы Model со стрСлкой, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Start Endpoint Π² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠ΅ Dedicated Inference API.

НаконСчник

Π’Ρ‹Π±ΠΈΡ€Π°ΠΉ Ρ€Π΅Π³ΠΈΠΎΠ½ с наимСньшСй Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ для Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊΠ°ΠΊ описано Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, Π½Π°ΠΆΠΌΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Stop Endpoint.

Ultralytics Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ HUB Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Deploy Π²Π½ΡƒΡ‚Ρ€ΠΈ страницы Model со стрСлкой, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Stop Endpoint Π² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠ΅ Dedicated Inference API.

API совмСстного Π²Ρ‹Π²ΠΎΠ΄Π°

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ultralytics HUB Shared Inference API, слСдуй ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅ руководствам.

БСсплатныС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния ΠΏΠΎ использованию:

  • 100 Π·Π²ΠΎΠ½ΠΊΠΎΠ² / час
  • 1000 Π·Π²ΠΎΠ½ΠΊΠΎΠ² / мСсяц

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Pro ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ограничСния ΠΏΠΎ использованию:

  • 1000 Π·Π²ΠΎΠ½ΠΊΠΎΠ² / час
  • 10000 Π·Π²ΠΎΠ½ΠΊΠΎΠ² / мСсяц

Python

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Ultralytics HUB Inference API с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

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())

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π—Π°ΠΌΠ΅Π½ΠΈ MODEL_ID с Π½ΡƒΠΆΠ½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ, API_KEY с Ρ‚Π²ΠΎΠΈΠΌ настоящим ΠΊΠ»ΡŽΡ‡ΠΎΠΌ API, ΠΈ path/to/image.jpg ΡƒΠΊΠ°ΠΆΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ inference.

Если Ρ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ наш Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌΠΈ, Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ url Ρ‚Π°ΠΊΠΆΠ΅.

cURL

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Ultralytics HUB Inference API с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ cURL, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

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"

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π—Π°ΠΌΠ΅Π½ΠΈ MODEL_ID с Π½ΡƒΠΆΠ½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ, API_KEY с Ρ‚Π²ΠΎΠΈΠΌ настоящим ΠΊΠ»ΡŽΡ‡ΠΎΠΌ API, ΠΈ path/to/image.jpg ΡƒΠΊΠ°ΠΆΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ inference.

Если Ρ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒ наш Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌΠΈ, Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ url Ρ‚Π°ΠΊΠΆΠ΅.

АргумСнты

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список доступных Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для Π²Ρ‹Π²ΠΎΠ΄Π° смотри Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅.

АргумСнт По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π’ΠΈΠΏ ОписаниС
file file Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎΡ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ².
imgsz 640 int Π Π°Π·ΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ изобраТСния, допустимый Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ 32 - 1280 ПиксСлСй.
conf 0.25 float Π”ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€ΠΎΠ³ для ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΎΠ², допустимый Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ 0.01 - 1.0.
iou 0.45 float ΠŸΠ΅Ρ€Π΅ΡΠ΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π°Π΄ Боюзом (IoU) threshold, valid range 0.0 - 0.95.

ΠžΡ‚Π²Π΅Ρ‚

Ultralytics HUB Inference API Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON.

ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ

ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ модСль

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": ...
}

ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅

МодСль обнаруТСния

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

МодСль 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": ...
}

БСгмСнтация

МодСль сСгмСнтации

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": ...
}

Поза

Поза модСли

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": ...
}

πŸ“… Π‘ΠΎΠ·Π΄Π°Π½ΠΎ 8 мСсяцСв Π½Π°Π·Π°Π΄ ✏️ ОбновлСно 13 Π΄Π½Π΅ΠΉ Π½Π°Π·Π°Π΄

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ