pypi ultralytics 8.3.137
v8.3.137 - `ultralytics 8.3.137` YOLO-World text features cache optimization (#20480)

latest releases: 8.3.198, 8.3.197, 8.3.196...
3 months ago

🌟 Summary

This release boosts training speed and efficiency for YOLOWorld and YOLOE models by optimizing how text features are cached and handled, alongside improvements to ONNX export reliability and embedding computations. 🚀📚

📊 Key Changes

  • YOLOWorld & YOLOE Text Embedding Optimization:
    • Text embeddings for category names are now cached, avoiding repeated calculations during training.
    • Unified and improved text embedding generation and storage across YOLOWorld and YOLOE trainers.
    • Introduced a new build_text_model utility for modular and compatible text model handling.
    • Enhanced preprocessing and integration of text features into training batches.
    • Embeddings are saved with model-specific filenames and only regenerated when necessary.
  • ONNX Export Improvements:
    • Updated onnxslim dependency to version 0.1.53 for better ONNX and TensorFlow export support.
    • Simplified and clarified test logic for ONNX and OpenVINO exports.
    • Improved test output for easier debugging and re-enabled Jetson-specific test conditions.
  • Embedding Computation Optimization:
    • Reduced redundant computations by optimizing how embedding indices are handled, leading to faster embedding extraction.

🎯 Purpose & Impact

  • Faster Training for Text-based Models:
    • By caching text features, training with YOLOWorld and YOLOE is now significantly faster and more efficient, especially for models using many text-based categories.
  • 🧠 Smarter Resource Usage:
    • Avoids unnecessary recomputation, saving time and computational resources.
  • 🔄 Improved Export Reliability:
    • Ensures smoother and more reliable model exports to ONNX and TensorFlow formats, benefiting deployment workflows.
  • 🛠️ Easier Maintenance & Debugging:
    • Cleaner code and clearer test outputs make it easier for developers to maintain and troubleshoot the codebase.

Overall, this update makes training and deploying Ultralytics models more efficient, robust, and user-friendly for both developers and end users. 🚀✨

What's Changed

  • Use onnxslim>=0.1.53 and simplify when dynamic=True by @inisis in #20569
  • Optimization for embedding computation by @genji970 in #20579
  • ultralytics 8.3.137 YOLO-World text features cache optimization by @h13-0 in #20480

New Contributors

Full Changelog: v8.3.136...v8.3.137

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.