Releases: ultralytics/ultralytics
v8.3.56 - `ultralytics 8.3.56` PaddlePaddle GPU Inference support (#18468)
🌟 Summary
The v8.3.56 release introduces GPU support for PaddlePaddle inference and export, along with several key bug fixes, usability enhancements, and documentation updates. 🚀
📊 Key Changes
-
PaddlePaddle GPU Inference:
- Added GPU support for PaddlePaddle inference by dynamically checking CUDA availability.
- Improved compatibility in PaddlePaddle dataloader handling.
-
UTF-8 Bug Fix:
- Resolved encoding issues in
convert_coco
when dealing with non-UTF-8 annotation files.
- Resolved encoding issues in
-
Dataset Annotation Optimizations:
- Improved performance and speed for large annotations in the GroundingDataset class.
-
Export Enhancements:
- OpenVINO INT8 Export Fix: Resolved an OpenVINO export error by resetting
clip_model
during export. - IMX Export Clarification: Limited IMX export support exclusively to YOLOv8n models.
- ONNX2TF Compatibility: Updated compatibility with
onnx2tf
library (v1.26.3), fixing memory and bloated file issues.
- OpenVINO INT8 Export Fix: Resolved an OpenVINO export error by resetting
-
Documentation Improvements:
- Deprecated Jupyter documentation in favor of a markdown-based structure (e.g.,
explorer.md
). - Simplified NVIDIA Jetson setup steps by adding streamlined installation commands for PyTorch and Torchvision.
- Added new guides for thread-safe inference and ROS integration for robotics applications.
- Deprecated Jupyter documentation in favor of a markdown-based structure (e.g.,
-
Minor Model Updates:
- Clarified YOLOv6 configuration by emphasizing YAML-based model definitions instead of weight files.
🎯 Purpose & Impact
- Improved Compatibility: Seamless PaddlePaddle operations on GPU ensure better flexibility for diverse hardware setups. 🖥️⚡
- Faster Annotations: Accelerated handling of large datasets benefits advanced AI workflows. 🕒✨
- Enhanced Export Reliability: Fixes to export pipelines (OpenVINO, IMX, ONNX2TF) ensure robust and error-free deployment. 📦✅
- Accessible Learning Resources: Documentation enrichments support a smoother onboarding of new users and integrations in fields like robotics. 📚🤖
- Streamlined User Experience: Simplified installation and setup processes save time and reduce confusion for developers. 🛠️🎉
This release continues to refine functionality and usability for both developers and users across varied use cases.
What's Changed
- Fixed UTF-8 bug in
convert_coco
by @oleg-pereziabov in #18412 - Reduced GroundingDataset annotation unpacking speed by @Lornatang in #18382
- Fix Path objects lacking split method by @Le0v1n in #18427
- Fix Docs
depth: 1
missing authors by @glenn-jocher in #18434 - Fix checkout action arg
fetch-depth
by @glenn-jocher in #18436 - Align Guides headings with mkdocs by @RizwanMunawar in #18431
- PyCharm Docs Inspect fixes by @RizwanMunawar in #18432
- Replace explorer notebook with
explorer.md
docs page by @RizwanMunawar in #18459 - Add missing
.pt
extension to filenames by @Y-T-G in #18456 - Update Jetson Doc with
torch
andtorchvision
for JetPack 5.1.2 by @lakshanthad in #18444 - Update DeepStream Doc with YOLO11 and DeepStream 7.1 by @lakshanthad in #18443
- Update information about YOLOv6 pretrained weights by @Y-T-G in #18450
- Delete
clip_model
to avoid errors on export by @Y-T-G in #18445 - Add
TrackZone
test intest_solutions.py
by @RizwanMunawar in #18411 - Add note that IMX export is only supported for YOLOv8n by @Y-T-G in #18460
- Bump maximum version for onnx2tf to 1.26.3 by @Y-T-G in #18467
ultralytics 8.3.56
PaddlePaddle GPU Inference support by @zldrobit in #18468
New Contributors
- @Le0v1n made their first contribution in #18427
- @oleg-pereziabov made their first contribution in #18412
Full Changelog: v8.3.55...v8.3.56
v8.3.55 - `ultralytics 8.3.55` New Medical-pills dataset (#18389)
🌟 Summary
The v8.3.55 release of Ultralytics YOLO introduces a new dataset, Medical Pills Detection Dataset, aimed at advancing AI applications in pharmaceutical automation, alongside several feature enhancements, bug fixes, and documentation improvements. 💊💻✨
📊 Key Changes
- New Dataset Added: Medical Pills with 92 training and 23 validation images. 🩺
- Enhanced
auto_annotate
Documentation: Centralized details of YOLO-SAM integration for creating segmentation datasets. 📖 - Fixed ConfusionMatrix: Corrected FP calculation logic for unmatched predictions. 🛠️
- User-Friendly Updates: Improved workflow cloning speeds and UI components for solutions workflows. 🚀
- Code Quality Upgrades: Type hinting for better flexibility, Python 3.12 support tweaks, and bug fixes. ⚙️
🎯 Purpose & Impact
-
Purpose:
- Enable automation in pharmaceutical workflows, e.g., pill quality control and sorting.
- Provide clearer usage examples for dataset annotation via YOLO-SAM tools.
- Refine existing tools with a developer-friendly codebase.
-
Impact:
- Improved AI Training: Medical innovators can train models for specific industries using the new dataset.
- Documentation Clarity: Ease of adoption for advanced features like hybrid YOLO-SAM workflows.
- Bug Fixes: These ensure more accurate predictions (e.g., ConfusionMatrix FP fix) and reduce user-errors in workflows.
- Streamlined DevOps: Faster docs deployment and CI pipelines benefit larger teams.
🚀 This release is a forward leap for developers and researchers aiming to innovate in specialized fields like healthcare!
What's Changed
- Use
Any
type-hints forargs
andkwargs
by @glenn-jocher in #18372 - Update FAQ examples in callbacks.md by @Y-T-G in #18377
- Add MobileSAM auto annotation feature 🚀 by @RizwanMunawar in #18374
- Fix Docs calls to
model.benchmark()
by @glenn-jocher in #18391 - PyCharm Code Inspect fixes by @glenn-jocher in #18392
- Remove docs.yml fetch-depth 0 by @glenn-jocher in #18394
- Clone Docs
gh-pages
branch--depth 1
by @glenn-jocher in #18396 - Update image count information for COCO-Pose by @Y-T-G in #18395
- PyCharm Code Inspect fixes for Solutions and Examples by @RizwanMunawar in #18393
- Simplify links.yml by @glenn-jocher in #18399
- Code scan fixes by @glenn-jocher in #18398
- Restrict ONNX ExecutionProviders by @glenn-jocher in #18400
- Update yolo11n-pose to yolo11n in
speed-estimation.md
by @RizwanMunawar in #18410 - fix bug in the ConfusionMatrix class by @yuzhj in #18409
ultralytics 8.3.55
New Medical-pills dataset by @RizwanMunawar in #18389
New Contributors
Full Changelog: v8.3.54...v8.3.55
v8.3.54 - `ultralytics 8.3.54` New Streamlit inference Solution (#18316)
🌟 Summary
Ultralytics v8.3.54
delivers a significant overhaul in the Streamlit-based real-time inference solution, making it easier for users to perform live predictions with a better interface. It also introduces enhancements around exporting flexibility for OpenVINO models, updates to documentation for YOLO11 use, and streamlines development and compatibility workflows.
📊 Key Changes
- 🚀 Revamped Streamlit Inference Tool: Streamlit apps now feature an all-new
Inference
class.- Sidebar for quick video source, model selection, and settings like confidence thresholds.
- Support for webcam and video uploads for real-time predictions and visualizations.
- Enhanced interactivity with class selection, live FPS monitoring, and tracking features.
- 📦 OpenVINO Export Enhancements:
- Added support for
dynamic
shapes, expanding deployment flexibility. - Unified argument ordering (
batch
,dynamic
, etc.) across multiple export formats.
- Added support for
- 📖 YOLO11 Documentation Updates: Updated guides to reflect the latest YOLO11 usage in region counting.
- 🐍 Python Workflow Updates: Minimum Python version for CI workflows updated to 3.9 for compatibility alignment.
- 🌐 ONNXRuntime Example for RTDETR:
- Added an example for deploying RTDETR models with ONNXRuntime in Python.
- ⚙️ Dependency Updates: Updated GitHub Actions
setup-uv
workflow to v5 to improve caching and build processes.
🎯 Purpose & Impact
- Better User Experience with Streamlit:
- Easier navigation and configuration for real-time inference tasks. 🖥️
- Developers and beginners alike can now perform live inference with minimal setup.
- Deployment Flexibility: Support for
dynamic
OpenVINO exports ensures models work smoothly across various scenarios and hardware configurations. 🧩 - Clearer Documentation: The shift to YOLO11 references builds clarity and trust for users working with region-based object counting. 📘
- Future-Proofing Development:
- Updating Python versions ensures long-term ecosystem compatibility. 🔧
- ONNXRuntime Examples: Simplifies adopting RTDETR models for developers using ONNXRuntime in Python, with clear setup and usage guidance. 🚀
- Faster CI/CD Pipelines: Updated dependencies in GitHub workflows boost speed and efficiency. ⚡
This release is ideal for users looking for a blend of usability in inference workflows and robustness in model deployment workflows! 🌟
What's Changed
- Add
dynamic
to approved OpenVINO export args by @glenn-jocher in #18353 - Bump astral-sh/setup-uv from 4 to 5 in /.github/workflows by @dependabot[bot] in #18358
- Update
YOLOv8
toYOLO11
inregion-counting.md
by @RizwanMunawar in #18360 - Min CI Python 3.9 from 3.8 by @glenn-jocher in #18355
- [Example] RTDETR-ONNXRuntime-Python by @semihhdemirel in #18369
ultralytics 8.3.54
New Streamlit inference Solution by @RizwanMunawar in #18316
Full Changelog: v8.3.53...v8.3.54
v8.3.53 - `ultralytics 8.3.53` New Export argument validation (#18185)
🌟 Summary
The v8.3.53
release introduces enhanced argument validation during model export to improve error handling and reduce user confusion, alongside other updates focusing on Dockerfile improvements for NVIDIA Jetson devices and internal code enhancements. 🚀
📊 Key Changes
Primary Feature: Enhanced Export Argument Validation
- ✅ Introduced a mechanism to check whether export arguments are valid for specific formats (e.g., ONNX, TensorRT).
- 🚫 Previously unsupported or incompatible arguments (e.g.,
int8
without required calibration data) will now raise clear errors.
Other Updates:
- 🔧 JetPack Dockerfile Enhancements
- JetPack 5: Updated base image, streamlined dependencies, and improved TensorRT compatibility.
- JetPack 6: Removed unnecessary ONNX Runtime GPU package references for cleaner setup.
- 🛠️ Improved
settings.update()
Validation: Ensures proper handling of input types and keys for user settings. - 🧹 Code Cleanup: Improved internal structures such as string representations for configuration objects (
JSONDict
) and URL handling (clean_url
), improving performance and readability.
🎯 Purpose & Impact
-
Export Validation Improvements
- 🚀 Provides users with immediate feedback on invalid export configurations.
- 💪 Reduces confusion by preventing potentially misleading silent failures during export.
- 🛡️ Ensures more reliable model deployment by enforcing compatibility checks early.
-
Jetson Dockerfile Updates
- 🖥️ Increased compatibility with updated JetPack versions for NVIDIA Jetson devices.
- 🔨 Streamlined setup for AI model training and deployment with YOLO on Jetsons.
-
User-Friendly Enhancements
- 💡 Easier troubleshooting with clearer error messages for user settings and export configurations.
- 📜 Simpler and more maintainable project codebase with reduced clutter in utilities and configuration processing.
This release strongly benefits both developers configuring their models for export and users building YOLO models on NVIDIA platforms, ensuring smoother workflows and better system compatibility. 🚦
What's Changed
- Fix JetPack6 Dockerfile for NVIDIA Jetson by @lakshanthad in #18335
- Improve JetPack5 Dockerfile for NVIDIA Jetson by @lakshanthad in #18334
- Validate arguments passed as dict to
settings.update()
by @Y-T-G in #18337 ultralytics 8.3.53
New Export argument validation by @Y-T-G in #18185
Full Changelog: v8.3.52...v8.3.53
v8.3.52 - `ultralytics 8.3.52` AutoBatch CUDA computation improvements (#18291)
🌟 Summary
Version 8.3.52
focuses on enhanced CUDA memory management for improved performance, with additional updates to documentation, compatibility for NVIDIA Jetson devices, and refined functionality for YOLO models. 🚀
📊 Key Changes
- 🚀 New
cuda_memory_usage
Utility: Introduced a tool for dynamic monitoring and management of CUDA memory during operations. - 💡 Improved Model Profiling: Integrated memory tracking into the profiling process to report GPU memory usage alongside performance stats.
- 🔄 Enhanced Object Segmentation: Modified
segment2box
for precise bounding box calculations when segments extend beyond the image boundaries. - 📦 JetPack 6.1 Dockerfile Update: Added compatibility for NVIDIA Jetson Orin Nano Super Developer Kit with dependency upgrades and performance benchmarks.
- 📖 Richer Documentation: Added a CIFAR-100 tutorial video, improved clarity on
scale
parameter for multiscale training, and updated ROS and NVIDIA Jetson guides. - 🧹 TFLite Example Cleanup: Removed unnecessary RGB-to-BGR conversions for simpler and clearer example usage.
🎯 Purpose & Impact
- 🚀 Enhanced Performance: The
cuda_memory_usage
utility ensures more efficient GPU memory handling, reducing the risk of out-of-memory crashes during complex operations. - 📈 Model Optimization: Developers get richer profiling insights, aiding faster debugging and improving training/production readiness.
- 🖼️ Robust Object Detection: Improved segmentation functionality provides accuracy even with challenging edge cases, making models more reliable.
- 🤖 Wider Compatibility: Updating to JetPack 6.1 enables users to fully leverage NVIDIA Jetson’s latest hardware advancements (e.g., Orin Nano Super’s 67 TOPS).
- 📚 Simplified Learning: Documentation improvements, including engaging tutorials and clarified parameters, lower the barrier to entry for both beginners and experts.
- 🧑💻 Beginner-Friendly Examples: Streamlined TFLite examples ensure ease of adoption for new developers.
This release delivers meaningful improvements for developers working across GPU-heavy tasks, embedded systems, and edge AI deployments! 🚀
What's Changed
- Revert
segment2box
and clip segments by @Laughing-q in #18294 - Update JetPack6 Dockerfile with latest JetPack6.1 by @lakshanthad in #18295
- Add https://youtu.be/6bZeCs0xwO4 to docs by @RizwanMunawar in #18292
- Fix RGB to BGR conversion in TFLite example by @Y-T-G in #18305
- Align solutions YAML with
default.yaml
by @RizwanMunawar in #18300 - Fix incorrect
scale
description by @Y-T-G in #18303 - Update Jetson doc with NVIDIA Jetson Orin Nano Super Developer Kit by @lakshanthad in #18289
- ROS Guide, updated YOLO version by @ambitious-octopus in #18325
ultralytics 8.3.52
AutoBatch CUDA computation improvements by @Laughing-q in #18291
Full Changelog: v8.3.51...v8.3.52
v8.3.51 - `ultralytics 8.3.51` AutoBach logspace fit and checks (#18283)
🌟 Summary
The Ultralytics v8.3.51 release introduces improved robustness for training batch size optimization, documentation enhancements, new features like a security alarm system, and updates to facilitate the transition from YOLOv8 to YOLO11. 🚀
📊 Key Changes
- Improved Batch Size Calculation:
- Automated batch size determination now uses logarithmic polynomial fitting for better accuracy. 🧮
- Stricter checks ensure safe memory usage and prevent crashes due to misconfigurations. ✅
- Hyperparameter Tuning:
- Added default hyperparameter search spaces and clear examples in documentation for easier customization. 🛠️
- Updated training process to improve reliability by using
shell=True
for subprocess execution. ⚙️
- YOLO11 Integration:
- Updated examples, references, and documentation to reflect the transition from YOLOv8 to YOLO11. 📚
- Enhanced support for SAHI (Slicing Aided Hyper Inference) with YOLO11 models.
- New Security Alarm System:
- Added a ready-to-use, customizable security alarm system solution leveraging YOLO11. Includes email alerts when detections exceed thresholds. 🛡️
- Expanded Export Options:
- New formats supported, including MNN and Sony IMX500, enhancing deployment flexibility for diverse platforms. 🎉
🎯 Purpose & Impact
- Optimized Performance:
- The refined autobatch method improves training stability and GPU utilization across various devices, helping users achieve smoother workflows.
- Enhanced Usability:
- New documentation simplifies hyperparameter tuning for beginners and advanced users alike, reducing the learning curve.
- Updates to SAHI and model examples make it easier to adopt YOLO11.
- Greater Flexibility:
- Broader export options and integration tools expand YOLO's adaptability for edge devices like IMX500.
- Real-World Applications:
- With the newly added Security Alarm System, users gain a powerful, practical monitoring tool ready for deployment in surveillance scenarios. 🚨
This release elevates Ultralytics by streamlining processes, expanding use cases, and improving reliability for developers and organizations. ⭐
What's Changed
- Update SAHI example from
YOLOv8
toYOLO11
by @RizwanMunawar in #18276 - Add
imx500
andMNN
intutorial.ipynb
export table by @RizwanMunawar in #18254 - Add hyperparameter search space to Docs by @Y-T-G in #18259
- Use
shell=True
to run hyperparameter tuning by @Y-T-G in #18284 - Add security alarm system as ultralytics solution by @RizwanMunawar in #18281
ultralytics 8.3.51
AutoBach logspace fit and checks by @Laughing-q in #18283
Full Changelog: v8.3.50...v8.3.51
v8.3.50 - `ultralytics 8.3.50` Enhanced segment resample (#18171)
🌟 Summary
Release v8.3.50
introduces improvements to segment resampling logic, enhanced model handling during training and validation, documentation updates, and bug fixes across multiple areas for increased flexibility, accuracy, and usability. 🚀📘
📊 Key Changes
- Enhanced Segment Handling:
- Segment resampling now dynamically adjusts the number of points based on the longest segment for better consistency. 🖌️
- Empty segments during concatenation are gracefully handled to avoid errors.
- Improved Validation & Model Workflow:
- Validation callbacks for OBB models now work correctly during training. 🔄
- Updates to fix validation warnings when using untrained model YAMLs.
- Model Saving Updates:
- Improved checkpoint handling when saving models to reduce initialization errors. 💾
- Documentation Tweaks:
- Added multimedia content (audio & video) to YOLO11 documentation for a richer learning experience. 🎧🎥
- Cleaned up outdated entries (like the Sony IMX500) and enhanced clarity with new formatting and annotated argument types.
- Internal docs configuration now supports cleaner URLs and auto-deployment enhancements. 🌐
- Bug Fixes:
- Fixed CUDA-related bugs in the SAM module for more consistent device handling. 🛠️
- Adjustments to prevent crashes in scenarios with mixed device usage.
🎯 Purpose & Impact
- ✅ Reliability Boost: The improved resampling logic ensures stable training and avoids breaking workflows when handling variable-length segments.
- 📈 Performance Optimization: Better checkpoint and validation handling streamlines user workflows and minimizes potential runtime errors.
- 🌍 Usability Improvements: Updated Docs and multimedia resources make discovering and using features more user-friendly for both beginners and experts.
- 🚀 Cross-Device Consistency: Fixes in CUDA logic ensure model compatibility on both CPU and GPU systems, enhancing accessibility.
- 🖹 Clean Documentation: Removing outdated content and refining resources helps users focus on the latest tools and avoid confusion.
This update is pivotal for developers and users working with segmentation models, large datasets, or seeking smoother workflows during benchmarking, training, and inference with YOLO models.
What's Changed
- Removed duplicate IMX500 docs reference by @ambitious-octopus in #18178
- Fix deleted author profile by @glenn-jocher in #18180
- Fix validation callbacks not triggered during OBB model training by @dagokl in #18175
- Fix untrained warning when training from yaml by @Y-T-G in #18168
- Fix SAM CUDA hard-code by @adamp87 in #18153
- Add YOLO11 audio podcast by @RizwanMunawar in #18174
- Add https://youtu.be/qE-dfbB5Sis to docs by @RizwanMunawar in #18207
- Add https://youtu.be/j0MOGKBqx7E to docs by @RizwanMunawar in #18222
- Add type for
train
arguments by @RizwanMunawar in #18221 - Fix Docs relative trailing backlash bug by @glenn-jocher in #18244
- Fix
model.save()
for model YAMLs by @Y-T-G in #18212 ultralytics 8.3.50
Enhanced segment resample by @Laughing-q in #18171
New Contributors
Full Changelog: v8.3.49...v8.3.50
v8.3.49 - `ultralytics 8.3.49` Docker images `uv pip install` (#18115)
🌟 Summary
Version 8.3.49
introduces key updates across Docker workflows, YOLO evaluation indexing, PyTorch compatibility, and documentation. These changes enhance stability, compatibility, and user experience for developers and end-users. 🚀
📊 Key Changes
-
Docker Enhancements:
- Replaced standard
pip install
withuv pip install
for better Python package management. 🐍🛠️ - System-level package installations across all Dockerfiles for increased reliability.
- Included flags like
--index-strategy
to handle edge cases more robustly.
- Replaced standard
-
YOLO Dataset Compatibility:
- Standardized
category_id
indexing in COCO and LVIS datasets, starting indices from 1 for consistency. 📊
- Standardized
-
PyTorch Version Support:
- Added compatibility for PyTorch
2.5
and Torchvision0.20
versions. 🔄
- Added compatibility for PyTorch
-
Documentation Improvements:
- Updated NVIDIA Jetson guide to explain Deep Learning Accelerator (DLA) functionality and limitations more clearly. 📝
- Refined export format table for YOLOv5 to include improved links to relevant integration guides. 🌐
-
Testing Optimization:
- Removed slow and outdated Google Drive-dependent tests to streamline testing workflows. 🧪
-
GitHub Workflow Update:
- Added a
git pull
step to ensure the latest documentation changes are fetched before updates. ⚙️
- Added a
🎯 Purpose & Impact
-
Enhanced Package Management:
Consolidating Python package installations withuv pip
ensures safer and more predictable setups, reducing dependency issues. 🛡️ -
Better Dataset Compatibility:
Improved indexing logic aligns with common standards, reducing confusion during COCO/LVIS dataset evaluations. 📋 -
Future-Ready PyTorch Support:
Developers leveraging the latest PyTorch and Torchvision versions can seamlessly integrate without compatibility issues, unlocking new features and performance improvements. 🚀 -
Improved Documentation Usability:
Clearer and more accessible docs guide users in leveraging advanced features, such as model exporting and NVIDIA DLA usage, empowering informed decision-making. 📖✨ -
More Efficient Testing:
By removing redundant tests, testing processes are faster and less prone to failure caused by external factors like rate limits. ⏩ -
Robust Documentation Workflow:
Ensures smooth updates and reduces the likelihood of conflicts or overwriting recent changes in collaborative environments. ✅
This update reflects Ultralytics' commitment to improving usability, stability, and developer experience across the board! 🌟
What's Changed
- Bump astral-sh/setup-uv from 3 to 4 in /.github/workflows by @dependabot[bot] in #18123
- Update Jetson Doc with DLA info by @lakshanthad in #18128
- Update YOLOv5 export table links by @RizwanMunawar in #18130
- Update
torchvision
compatibility table by @glenn-jocher in #18117 - Change index to start from 1 by default in
predictions.json
by @Y-T-G in #18140 - Remove Google Drive test by @glenn-jocher in #18162
- Git pull docs before updating by @glenn-jocher in #18163
ultralytics 8.3.49
Docker imagesuv pip install
by @pderrenger in #18115
Full Changelog: v8.3.48...v8.3.49
v8.3.48 - `ultralytics 8.3.48` split PyPI publish jobs for security (#18111)
🌟 Summary
The v8.3.48
release focuses on enhanced security, efficiency, and user convenience for the Ultralytics CI/CD pipelines and broader ecosystem. Key highlights include improved workflows for publishing, caching, documentation updates, and dependency handling. 🚀✨
📊 Key Changes
- Workflow Security Enhancements:
- Split PyPI publishing into stages (
check
,build
,publish
, andnotify
) for better control and automation. 🛠️ - Enabled version handling to ensure only necessary updates are pushed to PyPI. 🔄
- Improved notification systems for success or failure reporting. 📣
- Split PyPI publishing into stages (
- Dependency Improvements:
- Added a
--no-cache
flag to ensure cleaner and more reliable Python installations during publishing workflows. 🧹
- Added a
- Better Cache Management:
- Introduced automated CI cache pruning across workflows, reclaiming gigabytes of disk space in tests and GPU CI jobs. 🧑💻💾
- Documentation Fixes:
- Updated OpenVINO links to guide users toward the most recent version, ensuring accurate and up-to-date information. 🔗📄
🎯 Purpose & Impact
- Stronger Security 🔒:
- The new CI/CD structure minimizes risks by organizing tasks into stricter, separate stages and limiting unnecessary permission exposure during workflows.
- Improved CI/CD Efficiency ✅:
- Automatic cache pruning and artifact handling enable faster builds/tests while reducing redundant storage usage.
- The
--no-cache
flag ensures the freshest dependencies, reducing debugging time caused by outdated installations.
- Enhanced User Experience 🌟:
- Developers benefit from cleaner workflows in the open-source Ultralytics ecosystem, ensuring smoother package publishing and version management.
- Updated OpenVINO references ensure users can fully leverage recent AI acceleration tools for optimized model performance.
What's Changed
- Update publish.yml with
--no-cache
by @glenn-jocher in #18095 - Add CI cache pruning by @Burhan-Q in #17664
- OpenVINO broken link fix by @RizwanMunawar in #18107
ultralytics 8.3.48
split PyPI publish jobs for security by @glenn-jocher in #18111
Full Changelog: v8.3.47...v8.3.48
v8.3.47 - `ultralytics 8.3.47` fix softmax and Classify head commonality
🌟 Summary
The v8.3.47
release focuses on enhancing YOLO's classification capabilities by improving model export, prediction handling, and loss computation for smoother training and deployment. 🚀
📊 Key Changes
-
Improved YOLO Classification Module:
- Added export functionality (
export=True
) to the classification head, enabling easier deployment. 📤 - Enhanced post-processing to handle predictions more efficiently, including better support for tuple-based outputs. ⚙️
- Updated loss function to gracefully manage tuple-based predictions for accurate classification loss calculation. 📊
- Updated logic in the classification head to switch seamlessly between training and inference, including integrated softmax during inference. 🔄
- Added export functionality (
-
Documentation Improvements:
- Clarified functionality for
copy_paste
augmentation, specifying it requires segmentation labels. ✍️ - Fixed typos and improved YAML configurations for smoother developer workflows. 🛠
- Removed redundant documentation entries to enhance clarity. 📚
- Clarified functionality for
🎯 Purpose & Impact
-
For End Users:
- Enhanced Deployment Options: You can now export YOLO classification models more effectively, unlocking advanced deployment use cases in various environments. 🌐
- Streamlined Workflows: Updated logic ensures classification workflows are more intuitive and robust—ideal for developers juggling both training and inference. 🌟
-
For Developers:
- Clearer Documentation: Clarifications and typo fixes reduce confusion, saving time while implementing advanced features like
copy_paste
. ✨ - Improved Configuration: Fixes to YAML workflows ensure consistent deployments and smoother integration during the development lifecycle. ✅
- Clearer Documentation: Clarifications and typo fixes reduce confusion, saving time while implementing advanced features like
Overall, this release significantly improves YOLO's flexibility and usability for classification tasks while enhancing the clarity of supporting documentation. 💡
What's Changed
- Fix Docs YAML boolean by @glenn-jocher in #18072
- Eliminate duplicate bullet points in docs by @RizwanMunawar in #18074
- Mention
copy_paste
applies only when using segmentation labels by @Y-T-G in #18077 ultralytics 8.3.47
fixsoftmax
andClassify
head commonality by @Laughing-q in #18085
Full Changelog: v8.3.44...v8.3.47