π Summary (single-line synopsis)
Ultralytics v8.4.3 boosts Ultralytics Platform NDJSON dataset downloads/conversion speed π, improves training metric correctness π§ , and refreshes defaults/docs around YOLO26 π.
π Key Changes
- π Faster NDJSON β YOLO dataset conversion (Ultralytics Platform data) β PR #23257 by @glenn-jocher
- Lazy-loads
aiohttponly when NDJSON conversion is used (faster startup, fewer unnecessary deps) π¦ - Simplifies async image download code and improves concurrency scaling to match dataset size β‘
- Small robustness improvement for Platform URL handling π
- Version bump:
8.4.2 β 8.4.3π
- Lazy-loads
- π Configurable Platform base URL β PR #23256 by @glenn-jocher
- Adds
ULTRALYTICS_PLATFORM_URLto point callbacks/links to staging or local environments π§ͺ
- Adds
- π·οΈ Defaults and examples move to YOLO26 β PR #23242 by @Laughing-q
- Default
YOLO()/CLI fallback model becomesyolo26n.ptand many docs/examples follow suit β
- Default
- βοΈ Training optimizer and warmup logic made more reliable β PR #23234 by @Laughing-q
- Parameter groups are explicitly labeled; warmup LR now targets the bias group by name (not by position) π₯
- βAutoβ optimizer strategy simplified around MuSGD with improved defaults ποΈ
- π§ Pose training logs are more accurate β PR #23230 by @lmycross
- Only reports
rle_losswhen the model actually supports it (avoids confusing metrics) π§Ύ
- Only reports
- π§© IMX inference/export consistency improvements β PR #23235 by @Laughing-q
- Anchor/stride refresh is more robust for changing input shapes; IMX decode path simplified π§
- β
Fix duplicated
Results.summary()entries β PR #23218 by @xusuyong- Prevents duplicated rows in summaries (cleaner analytics/logging) π§Ή
- π Benchmark tables clarified with end-to-end (e2e) metrics β PR #23238
- README tables now clearly distinguish e2e evaluation metrics for YOLO26 tasks π
- π Raspberry Pi 5 guide updated with YOLO26 benchmarks β PR #23227
- Refreshes benchmark formats and adds ExecuTorch results π
π― Purpose & Impact
- π If you use Ultralytics Platform datasets (NDJSON): faster, cleaner dataset conversion and downloads means quicker βtime-to-trainβ and fewer download bottlenecksβespecially on larger datasets.
- π¦ If you donβt use NDJSON conversion: lazy dependency loading reduces unnecessary imports and can make the package feel lighter/faster in common workflows.
- π For teams using staging/local Platform:
ULTRALYTICS_PLATFORM_URLmakes it much easier to test integrations without patching code. - βοΈ For training reliability: optimizer/warmup changes reduce edge-case misconfiguration and make training behavior more predictable across models/runs.
- π§Ύ For pose users: loss reporting now matches model capability, improving trust in logs/metrics during training.
- π For new users: YOLO26 becomes the βdefault pathβ in examples, reducing confusion about which model name to start with.
What's Changed
- Fix: dynamically adapt pose loss names to model type by @lmycross in #23230
- Update auto optimizer strategy and fix mismatched
warmup_lrby @Laughing-q in #23234 - Update
IMXinference wrapper by @Laughing-q in #23235 - Update
README.mdmetrics table by @Laughing-q in #23238 - Update Raspberry Pi 5 docs with YOLO26 benchmarks by @lakshanthad in #23227
- Use
yolo26nin docs and examples by @Laughing-q in #23242 - Remove duplicate result appending logic by @xusuyong in #23218
- Platform URL ENVs by @glenn-jocher in #23256
ultralytics 8.4.3Faster Platform NDJSON downloads by @glenn-jocher in #23257
New Contributors
Full Changelog: v8.4.2...v8.4.3