pypi ultralytics 8.4.35
v8.4.35 - `ultralytics 8.4.35` NaN training recovery and dataset cache improvements (#24154)

7 hours ago

🌟 Summary

Ultralytics v8.4.35 is a stability-focused release that makes training recovery smarter, dataset caching safer, and inference/runtime behavior more reliable—especially when runs hit NaNs or dataset metadata is inconsistent. 🚀🛡️

📊 Key Changes

  • NaN training recovery improved (most important, PR #24154 by @glenn-jocher) 🔁

    • Training now recovers from last_good.pt instead of retrying a potentially corrupted last.pt.
    • Checkpoint saves are now skipped if EMA weights contain NaN/Inf, preventing bad checkpoints from propagating.
  • Detection dataset cache reliability upgrades (PR #24154) 🗂️

    • Empty detection caches are no longer written.
    • When labels are corrupt, final errors now include clearer reasons (instead of vague failures).
    • Detection dataset checks now accept a dataset directory directly (not only a YAML path).
    • NDJSON-to-YOLO cached conversions are rebuilt when expected split folders are missing.
  • Cleaner logs during runs (PR #24154) 🔕

    • Repeated Platform: Model not found warnings are throttled to reduce noise.
  • OpenVINO robustness improvements (PR #24156 by @glenn-jocher) ⚙️

    • Better device fallback logic (uses CPU fallback more safely when needed).
    • On Linux ARM64 CPU, inference is forced to FP32 for improved compatibility/stability.
  • Training behavior and compatibility fixes

    • Prevents duplicate pretrained weight loading for YAML-based training configs (PR #23640).
    • W&B resume now continues the original run instead of creating a disconnected new one (PR #24110).
    • Added backward compatibility for older YOLO12 Area Attention checkpoints (PR #24152).
    • Added missing isatty() in console capture wrapper to avoid crashes with some libraries like transformers (PR #24143).
    • SAM3 decoder cache-miss dtype fix to prevent coordinate-generation errors (PR #24145).
  • Docs and ecosystem updates 📚

    • FastSAM/MobileSAM docs refreshed with YOLO26 benchmark context and clearer reproducibility notes (PR #24140).
    • SAHI YOLO26 tiled inference docs simplified and modernized (PR #24133).
    • Legacy docs now better direct users toward YOLO26 as current recommended model line (PR #24139).

🎯 Purpose & Impact

  • Fewer failed long trainings ⏱️
    If your run encounters NaNs, recovery is now more trustworthy, reducing wasted GPU time and repeated crash loops.

  • Less dataset-debug frustration 🧪
    Better cache validation + clearer corrupt-label messages make it faster to diagnose data issues.

  • More predictable production behavior 🏭
    OpenVINO and logging adjustments improve runtime stability on edge/ARM setups and reduce noisy warnings.

  • Smoother experiment tracking and resuming 📈
    W&B resume continuity helps keep metrics in one place, improving experiment history quality.

  • Low-risk upgrade with practical benefits
    This release is mostly about reliability and developer experience rather than new model architectures—great for teams running frequent training/inference pipelines.

What's Changed

New Contributors

Full Changelog: v8.4.34...v8.4.35

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.