New Release: Ultralytics v8.4.53

Ultralytics v8.4.53 is out :rocket:

A new Ultralytics release is available: v8.4.53. This update focuses on training reliability on NVIDIA GPUs, semantic segmentation stability, clearer docs, and more robust CI. It’s a practical quality-of-life release that should make training and evaluation smoother, especially for users pushing hardware limits or working with semantic segmentation :raising_hands:

If you’re building with Ultralytics YOLO, this is a solid update to pick up.

Highlights

:brain: Smarter GPU memory recovery during training

The biggest improvement in v8.4.53 comes from PR #24569 by @glenn-jocher.

Training now recovers from more CUDA memory-related backend failures, not just standard out-of-memory errors. In addition to classic CUDA OOM cases, Ultralytics can now retry on errors such as:

  • CUDNN_STATUS_INTERNAL_ERROR
  • unable to find an engine to execute this computation

When this happens during the first epoch on a single GPU, training can automatically lower the batch size and continue instead of crashing. This should make large-batch experiments much more forgiving :high_voltage:

:framed_picture: More reliable semantic segmentation validation

Semantic segmentation workflows got an important stability pass in PR #24552 by @Laughing-q.

This update:

  • prevents validation stats from being cleared too early
  • improves mIoU handling when some classes are missing
  • avoids NaN-style metric issues in sparse-class scenarios

:chart_increasing: More stable Dice loss

PR #24554 by @Laughing-q improves numerical stability in segmentation training by forcing key Dice loss calculations to use float32.

This is especially helpful for mixed-precision and lower-precision setups, where small numerical issues can otherwise become frustrating.

:books: Better prediction output docs

Documentation saw a strong improvement in PR #24558 by @glenn-jocher, with clearer explanations of the Results object across tasks.

Notably, the docs now better explain:

  • semantic_mask outputs
  • output shapes and dtypes
  • masks, polygons, and boxes
  • differences between instance segmentation and semantic segmentation

This should make it much easier to build downstream pipelines and interpret model outputs correctly.

:globe_showing_europe_africa: Better visibility for YOLO26, Platform, and task support

PR #24547 by @glenn-jocher updates package metadata to better reflect current Ultralytics capabilities, including YOLO26, Ultralytics Platform, and oriented object detection support.

This release also helps surface semantic segmentation more consistently as a first-class supported task across docs and metadata.

Improvements

:test_tube: More stable CI and test workflows

A few changes help reduce unnecessary CI failures and improve test practicality:

:sparkles: Documentation and packaging polish

Several smaller updates landed as well:

Why this release matters

v8.4.53 is not a major architecture release, but it delivers meaningful improvements where they matter most:

  • fewer training crashes on NVIDIA GPUs
  • better recovery when batch sizes are too aggressive
  • more dependable semantic segmentation metrics
  • safer segmentation loss behavior
  • clearer docs for prediction outputs
  • stronger confidence for production use :white_check_mark:

It’s a low-risk update with high practical value.

Try it out

You can upgrade with:

pip install -U ultralytics

For new projects, we recommend starting with Ultralytics YOLO26, and if you want the easiest workflow for annotation, training, deployment, and monitoring, take a look at the Ultralytics Platform and its Platform documentation.

You can explore the full release in the v8.4.53 release page and review every commit in the full changelog.

Feedback welcome :speech_balloon:

Please give v8.4.53 a try and let us know how it works for your training, segmentation, and deployment workflows. Feedback, bug reports, and regression checks are always appreciated from the community.