Title: Ultralytics v8.3.195: Faster startup, smarter checkpoints, and OBB fixes
Summary
Ultralytics v8.3.195 focuses on speed and reliability. We removed the external py-cpuinfo dependency in favor of a built-in, cross-platform CPU info utility for faster startup and leaner installs, alongside fixes for checkpoints, OBB predictions, and dataset verification. YOLO11 remains the latest stable and recommended model for all use cases.
New Features
- Zero-dependency CPU info (priority)
- Introduces
ultralytics.utils.cpu.CPUInfo
for consistent, fast CPU detection across macOS/Linux/Windows. This change removes the py-cpuinfo dependency and updatesget_cpu_info()
to useCPUInfo.name()
. See details in the submission by Glenn Jocher in PR #21972: Zero-dependency 30X faster CPU info, with author credit to Glenn Jocher (@glenn-jocher).- Read the change: PR #21972: Zero-dependency 30X faster CPU info
- Introduces
Improvements
- Checkpoint loading restored all args
model.args
now preserves the full argument dictionary on load; theDEFAULT_CFG_KEYS
filter was removed. Thanks to Y-T-G in PR #21968: Restore all arguments on checkpoint load.- Review the improvement: PR #21968: Restore all arguments on checkpoint load
- Typing modernization
- Migrated legacy
typing
generics (List/Dict/β¦) to Python 3.9 built-ins (list
,dict
, β¦). No behavior changes; cleaner codebase. See PR #21961: Replace Uppercase Python 3.8 Types β 3.9 types by Glenn Jocher (@glenn-jocher).- See the refactor: PR #21961: Replace Uppercase Python 3.8 Types β 3.9 types
- Migrated legacy
Bug Fixes
- OBB prediction fix
- Disabled inappropriate box clipping for OBB when
xywh=True
inscale_boxes
to prevent width/height distortion. Thanks to Y-T-G in PR #21950: Disable box clipping for OBB predictions.- Inspect the fix: PR #21950: Disable box clipping for OBB predictions
- Disabled inappropriate box clipping for OBB when
- Dataset verification fix
- Corrected a typo in
verify_image_label
to use thekeypoint
parameter, resolving shape errors with pose datasets. Thanks to first-time contributor LH-and-FPGA in PR #21965: Fix keypoints typo in verify_image_label.- View the patch: PR #21965: Fix keypoints typo in verify_image_label
- Corrected a typo in
Purpose & Impact
- Faster startup and leaner installs
- Eliminates a dependency and dramatically accelerates CPU info retrieval, especially noticeable on cold starts and lightweight scripts. Fewer environment conflicts and simpler deployments for constrained or offline environments.
- More reliable training/resume/export
- Preserving all checkpoint args improves compatibility with custom configs, resume workflows, exports, and Ultralytics HUB pipelines. Note:
model.args
may include additional keys; ensure downstream code handles them gracefully.
- Preserving all checkpoint args improves compatibility with custom configs, resume workflows, exports, and Ultralytics HUB pipelines. Note:
- More accurate predictions and verification
- Correct OBB
xywh
handling prevents subtle geometry errors. Pose dataset verification is more robust due to thekeypoint
variable fix.
- Correct OBB
Quick Tip
Get a human-readable CPU name anywhere in your code:
from ultralytics.utils.cpu import CPUInfo
print(CPUInfo.name()) # e.g., "Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz"
How to Update
- Upgrade in one line:
pip install -U ultralytics
- Run your existing YOLO workflows as usual. YOLO11 is the recommended default for detection, segmentation, pose, classification, and OBB tasks.
Call for Feedback
Weβd love your feedback on the new CPU utility, checkpoint arg preservation, and OBB behavior. Share your thoughts in our Discussions forum or open an issue directly from the release page for v8.3.195.
Credits
- Zero-dependency CPU info and typing modernization by Glenn Jocher (@glenn-jocher) β see PR #21972 and PR #21961.
- Checkpoint argument restoration and OBB prediction fix by Y-T-G β see PR #21968 and PR #21950.
- Dataset verification fix by first-time contributor LH-and-FPGA β see PR #21965. Thank you for contributing!
Whatβs Changed
- Replace Uppercase Python 3.8 Types β 3.9 types in PR #21961 by Glenn Jocher (@glenn-jocher)
- Restore all arguments on checkpoint load in PR #21968 by Y-T-G
- Disable box clipping for OBB predictions in PR #21950 by Y-T-G
- Fix keypoints typo in verify_image_label in PR #21965 by LH-and-FPGA
- Zero-dependency 30X faster CPU info in PR #21972 by Glenn Jocher (@glenn-jocher)
New Contributor
- Welcome and thanks to LH-and-FPGA for their first contribution, detailed in PR #21965: Fix keypoints typo in verify_image_label.
Release Links
- Explore the full changelog in the comparison from v8.3.194 to v8.3.195.
- Read the official release notes on the v8.3.195 release page.
Thanks for being part of the YOLO community and for helping us make Ultralytics faster and more reliable with every release. Enjoy v8.3.195!