New Release: Ultralytics v8.4.93

:rocket: Ultralytics v8.4.93: Expanded MNN Export, More Reliable Workflows, and Cloud Storage Guides

Ultralytics v8.4.93 is now available! This release expands Alibaba MNN export capabilities with dynamic shapes and embedded NMS, strengthens training and inference reliability, improves segmentation utilities, and adds comprehensive Ultralytics Platform cloud-storage documentation.

Explore the v8.4.93 GitHub release for the packaged release details.

:glowing_star: New Features

Alibaba MNN export enhancements

Alibaba MNN exports now support:

  • dynamic=True for variable image dimensions.
  • nms=True for detect and pose models using static shapes.
  • Clear validation for unsupported dynamic-shape plus NMS combinations.
  • Safe handling of empty NMS outputs when export metadata confirms NMS is enabled.
  • Validated MNN 3.5.0 inference across YOLO11 detection, pose, and OBB workflows.

Implemented in PR #22348 by @Y-T-G.

Custom pose evaluation sigmas

Pose datasets can now define kpt_oks_sigmas in dataset YAML files. Values are validated against the configured keypoint count and must be positive.

Implemented in PR #24381 by @cosmo-gb.

Ultralytics Platform cloud-storage documentation

New guides explain how to connect Google Cloud Storage, Amazon S3, and Azure Blob Storage to the Ultralytics Platform. Images and YOLO labels can be indexed in place without copying source data.

The guides cover read-only credentials, dataset creation, revision pinning, retries, import limits, and current limitations. These integrations require a Pro or Enterprise plan.

:high_voltage: Improvements

Faster and more accurate segmentation utilities

  • segment2box is significantly faster while preserving its output in PR #25095 by @Y-T-G.
  • process_mask(upsample=True) now upsamples before cropping, preventing mask leakage outside bounding boxes, in PR #24463 by @wjddnwp29.
  • Segment-mask conversion now creates missing output directories and correctly handles Windows grayscale shapes in PR #25117 by @zhanghuiwan.

Stronger configuration and runtime behavior

  • Boolean-or-string CLI arguments such as compile are validated earlier in PR #25082 by @Joe-KI333.
  • Invalid integer values and compile types are rejected at the configuration layer in PR #25114 by @glenn-jocher.
  • TorchScript optimization now provides a helpful message when XNNPACK is unavailable in PR #25116 by @glenn-jocher.
  • CPU torch.compile gracefully falls back to eager execution when the first forward pass cannot compile in PR #25115 by @glenn-jocher.
  • Common environment-variable truthy values such as 1, yes, on, y, and t are now accepted in PR #24730 by @raimbekovm.
  • Training resume now preserves an explicit save_dir override in PR #23623 by @yegeniy.

:bug: Bug Fixes

Tracking, counting, and inference

Training, benchmarking, and export

  • Semantic segmentation loss remains finite when an entire batch contains ignore pixels in PR #25097 by @JESUSROYETH.
  • Legacy benchmark(half=True) and benchmark(int8=True) flags now correctly select quantized benchmarking instead of silently falling back to FP32 in PR #25106 by @JESUSROYETH.
  • CoreML export now pins numpy<=2.3.5 to prevent NumPy 2.4 compatibility crashes in PR #25100 by @fcakyon.
  • Axelera exports now reject image dimensions below the backend’s 64-pixel minimum in PR #25131 by @glenn-jocher.
  • Deprecated crop_fraction usage now emits a warning instead of stopping classification transforms in PR #24236 by @Dheeraj-Bhaskaruni.

:books: Documentation and Infrastructure

  • Segmentation dataset documentation was refreshed with corrected split counts, class information, download sizes, and clearer guidance in PR #25063 by @raimbekovm.
  • Dataset YAML guides now document .txt image lists for train, validation, and test splits in PR #24472 by @raimbekovm.
  • A new Apple Core AI guide describes the planned .aimodel workflow in PR #25129 by @glenn-jocher. Core AI export is not yet available; Core ML remains the supported Apple deployment path.
  • Rust inference examples now use ultralytics-inference 0.0.27 in PR #25130 by @onuralpszr.
  • Python Docker images now use Python 3.13 on Debian Trixie in PR #25127 by @glenn-jocher.
  • The Slack GitHub Action was updated from v3.0.3 to v3.0.5 in PR #25110 by @UltralyticsAssistant.

:raising_hands: Welcome, New Contributors!

A warm welcome and thank you to our first-time contributors:

Thank you to every contributor and the wider YOLO community for making this release possible! :blue_heart:

:package: Try v8.4.93

Upgrade your installation with:

pip install -U ultralytics

Review every commit in the full v8.4.92 to v8.4.93 changelog, then try the new export, training, tracking, and dataset workflows.

Please share your results, questions, and feedback with the community. Happy building! :rocket: