pypi ultralytics 8.3.246
v8.3.246 - `ultralytics 8.3.246` Save training plots data for loggers (#23104)

one day ago

🌟 Summary (single-line synopsis)

Ultralytics v8.3.246 upgrades training reporting for Ultralytics HUB by uploading rich, interactive plot data + class names at the end of training, making results easier to explore and understand 📈🏷️✨

📊 Key Changes

  • (Priority) Rich plot-data upload on train completion 🧩📤
    At on_train_end(), Ultralytics now collects plots from both the trainer and validator and sends them with the final "training_complete" event (e.g., confusion matrix, PR curves, metric–confidence curves).
  • Class names included in the final payload 🏷️
    The "training_complete" message now includes classNames, so plots/results can be labeled correctly on the frontend.
  • Structured plot metadata for interactive visualizations 🖥️📊
    Plot callbacks (on_plot) now pass raw arrays + plot type, enabling interactive rendering in Ultralytics HUB:
    • Confusion matrix sends raw matrix counts
    • PR curve sends x/y arrays + per-class AP
    • Metric-confidence curves send x/y arrays
  • Better diagnostics when installs fail 🧰⚠️
    check_requirements() now surfaces more detail (e.g., captured command output) so dependency issues are easier to debug.
  • NVIDIA NVML init failures are now logged 🖥️🪵
    If GPU telemetry can’t initialize, Ultralytics prints a warning instead of failing silently.
  • Export dependency updates & safeguards 📦🔧
    • onnxslim minimum bumped to >=0.1.82 to reduce ONNX export tooling issues.
    • ExecuTorch export adds a requirement guard: ruamel.yaml<0.19.0 to prevent version-related export failures.
  • Minor developer-facing correctness/clarity 🧠🧹
    Fixes misleading mask shape comments across segmentation/mask processing code and a small test comment tweak.

🎯 Purpose & Impact

  • More useful training dashboards in Ultralytics HUB 📈✨
    You should see better “training complete” reporting with correctly labeled, interactive plots—helpful for both quick checks and deeper analysis.
  • Improved reproducibility and debugging 🧩🔍
    Raw plot data + class names means the frontend can recreate plots reliably, and users can interpret results without guessing label mappings.
  • Fewer “mysterious” environment issues ⚠️🧰
    Clearer dependency-install failure messages and NVML warnings make it easier to diagnose setup problems (especially in containers/servers).
  • More stable exports 🚀📦
    Updated/pinned dependencies reduce the chance of ONNX/ExecuTorch export breaking due to upstream library changes.

For the full context, see PR #23104 by @glenn-jocher and related PRs included in the v8.3.246 release notes.

What's Changed

Full Changelog: v8.3.245...v8.3.246

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.