pypi ultralytics 8.4.38
v8.4.38 - `ultralytics 8.4.38` Unify args naming for standalone export functions (#24120)

6 hours ago

🌟 Summary

Ultralytics v8.4.38 is a stability-focused release that mainly improves model export reliability and consistency across many deployment formats, with additional fixes for training, tracking, and SAM3 behavior. πŸš€

πŸ“Š Key Changes

  • Top priority (PR #24120 by @Laughing-q): Unified standalone export behavior across CoreML, ONNX, OpenVINO, TensorFlow, TorchScript, ExecuTorch, Axelera, RKNN, IMX, NCNN, MNN, and Paddle. πŸ“¦
    • CoreML now uses the model’s real input name (instead of assuming "image"), improving compatibility.
    • Export helper functions were standardized with clearer argument names (output_file, output_dir, etc.).
    • Better support for multi-input export scenarios (notably ONNX/OpenVINO).
    • More robust path handling in TensorFlow/IMX export flows.
  • Export robustness fixes beyond the main PR
    • Fixed YOLOE export edge case by skipping incompatible fusion when lrpc is present.
    • Improved dependency auto-install fallback to use python -m pip (works better in restricted environments).
    • RKNN now requires newer supported toolkit versions (rknn-toolkit2>=2.3.2).
    • Axelera install commands now allow prerelease packages (--pre) where needed.
  • Training reliability improvements πŸ‹οΈ
    • Fixed resume for non-end2end models (like classification).
    • Adjusted DDP setup order so stride/image-size checks happen safely before wrapping.
    • Checkpoint saves are now skipped whenever EMA weights contain invalid values (NaN/Inf), preventing bad checkpoints.
  • Tracking behavior correction 🎯
    • track_buffer now consistently behaves as a true frame count in ByteTrack/BoT-SORT (no hidden FPS scaling).
  • SAM3 fixes 🧠
    • Presence-logit clamp now actually applies (in-place).
    • Text-only prompting no longer injects a dummy geometry token, improving confidence behavior.

🎯 Purpose & Impact

  • For deployment users: exports should be more predictable and less fragile across devices and runtimes (especially CoreML/OpenVINO/ONNX pipelines). βœ…
  • For training users: fewer resume/DDP/checkpoint edge-case failures, especially in classification and multi-GPU setups. βš™οΈ
  • For tracking users: track_buffer now matches what you configure, reducing surprising track drop behavior at non-30 FPS. πŸŽ₯
  • For SAM3 users: improved numerical stability and better text-only grounding quality. πŸ”¬
  • Overall: this release is less about new features and more about making existing workflows safer, clearer, and production-friendlier. πŸ™Œ

What's Changed

New Contributors

Full Changelog: v8.4.37...v8.4.38

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.