For the complete documentation index, see llms.txt. This page is also available as Markdown.

YOLOv10

Use the YOLOv10 object detection model through our Serverless Cloud API

YOLOv10 is an object detection model that removes non-maximum suppression from the inference path, lowering latency. Roboflow serves COCO-pretrained YOLOv10 checkpoints under short aliases, and you can upload your own weights to run a model you trained elsewhere.

Training YOLOv10 is not supported on Roboflow. For a Roboflow-trained detector, see RF-DETR, YOLO26, or YOLO11.

Pretrained aliases

Pass one of these IDs as model_id to run a COCO-pretrained checkpoint without training anything. The full list lives on the Pretrained Model Aliases page.

Model
Input size
Task
Model ID
Test

YOLOv10n

640

Object Detection

yolov10n-640

YOLOv10s

640

Object Detection

yolov10s-640

YOLOv10m

640

Object Detection

yolov10m-640

YOLOv10b

640

Object Detection

yolov10b-640

YOLOv10l

640

Object Detection

yolov10l-640

YOLOv10x

640

Object Detection

yolov10x-640

Code sample

1

Get your API Key

Create a Roboflow account, find your key on the Roboflow API settings page and make it available to your shell:

export ROBOFLOW_API_KEY="your-key-here"
2

Install the dependencies

Install the Inference SDK and supervision for decoding and drawing predictions:

pip install -U inference-sdk supervision opencv-python
3

Run the model

This example runs the pretrained yolov10n-640 checkpoint. To serve your own weights, swap in your {workspace}/{model-slug} ID (see Versions, Trainings, and Models).

import os
import cv2
import supervision as sv
from inference_sdk import InferenceHTTPClient

image = sv.load_image_from_url("https://media.roboflow.com/inference/people-walking.jpg")

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",
    api_key=os.environ["ROBOFLOW_API_KEY"],
)
results = client.infer(image, model_id="yolov10n-640")

detections = sv.Detections.from_inference(results)

labels = [
    f"{name} {conf:.2f}"
    for name, conf in zip(detections.data["class_name"], detections.confidence)
]
annotated = sv.BoxAnnotator().annotate(image.copy(), detections)
annotated = sv.LabelAnnotator().annotate(annotated, detections, labels=labels)
cv2.imwrite("annotated.png", annotated)

Set api_url to match your deployment target:

  • https://serverless.roboflow.com for the Serverless Cloud API.

  • http://localhost:9001 for a local Inference server.

  • Your Dedicated Deployment URL for a private endpoint.

You can also load the checkpoint in-process with the inference package:

Last updated

Was this helpful?