Published September 6, 2025
| Version v8.3.195
Software
Open
Ultralytics YOLO
Description
🌟 Summary
Ultralytics 8.3.195 boosts startup speed and reliability by replacing the py-cpuinfo dependency with a built-in, cross‑platform CPU info utility—plus several quality fixes for checkpoints, OBB predictions, and dataset verification. 🚀
📊 Key Changes
Zero-dependency CPU info (priority)
- Replaced external py-cpuinfo with a lightweight internal utility
ultralytics.utils.cpu.CPUInfo
for fast, consistent CPU detection across macOS/Linux/Windows. See reference docs for CPUInfo added to the site. - Updated
get_cpu_info()
to useCPUInfo.name()
. - Removed
py-cpuinfo
from project dependencies. - PR: ultralytics 8.3.195 Zero-dependency 30X faster CPU info by @glenn-jocher (view PR #21972) ⚡
- Replaced external py-cpuinfo with a lightweight internal utility
Checkpoint loading improved
- Restores all checkpoint arguments on load (
model.args
now preserves the full args dict;DEFAULT_CFG_KEYS
filter removed). - PR: Restore all arguments on checkpoint load by @Y-T-G (view PR #21968) 🧠
- Restores all checkpoint arguments on load (
OBB prediction fix
- Disabled inappropriate box clipping for OBB when using
xywh=True
inscale_boxes
to prevent width/height distortion. - PR: Disable box clipping for OBB predictions by @Y-T-G (view PR #21950) 📐
- Disabled inappropriate box clipping for OBB when using
Dataset verification bugfix
- Fixed a typo in
verify_image_label
using the correctkeypoint
parameter (prevents shape errors on pose datasets). - PR: Fix
keypoints
typo by @LH-and-FPGA (view PR #21965) 🩹
- Fixed a typo in
Typing modernization
- Switched legacy
typing
generics (List/Dict/...) to built-inlist/dict/...
across code and examples (no behavior change). - PR: Replace Uppercase Python 3.8 Types → 3.9 types by @glenn-jocher (view PR #21961) 🧹
- Switched legacy
🎯 Purpose & Impact
Faster startup and leaner installs
- Eliminates a dependency and accelerates CPU info retrieval (notable improvement on cold starts and scripts) ⚡
- Fewer environment conflicts and simpler deployments (especially in constrained or offline environments) 📦
More reliable training/resume/export
- Preserving all checkpoint args improves compatibility with custom configs, training resumption, exports, and Ultralytics HUB workflows 🔁
- Note:
model.args
may contain additional keys—ensure downstream code can handle them gracefully ⚠️
More accurate predictions and verification
- Correct handling of OBB
xywh
boxes prevents subtle geometry errors in outputs ✅ - Pose dataset checks are more robust thanks to the keypoint variable fix 🧪
- Correct handling of OBB
Quick tip:
- Get a human-readable CPU name anywhere in code:
from ultralytics.utils.cpu import CPUInfo
print(CPUInfo.name()) # e.g., "Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz"
Enjoy a snappier, more robust Ultralytics experience with 8.3.195! ✨
What's Changed
- Replace Uppercase Python 3.8 Types → 3.9 types by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/21961
- Restore all arguments on checkpoint load by @Y-T-G in https://github.com/ultralytics/ultralytics/pull/21968
- Disable box clipping for OBB predictions by @Y-T-G in https://github.com/ultralytics/ultralytics/pull/21950
- Fix
keypoints
typo inverify_image_label
by @LH-and-FPGA in https://github.com/ultralytics/ultralytics/pull/21965 ultralytics 8.3.195
Zero-dependency 30X faster CPU info by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/21972
New Contributors
- @LH-and-FPGA made their first contribution in https://github.com/ultralytics/ultralytics/pull/21965
Full Changelog: https://github.com/ultralytics/ultralytics/compare/v8.3.194...v8.3.195
Notes
Files
ultralytics/ultralytics-v8.3.195.zip
Files
(2.5 MB)
Name | Size | Download all |
---|---|---|
md5:4340fbbdff62b98b73d551b6faeb0122
|
2.5 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/ultralytics/ultralytics/tree/v8.3.195 (URL)
Software
- Repository URL
- https://github.com/ultralytics/ultralytics