Ultralytics v8.4.56 is out 
A quick new release is here! Ultralytics v8.4.56 focuses on more reliable QNN export, especially for users deploying Ultralytics YOLO models like YOLO26 to Qualcomm and edge workflows. The main win in this release is better compatibility with newer onnxruntime-qnn packaging, with the biggest benefit on Linux x86-64 systems. ![]()
Summary
This release is a stability and export compatibility update rather than a new model or training feature release.
With v8.4.56, Ultralytics now handles both common QNN packaging styles correctly:
- Built-in provider wheels where
QNNExecutionProvideris already included - Plugin-based wheels where the provider still needs manual registration
That means fewer export-time failures, smoother deployment setup, and better portability across environments. ![]()
New Features
Smarter QNN export handling 
Ultralytics now detects whether onnxruntime-qnn exposes QNNExecutionProvider as a built-in provider or as a plugin, instead of always assuming plugin registration is required.
This improves reliability for users exporting YOLO models for Qualcomm deployment pipelines and edge devices.
Improvements
Better compatibility with newer onnxruntime-qnn wheels 
As QNN packaging evolves across platforms and releases, export behavior now adapts automatically to the installed runtime layout.
This is especially helpful for users working with newer runtime wheels where the previous registration path could cause issues.
More robust Linux x86-64 export flow 
On some Linux setups, attempting to register a built-in provider as a plugin could trigger export failures due to undefined symbol errors. This release avoids that path when the provider is already available internally.
Clearer internal documentation 
Comments and internal descriptions were updated to reflect the fact that QNN may be exposed either as a built-in ONNX Runtime provider or via a plugin-based setup.
Bug Fixes
Fixed QNN export with built-in provider wheels 
This release includes the fix from PR #24618 by @glenn-jocher, which resolves QNN export failures when using built-in provider wheels.
Who benefits most? 
This update will be most noticeable if you are:
- Exporting YOLO models to QNN / Qualcomm targets
- Working in Linux-based export environments
- Using newer versions of
onnxruntime-qnn - Building deployment pipelines for mobile, embedded, or edge hardware
If your workflow is mostly standard training and inference, day-to-day behavior will likely remain unchanged β but deployment users should see a smoother experience. ![]()
Try it out
You can upgrade with:
pip install -U ultralytics
Then continue exporting your models as usual.
Useful links
You can explore the complete changes in the full changelog for v8.4.56, or view the published release on GitHub Releases for v8.4.56.
Feedback welcome
Please give v8.4.56 a try, especially if youβre using QNN export in production or edge deployment workflows, and let us know how it works for you. Your feedback helps the Ultralytics team and community keep improving YOLO for everyone.