pypi ultralytics 8.4.88
v8.4.88 - Cap dataloader workers for tiny datasets (#25031)

4 hours ago

🌟 Summary

Ultralytics v8.4.88 focuses on more reliable training for tiny datasets, stable NCNN export, and clearer documentation for model training concepts. 🚀

📊 Key Changes

  • Tiny dataset dataloader fix by @glenn-jocher 🧠

    • Dataloader worker processes are now capped based on the actual number of final batches.
    • Single-batch training loaders now run in-process instead of spawning extra persistent workers.
    • Empty dataset handling now correctly relies on PyTorch DataLoader validation instead of triggering internal worker-count errors.
    • Added regression tests for tiny loaders, distributed sampling with drop_last, and empty dataset behavior.
  • Improved NCNN export stability by @glenn-jocher 🛠️

    • PNNX is pinned to 20260526 for NCNN export and CI checks.
    • This avoids a known newer PNNX regression that could cause NCNN inference crashes.
    • NCNN remains paired with the latest available ncnn wheel.
  • Clearer training documentation for dfl by @fcakyon 📚

    • The dfl training argument description now correctly explains Distribution Focal Loss as a bounding box localization term, not a classification feature.
    • This helps users better understand how YOLO models learn accurate box positions.
  • Knowledge distillation guide visual update by @RizwanMunawar 🖼️

    • Added a new workflow image to the knowledge distillation documentation.
    • The image helps explain the teacher-student model training concept more intuitively.
  • Version bump 📦

    • Package version updated from 8.4.87 to 8.4.88.

🎯 Purpose & Impact

  • Better experience for small experiments and quick tests
    Users training on very small datasets should see fewer unnecessary background worker processes, lower overhead, and fewer cases where stuck workers keep CUDA resources busy.

  • More robust distributed and edge-case training behavior
    The dataloader update preserves existing drop_last behavior while improving worker handling after sampler construction, making training safer across normal, tiny, and distributed dataset setups.

  • More dependable NCNN deployment workflows 📱
    Pinning PNNX improves reliability for users exporting YOLO models, including YOLO26 models, to NCNN for lightweight or edge-device inference.

  • Clearer learning resources for all users 🌐
    Documentation updates make advanced concepts like knowledge distillation and Distribution Focal Loss easier to understand for both new users and experienced developers.

What's Changed

Full Changelog: v8.4.87...v8.4.88

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.