New Release: Ultralytics v8.3.202

Ultralytics v8.3.202 is out :tada: Leaner and more accurate TFLite INT8, smoother tuning, steadier CI

Quick summary: v8.3.202 delivers a targeted upgrade to TFLite INT8 export with a per-channel quantization fix and smaller artifacts, plus robustness improvements to the distributed Tuner and more reliable CI on macOS. This is a great release for anyone exporting YOLO11 to edge devices. :rocket:

Highlights

  • TFLite INT8 per-channel quantization is fixed and now preferred for convolution-heavy models like YOLO11.
  • INT8 exports are significantly slimmer by disabling batchmatmul_unfold for INT8 paths.
  • Distributed Tuner starts immediately when the MongoDB collection exists, improving multi-worker workflows.
  • CI builds stabilize by pinning the macOS runner to a specific image.

New and Notable

Purpose and Impact

  • Better INT8 accuracy for TFLite: per-channel quantization typically improves performance on convolution-heavy architectures like YOLO11. :chart_increasing:
  • Smaller and more deployable artifacts: disabling batchmatmul_unfold for INT8 prevents large integer_quant files, making edge deployments lighter and faster to ship. :package:
  • Faster iteration in large experiments: distributed Tuner starts immediately when the MongoDB collection exists, reducing orchestration friction. :gear:
  • More reliable CI: consistent macOS builds help contributors iterate smoothly and users receive steadier releases. :white_check_mark:

How to Try the New INT8 Export

Upgrade first:

pip install -U ultralytics

Export a YOLO11 model to TFLite INT8 with the new behavior:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")  # or your trained YOLO11 model
model.export(format="tflite", int8=True)  # per-channel INT8 fix and leaner artifacts

If you’re new to exporting, you can find more options in the Export mode docs where we explain supported formats and arguments in the dedicated guide at Ultralytics Export mode documentation.

Improvements

  • INT8 per-channel quantization fix and artifact size reduction for TFLite exports.
  • Distributed Tuner seeding behavior improved for existing-but-empty MongoDB collections.
  • CI macOS runner pinned for consistency.

Bug Fixes

  • Addressed incorrect INT8 per-channel handling in TFLite that impacted accuracy and file size.

Full Changelog and Release

You can browse all changes between v8.3.201 and v8.3.202 in the curated comparison at the page for the full changelog from v8.3.201 to v8.3.202, and you can find the packaged notes on the Ultralytics v8.3.202 release page.

Call for Feedback

We’d love your feedback on TFLite INT8 exports and distributed tuning in real-world workloads. Share your experience in Ultralytics Discussions, or report issues and requests by opening an item in Ultralytics Issues. Your insights help the community and the team make YOLO better for everyone. :folded_hands:

Thanks to all contributors and users pushing these improvements forward, and we hope you enjoy v8.3.202!