🌟 Summary
The v8.3.61
release restores compatibility with Python 3.8, refines several utility components, and makes user-facing improvements for better prediction workflows. It smooths the usability, performance, and flexibility of the Ultralytics ecosystem. 🚀💡
📊 Key Changes
- Python 3.8 Compatibility Restored: Ensures older Python versions, including 3.8, are now supported by replacing operations incompatible with earlier versions. 🐍✅
- Replaced
|
operator for dictionary merging with the Python 3.8-compatible**
method.
- Replaced
- Prediction API Simplification: The
Predictor
andSAM2Predictor
classes now output results in a consolidated object (result
), replacing the previous multi-output format (masks, scores, boxes
).- Example updates reflect this newer, simpler API. 🧰
- CI Workflow Improvements: Adjusted triggers and settings in GitHub Actions workflows for smoother testing and CI processes.
- Minor Bug Fixes: Addressed issues in utility functions, prediction methods, and loss calculations to improve overall reliability and prevent unexpected errors. 🛠️
- Version Bumped to 8.3.61: Reflects these refinements in the package version.
🎯 Purpose & Impact
- Broader Python Compatibility: Expands usability for projects running Python 3.8, accommodating users on older infrastructure without losing core functionality. 🌎
- Simplified Model Predictions: A single-output format for
Predictor
andSAM2Predictor
reduces user friction, improves code readability, and simplifies integration into pipelines. Especially helpful for new users! 🧩🚀 - Improved Reliability: Minor bug fixes enhance stability, ensuring smoother performance across diverse use cases.
- CI Stability & Testing Precision: Improvements to workflow configurations ensure better support for continuous integration and testing scenarios.
Note for Users 🤓:
If you’ve been using the Predictor
or SAM2Predictor
classes, make sure to update your scripts with the new result
structure (e.g., use result.masks
, result.boxes
, etc.) instead of relying on separate outputs. This alignment will make your workflows cleaner and future-proof! 😊
What's Changed
- Fix broken examples in SAM Predictor docstrings by @Y-T-G in #18665
ultralytics 8.3.61
Restore Python 3.8 compatibility by @glenn-jocher in #18666
Full Changelog: v8.3.60...v8.3.61