# New Release: Ultralytics v8.3.247

**URL:** <https://community.ultralytics.com/t/new-release-ultralytics-v8-3-247/1725>\
**Category:** Discussion\
**Tags:** releases, announcements, ultralytics-official\
**Created:** [January 4, 2026, 1:12pm UTC](https://community.ultralytics.com/t/new-release-ultralytics-v8-3-247/1725 "2026-01-04T13:12:39Z")\
**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 4, 2026, 1:12pm UTC](https://community.ultralytics.com/t/new-release-ultralytics-v8-3-247/1725/1 "2026-01-04T13:12:39Z")

</div>

## 🚀 Ultralytics v8.3.247 is out! 🧪📊

**TL;DR:** Ray Tune + Weights & Biases (W&B) hyperparameter sweeps now get **unique, trial-specific run names** , making tuning runs dramatically easier to track (no more “everything is `train`”) ✅

* * *

## 🌟 New Features (Highlights)

### 🏷 Ray Tune trials now log uniquely to W&B

Ray Tune trials logged to W&B no longer all show up as **`train`** —each trial gets a clear, unique name like `my_run_00000`.

This is handled in **[PR #23084](https://github.com/ultralytics/ultralytics/pull/23084)** by **[@raimbekovm](https://github.com/raimbekovm)**:

- Preserves the original base run name before it’s removed from training args
- Appends a Ray Tune `trial_id` suffix for uniqueness
- Naming format: `{base_name}_{trial_suffix}` ✅

**Why it matters:** your W&B dashboard now mirrors your local Ray Tune trial structure, making sweeps much easier to interpret and compare 🎛

* * *

## 🛰 Improvements

### 📉 Cleaner, faster training uploads to Ultralytics Platform

Training upload & logging quality improvements in **[PR #23105](https://github.com/ultralytics/ultralytics/pull/23105)** by **[@glenn-jocher](https://github.com/glenn-jocher)**:

- Deduplicates plots by type (avoids repeated uploads / noisy results)
- Downsamps large curve payloads (e.g., PR curves) to reduce upload size and speed up logging
- Cleaner console output with a clearer `Platform:` prefix + a direct “view results” URL
- Fewer unnecessary GPU-monitoring warnings (notably on macOS / when CUDA isn’t available) 🧯

* * *

## 🧩 Bug Fixes & Stability

### 🖼 Validation plotting stability fixes

Two small-but-important fixes to prevent rare validation plotting issues:

- Empty prediction guard to prevent crashes in `DetectionValidator.plot_predictions` via **[PR #23112](https://github.com/ultralytics/ultralytics/pull/23112)** by **[@raimbekovm](https://github.com/raimbekovm)**
- Removed a redundant bbox slice during bbox format conversion via **[PR #23093](https://github.com/ultralytics/ultralytics/pull/23093)** by **[@raimbekovm](https://github.com/raimbekovm)**

* * *

## 📦 Docs Updates (Deployment + Clarity)

### 🔧 Export docs: output tensor formats (ONNX/TensorRT)

A new FAQ-style section clarifies typical output tensor structures for **detect/seg/pose** exports—super helpful if you’re writing custom post-processing.

See **[PR #23057](https://github.com/ultralytics/ultralytics/pull/23057)** by **[@raimbekovm](https://github.com/raimbekovm)**.

### 🧹 General documentation & code clarity cleanups

Docstring + clarity improvements (including `Boxes.xywh` examples and clearer tensor dimension naming) in **[PR #23107](https://github.com/ultralytics/ultralytics/pull/23107)** by **[@raimbekovm](https://github.com/raimbekovm)**.

* * *

## ✅ How to Update

```bash
pip install -U ultralytics

```

Then run your usual training/tuning workflows—especially Ray Tune + W&B sweeps—to see the improved run naming in action 🧪

* * *

## 🔎 Changelog + Release Links

You can review the full diff in the GitHub **[v8.3.246…v8.3.247 comparison](https://github.com/ultralytics/ultralytics/compare/v8.3.246...v8.3.247)**, and details in the **[v8.3.247 release page](https://github.com/ultralytics/ultralytics/releases/tag/v8.3.247)**.

* * *

## 💬 Feedback Welcome!

Give v8.3.247 a spin and let us know how it goes—especially if you’re running Ray Tune sweeps or exporting to ONNX/TensorRT. If anything looks off, please share logs + minimal repro steps so we can jump on it quickly 🙌
