New Release: Ultralytics v8.4.130

:rocket: Ultralytics v8.4.130: Flexible Dataset Subsets, Reliable Tuning, and Better Tracking Docs

:glowing_star: Quick Overview

Ultralytics v8.4.130 introduces count-based dataset limits, more efficient NDJSON and Platform dataset downloads, improved hyperparameter tuning, clearer fitness plots, expanded tracking guidance, and more complete dataset license metadata.

This release focuses on making experimentation faster, more reproducible, and easier to scale—without major model architecture changes. Explore the complete details on the v8.4.130 release page and read on for the highlights. :tada:

:bullseye: New Features

Select an Exact Number of Dataset Images

The fraction argument now accepts positive image counts:

model.train(data="dataset.yaml", fraction=1000)

This trains with exactly 1,000 images. Training and validation splits can also be limited independently:

model.train(data="dataset.yaml", fraction=[1000, 100])

Existing ratio-based behavior remains unchanged:

  • fraction=0.1 uses 10% of the dataset.
  • Integer fraction=1 uses one image.
  • Float fraction=1.0 uses the complete split.

Count-based limits support YOLO, RTDETR, classification, validation, and INT8 calibration workflows. This capability was introduced in PR #25951 by @fcakyon, enabling faster fixed-size experiments and calibration runs.

Faster NDJSON and Platform Dataset Downloads :high_voltage:

Count-based subsets are now selected before images are downloaded from NDJSON and Platform datasets. This means you no longer need to download an entire dataset when only a fixed number of images is required.

NDJSON records are also selected deterministically, helping repeated runs use the same images for better reproducibility.

:brain: Tuning Improvements

AdamW Is Now the Default for Model.tune()

Model.tune() now defaults to AdamW unless another optimizer is explicitly selected. This ensures tuned parameters such as learning rate and momentum affect training rather than being ignored by automatic optimizer selection.

The correction was implemented in PR #25945 by @glenn-jocher, improving the reliability of default tuning search spaces.

Safer Concurrent MongoDB Tuning

MongoDB-backed tuning now uses atomic coordination when claiming the default configuration. This prevents multiple workers from incorrectly running duplicate baseline trials.

The concurrency fix is available in PR #25939 from @glenn-jocher, making distributed tuning workflows safer.

Clearer Fitness Visualization :chart_increasing:

The updated tune_fitness.png visualization now presents:

  • Overall fitness progression
  • The best result achieved so far
  • Initial-versus-best fitness for each dataset
  • A clearer layout for multi-dataset tuning runs

These plotting improvements were added in PR #25946 by @glenn-jocher, making tuning results easier to interpret.

:movie_camera: Expanded Tracking Guidance

Tracking documentation now covers six built-in trackers:

  • TrackTrack
  • BoT-SORT
  • ByteTrack
  • OC-SORT
  • Deep OC-SORT
  • FastTracker

TrackTrack is documented as the default tracker, with optional ReID and camera-motion compensation. The updated guidance also explains:

  • Confidence thresholds and low-confidence recovery
  • Custom ReID models
  • Speed, occlusion, and camera-motion trade-offs
  • Task-specific behavior for segmentation, pose, and OBB models
  • Why users train a detection, segmentation, pose, or OBB model first, then apply tracking during inference

These clarifications are included in PR #25950 by @glenn-jocher.

:books: Dataset and Export Documentation

License metadata was added or corrected for:

  • MNIST
  • Global Wheat2020
  • PASCAL VOC
  • KITTI
  • Official depth datasets

Depth8 and SUN RGB-D are now explicitly marked as having no specified source license where applicable.

Depth dataset metadata was expanded in PR #25948 by @glenn-jocher, while Depth8 licensing corrections were completed in PR #25950, also by @glenn-jocher.

Export documentation for ONNX, TensorRT, OpenVINO, LiteRT, Hailo, QNN, Rockchip, and other formats now reflects the expanded fraction behavior, making fixed-size INT8 calibration subsets easier to configure.

:white_check_mark: Why Upgrade?

Ultralytics v8.4.130 provides:

  • Faster experimentation with exact image-count subsets
  • Lower bandwidth and storage use for NDJSON and Platform datasets
  • More reproducible runs through deterministic subset selection
  • More reliable tuning with AdamW defaults and safer MongoDB coordination
  • Faster INT8 calibration using fixed-size image subsets
  • Clearer tracking decisions through expanded tracker documentation
  • Improved dataset transparency with corrected license metadata

Upgrade with:

pip install -U ultralytics

Review every change in the v8.4.129 to v8.4.130 full changelog, then try the new count-based fraction workflows and tuning improvements.

We’d love to hear how v8.4.130 performs in your training, calibration, export, and tracking pipelines—please share your results and feedback with the Ultralytics YOLO community! :raising_hands: