Explore Ultralytics YOLOv8

A computer vision model architecture for detection, classification, segmentation, and more.

What is YOLOv8?

YOLOv8 is a computer vision model architecture developed by Ultralytics, the creators of YOLOv5. You can deploy YOLOv8 models on a wide range of devices, including NVIDIA Jetson, NVIDIA GPUs, and macOS systems with Roboflow Inference, an open source Python package for running vision models.

What is YOLOv8?

YOLOv8 is a computer vision model architecture developed by Ultralytics, the creators of YOLOv5. You can deploy YOLOv8 models on a wide range of devices, including NVIDIA Jetson, NVIDIA GPUs, and macOS systems with Roboflow Inference, an open source Python package for running vision models.

Deploy a YOLOv8 Model

To deploy a YOLOv8 model, first install Inference with pip install inference. Then:
from inference import get_model
import supervision as sv
from inference.core.utils.image_utils import load_image_bgr
image = load_image_bgr("https://media.roboflow.com/inference/vehicles.png")
model = get_model(model_id="yolov8n-640")
results = model.infer(image)[0]
results = sv.Detections.from_inference(results)
annotator = sv.BoxAnnotator(thickness=4)
annotated_image = annotator.annotate(image, results)
annotator = sv.LabelAnnotator(text_scale=2, text_thickness=2)
annotated_image = annotator.annotate(annotated_image, results)
sv.plot_image(annotated_image)
from inference import InferencePipeline
from inference.core.interfaces.stream.sinks import render_boxes
pipeline = InferencePipeline.init(
model_id="yolov8n-640",
video_reference=0,
on_prediction=render_boxes
)
pipeline.start()
pipeline.join()

Find YOLOv8 Datasets

Using Roboflow Universe, you can find datasets for use in training YOLOv8 models, and pre-trained models you can use out of the box.

Search Roboflow Universe

Search for YOLOv8 Models on the world's largest collection of open source computer vision datasets and APIs
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Train a YOLOv8 Model

You can train a YOLOv8 model using the Ultralytics command line interface.

To train a model, install Ultralytics:

pip install ultralytics

Then, use the following command to train your model:

yolo task=detect
mode=train
model=yolov8s.pt
data=dataset/data.yaml
epochs=100
imgsz=640

Replace data with the name of your YOLOv8-formatted dataset. Learn more about the YOLOv8 format.

You can then test your model on images in your test dataset with the following command:

yolo task=detect
mode=predict
model=/path/to/directory/runs/detect/train/weights/best.pt
conf=0.25
source=dataset/test/images

Once you have a model, you can deploy it with Roboflow.

Deploy Your YOLOv8 Model

YOLOv8 Model Sizes

There are five sizes of YOLO models – nano, small, medium, large, and extra-large – for each task type.

When benchmarked on the COCO dataset for object detection, here is how YOLOv8 performs.
Model
Size (px)
mAPval
YOLOv8n
640
37.3
YOLOv8s
640
44.9
YOLOv8m
640
50.2
YOLOv8l
640
52.9
YOLOv8x
640
53.9

Frequently Asked Questions

What are the main features in YOLO11?

YOLOv12 uses an attention-based implementation of YOLO that "matches the speed" compared to previous CNN-based YOLO implementations. The YOLOv12 model architecture is able to achieve behighertter accuracy when validated against the Microsoft COCO benchmark.

What is the license for YOLOv12?
Who created YOLOv12?
© 2025 Roboflow, Inc. All rights reserved.
Made with 💜 by Roboflow.