# New Release: Ultralytics v8.3.251

**URL:** <https://community.ultralytics.com/t/new-release-ultralytics-v8-3-251/1739>\
**Category:** Discussion\
**Tags:** releases, announcements, ultralytics-official\
**Created:** [January 10, 2026, 1:12pm UTC](https://community.ultralytics.com/t/new-release-ultralytics-v8-3-251/1739 "2026-01-10T13:12:29Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![glenn-jocher](https://sea1.discourse-cdn.com/flex001/user_avatar/community.ultralytics.com/glenn-jocher/32/83_2.png) [@glenn-jocher](https://community.ultralytics.com/u/glenn-jocher)\
**Post date:** [January 10, 2026, 1:12pm UTC](https://community.ultralytics.com/t/new-release-ultralytics-v8-3-251/1739/1 "2026-01-10T13:12:29Z")

</div>

## 🚀 Ultralytics v8.3.251 is live!

**Quick overview:** v8.3.251 improves training + integration reliability by initializing `Trainer` callbacks earlier (so Ultralytics Platform logging can see your original `data` input like `ul://...`), while also polishing profiling accuracy, tuning stability, and device/dataset/docs support 🧩📊

Update now with `pip install -U ultralytics` 🛠

* * *

## 🌟 New Features & Highlights

### 🧠 Earlier `Trainer` callback initialization (better integrations + traceability)

Callbacks now start **before** dataset resolution (`get_dataset()`), keeping the _original_ `args.data` intact (e.g. `ul://` URIs) and computing DDP/world-size earlier so integrations start at the right time.  
Merged in PR **[#23155](https://github.com/ultralytics/ultralytics/pull/23155)** by [@glenn-jocher](https://github.com/glenn-jocher) ✅

### 🧵 Safer Platform logging for concurrent runs

Training callback state moved from **global variables** to **per-trainer fields** , reducing cross-talk when multiple trainings run in the same process (notebooks/orchestrators/multi-experiment workflows). Events also capture cleaner `trainArgs` and can attach a returned `modelId` for better correlation.  
Included in PR **[#23155](https://github.com/ultralytics/ultralytics/pull/23155)** by [@glenn-jocher](https://github.com/glenn-jocher)

### 🛰 Better support for `ul://` weights loading

`YOLO(...)._load()` now recognizes `ul://` as a valid remote source prefix (alongside `http(s)://`, `rtsp://`, etc.).  
Included in PR **[#23155](https://github.com/ultralytics/ultralytics/pull/23155)** by [@glenn-jocher](https://github.com/glenn-jocher)

* * *

## 📏 Improvements

### 📊 More accurate FLOPs/profiling + benchmark reporting

`model.info()` now accepts an `imgsz` argument, and benchmarks use it so FLOPs reflect the _actual_ input size (not always 640).  
Merged in PR **[#23151](https://github.com/ultralytics/ultralytics/pull/23151)** by [@artest08](https://github.com/artest08) 🎉 (first contribution!)

### 🎛 Tuner stability improvements

- `Tuner` now passes `save_dir` into subprocess runs for consistent output paths
- Plotting warns and safely exits if no valid fitness values exist
- Removed unreachable code in Ray Tune helper (`run_ray_tune`) 🧹  
Merged via PR **[#23147](https://github.com/ultralytics/ultralytics/pull/23147)** by [@raimbekovm](https://github.com/raimbekovm)

### 📟 Edge hardware compatibility: improved Rockchip detection

`is_rockchip()` now handles SoC strings with suffixes like `rk3588-...`, improving detection across more boards.  
Merged in PR **[#23153](https://github.com/ultralytics/ultralytics/pull/23153)** by [@lakshanthad](https://github.com/lakshanthad)

* * *

## 📚 Docs & Dataset Updates

- 🖥⚡ New NVIDIA DGX Spark guide for running **Ultralytics YOLO11** (TensorRT tips + benchmarks) in PR **[#23144](https://github.com/ultralytics/ultralytics/pull/23144)** by [@onuralpszr](https://github.com/onuralpszr)
- 🎥 VOC docs add an embedded training video in PR **[#23154](https://github.com/ultralytics/ultralytics/pull/23154)** by [@RizwanMunawar](https://github.com/RizwanMunawar)
- 📝 Kaggle docs code-block formatting/clarity improvements in PR **[#23149](https://github.com/ultralytics/ultralytics/pull/23149)** by [@glenn-jocher](https://github.com/glenn-jocher)
- 🧩 TT100K dataset YAML + conversion script improvements (structure/metadata/stable class mapping) included in this release
- 🔧 SimpleNamespace task arg fix in PR **[#23148](https://github.com/ultralytics/ultralytics/pull/23148)** by [@glenn-jocher](https://github.com/glenn-jocher)

* * *

## 🐛 Bug Fixes / Maintenance

- Removed dead code in `run_ray_tune` via PR **[#23147](https://github.com/ultralytics/ultralytics/pull/23147)** by [@raimbekovm](https://github.com/raimbekovm)

* * *

## 🔗 Release Links

Check the GitHub release notes in the official [Ultralytics v8.3.251 release](https://github.com/ultralytics/ultralytics/releases/tag/v8.3.251), and browse all diffs in the [full changelog from v8.3.250 → v8.3.251](https://github.com/ultralytics/ultralytics/compare/v8.3.250...v8.3.251).

* * *

## 🧪 Try it and share feedback

If you run training in notebooks, orchestration systems, or multiple concurrent experiments, this release should feel noticeably more reliable 🧵✅

Drop your results, regressions, or questions in the thread—community feedback helps us keep Ultralytics YOLO11 tooling sharp for everyone.
