pypi ultralytics 8.4.80
v8.4.80 - Replace `int8` and `half` args with new `quantize` (#24918)

2 hours ago

๐ŸŒŸ Summary

๐Ÿš€ Ultralytics v8.4.80 is mainly about making model export precision much simpler and more future-ready, with a new unified quantize argument replacing the older half and int8 switchesโ€”plus a few important reliability, validation, and training stability fixes.

๐Ÿ“Š Key Changes

  • New unified quantize export argument by @onuralpszr โญ

    • Replaces the older half=True and int8=True style with one cleaner setting.
    • Supports simple values like:
      • quantize=16 for FP16
      • quantize=8 for INT8
      • quantize=32 for FP32
    • Also supports more advanced mixed-precision schemes like quantize="w8a16" where supported.
    • Older half and int8 arguments still work for now, so existing scripts should not break immediately. ๐Ÿ”„
  • Export docs and integrations updated across the board

    • Many export examples and docs were refreshed to use quantize instead of half/int8.
    • This affects formats and platforms such as ONNX, TensorRT, OpenVINO, CoreML, TFLite, TF.js, RKNN, QNN, Axelera, DEEPX, and more. ๐Ÿ“ฆ
  • Better support for modern and future quantization workflows

    • The new system is designed to scale beyond just โ€œFP16 or INT8โ€.
    • This is especially useful as more hardware targets adopt mixed precision and platform-specific quantization modes. โš™๏ธ
  • Distributed validation now combines confusion matrices across GPUs

    • In multi-GPU validation, confusion matrix plots now reflect results from all workers, not just one process. ๐Ÿ“ˆ
  • OBB training stability improved

    • A fix prevents some very tiny oriented bounding boxes from causing unstable or invalid loss behavior, including NaNs during training. ๐Ÿ›ก๏ธ
  • HUB/network request reliability improved

    • Added real request timeouts and retry behavior so stalled network calls are less likely to hang indefinitely. ๐ŸŒ
  • MLflow integration tests restored and modernized

    • Improves confidence that MLflow logging behavior continues to work correctly with newer MLflow versions. ๐Ÿงช
  • Tracking docs clarified

    • Better explanation of when to use persist=True and how to choose tracker backends like botsort.yaml or bytetrack.yaml. ๐ŸŽฏ
  • Ultralytics Platform dataset upload docs improved

    • Clearer explanation that browser video uploads depend on codec support, not just file extension.
    • AVI was removed from supported browser-upload guidance. ๐ŸŽฅ

๐ŸŽฏ Purpose & Impact

  • Simpler exporting for everyone ๐Ÿ˜Œ

    • Instead of remembering two separate boolean flags, users now have one clearer precision setting: quantize.
    • This makes export commands easier to read, teach, automate, and maintain.
  • More future-proof deployment workflows ๐Ÿ”ฎ

    • The old half/int8 flags were too limited for newer precision schemes.
    • The new design opens the door to richer hardware-specific export options without adding more confusing flags later.
  • Safer upgrade path โœ…

    • Backward compatibility is preserved, so current projects using half or int8 should keep working while users gradually migrate.
  • Better results in multi-GPU setups ๐Ÿ–ฅ๏ธ

    • Teams validating models across multiple GPUs should now get more accurate confusion matrix visualizations.
  • More stable training for OBB models ๐ŸŽฏ

    • Users working with oriented bounding boxes, especially small objects, may see fewer training failures and more reliable optimization.
  • Fewer frustrating network hangs โฑ๏ธ

    • HUB-related actions and downloads should fail more gracefully instead of getting stuck indefinitely.
  • Improved docs and onboarding ๐Ÿ“š

    • Several updates make deployment, tracking, segmentation guides, and Platform uploads easier to understand for both new and experienced users.

Overall, v8.4.80 is a quality-of-life and deployment-focused release: not a flashy new model drop, but a meaningful improvement for anyone exporting YOLO models to production ๐Ÿš€

What's Changed

New Contributors

Full Changelog: v8.4.79...v8.4.80

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.