New Release: Ultralytics v8.3.223

Ultralytics v8.3.223 Release :rocket:

A quick update to improve correctness and reliability across the board. This release tightens FastNMS post-processing, stabilizes RT-DETR validation, and refactors TensorFlow-family exports for cleaner APIs and fewer edge-case failures. You’ll also see more accurate FLOPs reporting and clearer messages during IMX exports.

Upgrade in one line:

pip install -U ultralytics

:glowing_star: Summary

Ultralytics v8.3.223 focuses on correctness, stability, and developer experience:

  • FastNMS now preserves score ordering consistently.
  • RT-DETR validation is more robust.
  • TensorFlow/TFLite/Edge TPU/TFJS export paths are cleaner and more reliable.
  • FLOPs reporting is more accurate across models like YOLO11 and ongoing YOLO26 R&D.

Explore the details on the Ultralytics v8.3.223 release page to see everything included in this update.

:sparkles: New Features & Refactors

  • Export pipeline refactor for TensorFlow/TFLite/Edge TPU/TFJS :recycling_symbol:
    Export utilities were modularized into ultralytics.utils.export.engine and ultralytics.utils.export.tensorflow, with safer wrappers and simplified code paths for SavedModel, .pb, TFLite (including INT8), Edge TPU, and TFJS. See the refactor exports pull request by @Laughing-q for the full breakdown.

  • Standardized dataset class names :united_states:
    Dataset YAML class names now follow American English conventions (e.g., “doughnut” → “donut”), improving consistency in visualizations and docs without affecting training indices. Details are in the remove British class names pull request by @glenn-jocher.

:hammer_and_wrench: Improvements

  • Accurate FLOPs reporting :chart_increasing:
    We’ve bumped ultralytics-thop to improve FLOPs calculations, enhancing benchmarking reliability for YOLO11 and YOLO26 R&D. Review the dependency update pull request by @glenn-jocher for context.

  • Clearer IMX export messaging :compass:
    The IMX export error now accurately lists supported tasks (detection, pose, classification), reducing confusion. See the IMX message update pull request by @lakshanthad for the change.

:lady_beetle: Bug Fixes

  • FastNMS score alignment fix (priority) :wrench:
    When use_triu=False, scores are now sorted and written back in-place to align with sorted indices, ensuring consistent downstream outputs (e.g., in NMSModel). Investigate the FastNMS scoring fix pull request by @Y-T-G for implementation details.

  • RT-DETR validation stability :white_check_mark:
    ratio_pad is now returned in the correct format during validation, reducing runtime errors and stabilizing evaluation. The RTDETRDataset ratio_pad fix pull request by @Y-T-G has the specifics.

:microscope: Why this matters

  • More correct and stable NMS outputs benefit all users leaning on FastNMS in pipelines.
  • Fewer crashes during RT-DETR validation means smoother experimentation and metrics collection.
  • Cleaner exporters across TensorFlow ecosystems reduce fragility and help you ship models more reliably.
  • Better FLOPs measurements lead to more trustworthy benchmarks and comparisons.

:rocket: Quick start and examples

  • Upgrade to the latest:
pip install -U ultralytics
  • Export a YOLO11 model to TFLite:
from ultralytics import YOLO
model = YOLO('yolo11n.pt')
model.export(format='tflite')
  • Benchmark FLOPs and speed with the improved metrics:
yolo benchmark model=yolo11n.pt

If you’re new to YOLO11, the YOLO11 docs are a great place to get started, and you can learn more about deployment options in the export docs.

:raising_hands: Thanks to our contributors

Huge thanks to the community and the Ultralytics team for pushing this release across the finish line:

  • FastNMS and RT-DETR fixes by @Y-T-G
  • Export refactor by @Laughing-q
  • FLOPs and dataset naming updates by @glenn-jocher
  • IMX export message improvement by @lakshanthad

You can review each change directly:

  • Sort scores in FastNMS by @Y-T-G in pull request #22537
  • RTDETRDataset ratio_pad fix by @Y-T-G in pull request #22525
  • Refactor exports for SavedModel/pb/TFLite/Edge TPU/TFJS by @Laughing-q in pull request #22115
  • Update ultralytics-thop>=2.0.18 by @glenn-jocher in pull request #22526
  • Update IMX export message by @lakshanthad in pull request #22533
  • Standardize dataset class names by @glenn-jocher in pull request #22517

Browse everything that changed in the full changelog for v8.3.223, and see the complete notes on the v8.3.223 release page.

:speech_balloon: Feedback

We’d love to hear how this version works for you. Please upgrade, try the new exporters and benchmarking updates, and share your feedback and ideas. Your input helps us keep YOLO fast, stable, and easy to use for all.

As always, YOLO11 remains our recommended model for current projects, while YOLO26 is in active R&D to bring smaller, faster, more accurate, end-to-end models in the near future.