feat(deps): update dependency ultralytics ( 8.3.252 → 8.4.5 ) - #256
Merged
Conversation
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 14, 2026 12:19
98e0d9a to
02a75ec
Compare
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 15, 2026 00:44
02a75ec to
f9edd86
Compare
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 15, 2026 12:19
f9edd86 to
62391ab
Compare
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 16, 2026 00:47
62391ab to
a4d0164
Compare
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 16, 2026 12:19
a4d0164 to
dae91ca
Compare
| datasource | package | from | to | | ---------- | ----------- | ------- | ----- | | pypi | ultralytics | 8.3.252 | 8.4.5 |
jazzlyn-bot
Bot
force-pushed
the
renovate/ultralytics-8.x
branch
from
January 17, 2026 00:44
dae91ca to
405c275
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==8.3.252→==8.4.5Release Notes
ultralytics/ultralytics (ultralytics)
v8.4.5: -ultralytics 8.4.52D PoseResult.summary()support (#23293)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics 8.4.5 makes 2D pose
Results.summary()safer and more compatible by correctly handling keypoints with or without visibility flags 🧍♂️✅📊 Key Changes
Results.summary()checkskpt.has_visibleand only outputs"visible"when it exists (otherwise returns just"x"and"y"), preventing crashes in mixed keypoint formats.8.4.4→8.4.5.hub-sdkextra frompyproject.toml(simplifies installs for users who don’t need it) 📦✂️.🎯 Purpose & Impact
Results.summary()won’t fail when datasets/models omit visibility/confidence per keypoint (common in non-COCO formats).What's Changed
ultralytics 8.4.52D PoseResult.summary()support by @glenn-jocher in #23293Full Changelog: ultralytics/ultralytics@v8.4.4...v8.4.5
v8.4.4: -ultralytics 8.4.4MuSGD optimizer scale factor update (#23279)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics v8.4.4 refines MuSGD training behavior (better scaling for short vs. long runs) and includes several quality-of-life fixes for exports, segmentation outputs, logging, and filesystem side effects 🚀🧠
📊 Key Changes
🧠 MuSGD optimizer scaling update (PR #23279 by @Laughing-q)
MuSGD scale factors are now chosen more appropriately based on total training iterations:
(muon=0.1, sgd=1.0)(muon=0.5, sgd=0.5)This is a behavior change in
ultralytics/engine/trainer.py.📷 Sony IMX500 export compatibility improved (PR #23266 by @Laughing-q)
🧩 Segmentation proto/output handling fixed across backends (PR #23241 by @Laughing-q)
📁 No more empty run folders when
save=False(PR #23268 by @Y-T-G)get_save_dir()no longer auto-creates directories while computing a unique run path—reduces unwanted “predict” folders appearing on disk 🧹📈 TensorBoard OBB graph logging made safer (PR #23276 by @Y-T-G)
TensorBoard graph logging now uses
smart_inference_mode()to avoid gradient tracking—often less memory/overhead and fewer callback edge cases ⚙️🔗 Docs branding/link refresh (PR #23283 by @glenn-jocher)
Multiple repo/docs links now point to the Ultralytics Platform entry point (and wording updated accordingly) 🧭
🎯 Purpose & Impact
🚀 More consistent training dynamics with MuSGD
If you use MuSGD (muon/sgd), you may see improved stability and convergence depending on whether your run is short or long—especially around the 10k-iteration threshold 🧠📉
✅ Fewer export surprises (IMX500 + segmentation exports)
IMX500 exports should fail less often due to minor layer-count differences, and segmentation outputs should be more consistent across PyTorch/exported/TF backends 📦🧩
🧹 Cleaner local runs and tooling behavior
Computing a save directory no longer creates folders prematurely, which is especially helpful for dry runs, scripts, and
save=Falsepredictions 📁✨⚡ More robust logging during training
TensorBoard graph logging becomes less intrusive and more reliable (particularly for OBB setups) 📊🛡️
What's Changed
YOLOv8/YOLO11IMX export by @Laughing-q in #23266mkdirby @Y-T-G in #23268YOLO26nfor benchmark tests by @Laughing-q in #23241ultralytics 8.4.4MuSGD optimizer scale factor update by @Laughing-q in #23279Full Changelog: ultralytics/ultralytics@v8.4.3...v8.4.4
v8.4.3: -ultralytics 8.4.3Faster Platform NDJSON downloads (#23257)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics
v8.4.3boosts Ultralytics Platform NDJSON dataset downloads/conversion speed 🚀, improves training metric correctness 🧠, and refreshes defaults/docs around YOLO26 📚.📊 Key Changes
aiohttponly when NDJSON conversion is used (faster startup, fewer unnecessary deps) 📦8.4.2 → 8.4.3🔖ULTRALYTICS_PLATFORM_URLto point callbacks/links to staging or local environments 🧪YOLO()/CLI fallback model becomesyolo26n.ptand many docs/examples follow suit ✅rle_losswhen the model actually supports it (avoids confusing metrics) 🧾Results.summary()entries — PR #23218 by @xusuyong🎯 Purpose & Impact
ULTRALYTICS_PLATFORM_URLmakes it much easier to test integrations without patching code.What's Changed
warmup_lrby @Laughing-q in #23234IMXinference wrapper by @Laughing-q in #23235README.mdmetrics table by @Laughing-q in #23238yolo26nin docs and examples by @Laughing-q in #23242ultralytics 8.4.3Faster Platform NDJSON downloads by @glenn-jocher in #23257New Contributors
Full Changelog: ultralytics/ultralytics@v8.4.2...v8.4.3
v8.4.2: -ultralytics 8.4.2Fix Platform Classify training (#23217)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics v8.4.2 mainly fixes Ultralytics Platform (
ul:/// NDJSON) classification training by converting datasets into the correct on-disk layout and validating them properly, plus a few quality-of-life and docs/CI tweaks 🛠️✅📊 Key Changes
task == "classify"and creates an ImageNet-style folder layout:{split}/{class_name}/...(instead ofimages/+labels/used for detection-style tasks).data.yaml,images/{split}/,labels/{split}/).Trainer.get_dataset()now always resolvesul:///.ndjsoninto a local dataset first, then runs the correct dataset validation for the task.Results.summary()now returns top-5 (PR #23215, @glenn-jocher) 🧠📋summary()is intended to return top-5 classes + confidences instead of only top-1.save_dirreliably (PR #23191, @Y-T-G) 📁🔧save_diris now treated as an allowed override/config key, so setting output directories via CLI/Python overrides is more consistent.🎯 Purpose & Impact
ul://...) or.ndjsonexports, this release prevents failures caused by the wrong dataset folder structure and ensures the trainer checks the right dataset type.Results.summary()output in this specific tag)save_dirwithout it being ignored or flagged.✅ If you’re using Ultralytics Platform + classification, v8.4.2 is a “must update”.
What's Changed
save_dirfrom argument validation by @Y-T-G in #23191ultralytics 8.4.2Fix Platform Classify training by @glenn-jocher in #23217Full Changelog: ultralytics/ultralytics@v8.4.1...v8.4.2
v8.4.1: -ultralytics 8.4.1Re-enable NCNN exports for ARM64 (#23211)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics v8.4.1 brings back NCNN export + inference on ARM64 (Apple Silicon/ARM servers/edge devices) 📱⚙️, plus stability fixes for pose/seg training 🛠️ and a big docs/benchmarks cleanup 📚✨.
📊 Key Changes
ultralytics/engine/exporter.py)ultralytics/nn/autobackend.py)ultralytics/utils/benchmarks.py)protounpacking and more robust handling when there are no foreground masks (PR #23205 and PR #23197) 🧩model.fuse()is now idempotent (won’t re-fuse an already fused model), reducing wasted time and avoiding potential side effects (PR #23189) 🔧🎯 Purpose & Impact
If you’re exporting to NCNN for mobile/edge/ARM environments, you can now run export, inference, and benchmarks without being blocked by Ultralytics.
Better handling of extreme/invalid values means more stable long trainings (especially with small images, tricky batches, or multi-GPU edge cases).
Re-enabled CI jobs (including Raspberry Pi) should catch platform-specific issues earlier, improving overall release stability.
Updated tables/links reduce confusion when choosing models (YOLO11 vs YOLO26 vs YOLOE-26) and following copy-paste examples.
If you want, tell me your target device (e.g., Raspberry Pi 5, Apple M2, ARM server) and whether you’re exporting YOLO11 or YOLO26, and I’ll suggest the safest export settings for NCNN ⚙️📦.
What's Changed
RealNVPandRLELossby @lmycross in #23186model.fuse()statement by @Laughing-q in #23189sem_maskserror and incorrectprotounwrap by @Y-T-G in #23197int8=Trueand updatetflitewrapper by @Laughing-q in #23185PoseLoss26to prevent crash by @Miaoge-Ge in #23205ultralytics 8.4.1Re-enable NCNN exports for ARM64 by @lakshanthad in #23211New Contributors
Full Changelog: ultralytics/ultralytics@v8.4.0...v8.4.1
v8.4.0: -ultralytics 8.4.0YOLO26 Models Release (#23176)Compare Source
🌟 Summary
Ultralytics YOLO26 has arrived. Re-engineered from the ground up by @glenn-jocher, @Laughing-q, and the Ultralytics YOLO team, YOLO26 is purpose-built for edge and low-power environments. This release introduces a streamlined, native end-to-end NMS-free architecture, delivering faster, lighter, and more accessible deployment across all platforms.
📊 What’s New
🎯 Impact & Vision
What's Changed
ultralytics 8.4.0YOLO26 Models Release by @glenn-jocher in #23176Full Changelog: ultralytics/ultralytics@v8.3.253...v8.4.0
v8.3.253: -ultralytics 8.3.253Add support to select Vulkan device when using NCNN (#23164)Compare Source
🌟 Summary (single-line synopsis)
Ultralytics 8.3.253 adds explicit Vulkan GPU device selection for NCNN inference (plus safer PaddlePaddle/NCNN dependency handling) to improve cross-vendor GPU acceleration and reliability ⚡🖥️🛠️
📊 Key Changes
device="vulkan:0"ordevice="vulkan:1"to choose which Vulkan-capable GPU NCNN uses (helpful on AMD/Intel/non-NVIDIA systems and multi-GPU setups).select_device()now accepts"vulkan..."device strings and leaves them unchanged so they flow cleanly into inference setup.ultralytics/nn/autobackend.py) now:devicestarts with"vulkan",net.set_vulkan_device(<id>),device=torch.device("cpu")to keep the rest of the pipeline consistent (NCNN handles the GPU work internally).device=vulkan:<id>.!=3.3.0) in both export and inference paths due to an upstream breakage 🛑.🎯 Purpose & Impact
Example usage (NCNN model with Vulkan):
What's Changed
ultralytics 8.3.253Add support to select Vulkan device when using NCNN by @Faerbit in #23164New Contributors
Full Changelog: ultralytics/ultralytics@v8.3.252...v8.3.253
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.