pypi ultralytics 8.4.14
v8.4.14 - `ultralytics 8.4.14` Platform training cancel feature (#23614)

6 hours ago

🌟 Summary (single-line synopsis)

Ultralytics 8.4.14 adds Ultralytics Platform “Cancel training” support so you can stop runs quickly and still keep/upload partial results ⛔️📤

📊 Key Changes

  • Platform-driven training cancellation (priority change) 🛑
    • Detects cancellation even before training starts (during session registration) and prevents wasted startup time.
    • Checks for cancellation at epoch end via a send-and-check response flow, then sets trainer.stop=True when cancelled=true.
    • Tracks cancellation state with trainer._platform_cancelled and logs clear messages.
    • Continues to upload partial artifacts/metadata when a run is cancelled (so you don’t lose everything).
  • Faster responsiveness to stop requests between batches
    • Training loop now breaks if self.stop is set, allowing external stops (like Platform cancellation) to take effect sooner.
  • YOLO26 Pose training stability fix 🧍‍♂️📈
    • Clamps negative rle_loss to zero to prevent loss from going negative and destabilizing training (helps avoid mAP dropping across epochs).
  • Segmentation → bounding box conversion edge-case fix 🖼️📦
    • segment2box() now excludes points exactly on the image border after clipping, avoiding boxes incorrectly snapping to edges (better box regression + mask quality).
  • Hyperparameter tuning crash fix 🧪🔧
    • Prevents TypeError when fitness is present but None during tuning (safer/cleaner tuning runs).
  • Docs clarity: Params/FLOPs reporting after model.fuse() 📚
    • Adds notes explaining why Params/FLOPs in docs may differ from what you see locally (fused inference vs full training architecture).

🎯 Purpose & Impact

  • Better control on Ultralytics Platform 🎛️
    • If you hit Cancel in the Platform, training should stop reliably and promptly—without waiting for a long delay.
  • Lower wasted compute + cost 💸
    • Cancelled jobs exit earlier and more predictably, especially helpful for long training runs.
  • Keeps useful outputs even when cancelling 📦
    • Partial uploads mean you can still inspect progress, logs, and intermediate artifacts after stopping.
  • More stable YOLO26 Pose training
    • Reduces risk of training “going backwards” due to negative loss behavior; improves consistency of pose metrics over epochs.
  • Higher-quality results for segmentation-derived boxes 🎯
    • Fewer edge-snapped boxes after augmentations can improve both training quality and final predictions.
  • Fewer interruptions in automated workflows 🤖
    • Tuning and reporting are more robust, reducing flaky failures in pipelines.

If you train via the Ultralytics Platform, this release is especially impactful due to the new cancellation behavior 🛑.

What's Changed

Full Changelog: v8.4.13...v8.4.14

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.