New Release: Ultralytics v8.4.38

Ultralytics v8.4.38 is out :rocket:

Summary: Ultralytics v8.4.38 is a stability-focused release centered on more reliable and consistent model export behavior across deployment formats, plus important fixes for training, tracking, and SAM3 workflows. If you export often, train across multiple GPUs, or rely on tracking and prompting features, this update is definitely worth pulling. :raising_hands:

You can explore the full release in the v8.4.38 release notes and see every commit in the full changelog.


Highlights :sparkles:

More reliable export across deployment targets :package:

The biggest change in v8.4.38 is the export cleanup and standardization in PR #24120 by @Laughing-q, with profile details on @Laughing-qโ€™s GitHub.

This work unifies standalone export behavior across:

  • CoreML
  • ONNX
  • OpenVINO
  • TensorFlow
  • TorchScript
  • ExecuTorch
  • Axelera
  • RKNN
  • IMX
  • NCNN
  • MNN
  • Paddle

Key benefits include:

  • CoreML now uses the modelโ€™s real input name instead of assuming "image"
  • clearer standardized argument names like output_file and output_dir
  • better handling for multi-input export cases, especially in ONNX and OpenVINO
  • more robust path handling in TensorFlow and IMX export flows

For deployment teams using Ultralytics YOLO, this should make exports more predictable and much less fragile across runtimes and devices. :white_check_mark:

Training reliability improvements :person_lifting_weights:

This release also addresses a few important training edge cases:

These updates help reduce resume, checkpoint, and multi-GPU surprises in production training pipelines. :gear:

Tracking now behaves more intuitively :bullseye:

track_buffer now consistently works as a true frame count, without hidden FPS scaling, thanks to PR #24247 by @TimSchoonbeek, from @TimSchoonbeek.

That means tracking behavior should now better match exactly what you configure, especially for videos that are not 30 FPS. :movie_camera:

SAM3 fixes for stability and prompting :brain:

Two useful SAM3 fixes landed in this release:

Together these improve numerical behavior and make text-only grounding more consistent. :microscope:


Improvements :wrench:

Export robustness beyond the main refactor

A few additional export-related fixes help round out this release:

Test coverage and internal quality

This release also strengthens test reliability and coverage:


Docs updates :books:

Several documentation improvements shipped alongside the code fixes:


Why this matters :light_bulb:

This is not a flashy feature release, but it is a very practical one:

  • Export users get more consistent outputs across runtimes
  • Training users get fewer edge-case failures when resuming or using DDP
  • Tracking users get track_buffer behavior that matches configuration
  • SAM3 users get more stable and accurate prompt handling

In short: v8.4.38 makes existing workflows safer, clearer, and more production-friendly. :raising_hands:


New contributor :glowing_star:

A big welcome to @TimSchoonbeek, who made their first contribution with PR #24247! :tada:


Try it out :test_tube:

If you want to upgrade locally, you can pull the latest release with:

pip install -U ultralytics

If youโ€™re starting a new project, we recommend using Ultralytics YOLO26 on Ultralytics Platform, which is our latest stable and recommended model family for all use cases. You can also explore the full Ultralytics Platform documentation for annotation, training, deployment, and monitoring workflows.


Feedback welcome :speech_balloon:

Please give v8.4.38 a try and let us know how it performs in your training, export, and deployment pipelines. Feedback, edge cases, and regression reports are always appreciated and help make YOLO better for everyone.