Ultralytics YOLO
Description
๐ Summary
๐ง v8.4.82 is mainly a stability and usability release focused on fixing YOLO26 Axelera export issues, improving classification RAM caching, and tightening several training/data handling edge cases.
๐ Key Changes
๐ Major fix for YOLO26 Axelera exports
- Fixed a bug where Axelera export could accidentally delete its own output files when run from the model's directory.
- This was the key issue behind failed exports showing errors like "output model too small" even when compilation had actually succeeded.
- The fix now uses a safer temporary compile folder and adds export serialization to avoid conflicts from shared process state.
๐ Axelera export behavior restored for
end2end=False- A temporary restriction added in the previous change was removed.
- YOLO26 Axelera exports can again work with
end2end=Falsewhere supported, avoiding unnecessary breakage in existing workflows such as Ultralytics Platform jobs.
๐ง Classification
cache='ram're-enabled with a memory-safe design- Classification training can now use RAM caching again without the previous memory growth problem.
- Images are decoded once into a shared memory buffer instead of being copied separately into each worker.
๐ Training now fails fast when all labels are empty
- If a detection dataset has no usable labels at all, training now stops immediately with a clear error instead of just warning and failing later in confusing ways.
๐ผ๏ธ Image format support cleanup
- Added proper fallback loading for
.heifimages. - Removed the invalid
.jpeg2000extension from supported image format lists.
- Added proper fallback loading for
๐งน Python reliability improvements
- Fixed several mutable default argument definitions across metrics, TAL, augmentations, YOLOE, and SAM-related code.
- These bugs were subtle, but could cause shared state to leak across calls in long-running sessions.
๐ Docs and workflow polish
- Clarified
stream=Truebehavior in predict mode. - Documented
MLFLOW_KEEP_RUN_ACTIVEfor MLflow users. - Updated citations for YOLOv7, YOLOv9, YOLOv10, and YOLO12 docs.
- Simplified Slack release/CI notifications for cleaner team alerts.
- Clarified
๐ฏ Purpose & Impact
โ More reliable Axelera exports for YOLO26
- This is the most important change in the release.
- Users exporting YOLO26 models for Axelera hardware should see far fewer mysterious export failures, especially in automated or isolated environments like the Ultralytics Platform.
โ๏ธ Safer production workflows
- The Axelera fix prevents exported models from being silently removed during cleanup.
- That means more dependable deployment pipelines and less debugging time.
๐พ Better memory efficiency for classification training
- Re-enabling RAM caching can improve training speed while avoiding the old worker duplication problem.
- This is especially helpful for users training classification models on larger datasets.
๐งช Earlier and clearer failure signals
- Catching all-empty labels at the start helps users fix dataset problems right away instead of encountering vague downstream errors later.
๐ท Smoother handling of real-world image files
- Better HEIF support means fewer surprises when working with photos from modern devices.
๐ ๏ธ Improved long-running stability
- The default-argument fixes reduce the chance of strange behavior caused by shared internal state, which matters most in notebooks, services, and repeated training/inference sessions.
Overall, v8.4.82 is less about new models and more about making existing YOLO26 export and training workflows more dependable ๐ฆโจ
What's Changed
- Guard YOLO26 Axelera end2end exports by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/24962
- Restore Axelera end2end=false exports by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/24963
- Fix mutable default args in metrics and tal by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/24631
- Fix mutable default args in augment, YOLOE, and SAM by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/24630
- Restore fail-fast when training labels are all empty by @AffanBinFaisal in https://github.com/ultralytics/ultralytics/pull/24562
- Docs: document MLFLOW_KEEP_RUN_ACTIVE env var for MLflow integration by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/24602
- docs: update YOLOv7, YOLOv9, YOLOv10 and YOLO12 citations by @banu4prasad in https://github.com/ultralytics/ultralytics/pull/24501
- docs: clarify stream=True behavior by @seungcle in https://github.com/ultralytics/ultralytics/pull/24657
- Drop phantom jpeg2000 extension and fix heif loader fallback by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/24594
- Refactor comments in tests/init.py for clarity by @penampungdipek-creator in https://github.com/ultralytics/ultralytics/pull/24651
- Fix classification cache='ram' leak via shared memory tensor by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/24670
- Simplify Slack notification messages by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/24964
- Fix Axelera export deleting its output when run from the model directory by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/24965
New Contributors
- @seungcle made their first contribution in https://github.com/ultralytics/ultralytics/pull/24657
- @penampungdipek-creator made their first contribution in https://github.com/ultralytics/ultralytics/pull/24651
Full Changelog: https://github.com/ultralytics/ultralytics/compare/v8.4.81...v8.4.82
Notes
Files
ultralytics/ultralytics-v8.4.82.zip
Files
(3.2 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:1b1af7711096f26571eeeae6fe861536
|
3.2 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/ultralytics/ultralytics/tree/v8.4.82 (URL)
Software
- Repository URL
- https://github.com/ultralytics/ultralytics