New Release: Ultralytics v8.3.207

Ultralytics v8.3.207 :rocket:

Brief summary: This release makes CoreML exports on iOS more reliable for detection models—especially non-80-class datasets—by addressing NMS quirks and simplifying export handling. You’ll also see clearer download error messages to speed up troubleshooting. YOLO11 remains the recommended default for all use cases.

Highlights :sparkles:

  • Robust CoreML export on iOS for detection models, including non-80-class datasets with NMS.
  • Cleaner, simpler CoreML weight handling during export.
  • More informative download errors and warnings for faster debugging.

New Features :new_button:

  • Dedicated MLProgram path for iOS detection exports to handle CoreML-specific behavior.
  • Automatic reconciliation of class-name mappings when counts differ, so your labels stay correct.

Learn more about exporting in the export documentation and see supported formats like CoreML in the CoreML export guide.

Improvements :gear:

  • CoreML NMS stability for non-80-class models by padding class scores to the next multiple of 80 when nms=True. Details in the PR Apple MLProgram NMS workaround, which addresses issue #22309.
  • Simpler CoreML export flow using ct_model.weights_dir directly to manage weights.
  • Clearer safe_download error messages with underlying exception details for quicker diagnostics. See the PR for download diagnostics improvements.

Bug Fixes :lady_beetle:

  • CoreML NMS instability on iOS for non-80-class detection models is resolved by the padding workaround, improving reliability out of the box.

How to Upgrade and Try It :play_button:

Upgrade:

pip install -U ultralytics

Try CoreML export with YOLO11 (recommended):

yolo export model=yolo11n.pt format=coreml nms=True
# Now more reliable on iOS (MLProgram), even for non-80-class datasets 🎯

Python API:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="coreml", nms=True)

What’s Changed :package:

You can review the complete list of changes on the v8.3.207 release page and compare updates in the full changelog diff.

Feedback :raising_hands:

Please give the new export flow a try—especially if you deploy to iOS with CoreML—and let us know how it goes. Your feedback helps the YOLO community and Ultralytics team keep improving reliability and usability.

Thanks to all contributors and users for your continued support and insights!