🌟 Summary
Ultralytics 8.3.201 focuses on smoother TensorFlow exports, more reliable Docker-based exports, improved CLI help for Ultralytics HUB, and helpful docs refinements — all aimed at making training and deployment more stable and user-friendly. 🚀
📊 Key Changes
-
TensorFlow export compatibility expanded (primary change) 🔧
- Relaxed
ai-edge-litert
requirement to>=1.2.0
for non-macOS platforms; macOS remains pinned to<1.4.0
to avoid known issues. - Minor typing improvement:
check_requirements()
now acceptstuple[str]
as well asPath | str | list[str]
. - See details in the current PR: Expand TensorFlow ai-edge-litert≥1.2 support (non-macOS) by @glenn-jocher.
- Relaxed
-
Export robustness and Docker reliability 🐳
- Exporter now validates non-zero file size and correctly logs tuple-returning exporters for accurate success reporting: Assert non-zero filesize in Exporter by @glenn-jocher.
- Docker export images install TensorRT on-demand (no pre-install) to match runtime CUDA, reducing version conflicts: Use AutoInstall for TensorRT package by @Y-T-G.
- Dockerfiles export using a local temp path (
tmp/yolo11n.pt
) for EdgeTPU/NCNN/IMX steps, improving stability and reproducibility: Export in Dockerfile /tmp dir by @glenn-jocher.
-
Better CLI help for Ultralytics HUB 🧭
yolo -h
now shows the correct context-aware help for HUB subcommands by adjusting help precedence: Display help message with yolo -h by @Y-T-G.
-
Training flexibility for multimodal (YOLOE) workflows 🧠
- Removed training-mode assertion to allow
get_text_pe()
during training: Remove training mode assertion in get_text_pe() by @Y-T-G.
- Removed training-mode assertion to allow
-
Dataset reliability fix 📦
- Correct CSV parsing for SKU-110K (no-header CSVs) to prevent misaligned columns: Fix CSV read error in SKU-110K.yaml by @Y-T-G.
-
Documentation improvements 📚
- New in-depth guide: Model YAML Configuration Guide — architecture structure, scaling, TorchVision backbones, and custom modules: Docs PR by @Y-T-G.
- Augmentation docs now show a “Supported Tasks” column to clarify applicability across detect/segment/pose/OBB/classify: Add Supported Tasks column by @Y-T-G.
🎯 Purpose & Impact
-
Smoother TensorFlow export workflows ✅
- Fewer dependency conflicts and better forward-compatibility for ONNX→TensorFlow exports on Linux/Windows.
- macOS stability preserved with a safe upper bound on
ai-edge-litert
. 🛡️
-
More reliable and portable Docker builds 🔁
- On-demand TensorRT avoids CUDA/TensorRT mismatches.
- Temp-path exports reduce flakiness and speed up CI/CD builds.
-
Clearer, more helpful CLI and logs 🗺️
yolo -h
behaves as users expect, especially for Ultralytics HUB commands.- Exporter now catches empty outputs early and logs the correct paths and sizes.
-
Enhanced training flexibility and dataset setup 🧪
- Enables text positional embeddings retrieval during training for multimodal YOLOE scenarios.
- SKU-110K dataset downloads parse cleanly, reducing setup hiccups.
-
Easier customization and configuration 📘
- The Model YAML guide and updated augmentation reference make it simpler to design, scale, and deploy custom YOLO11 models with confidence.
Tip: To try TensorFlow SavedModel export with the updated dependency handling:
pip install ultralytics
yolo export model=yolo11n.pt format=saved_model
What's Changed
- Fix CSV read error in SKU-110K.yaml download script by @Y-T-G in #22094
- Remove training mode assertion in
get_text_pe()
by @Y-T-G in #22076 - Update Dockerfile-export to use AutoInstall for TensorRT package by @Y-T-G in #22084
- Export in Dockerfile
/tmp
dir by @glenn-jocher in #22107 - Display help message with
yolo -h
by @Y-T-G in #22102 - Assert non-zero filesize in Exporter by @glenn-jocher in #22108
- Add "Supported Tasks" column to augmentation arguments table by @Y-T-G in #21900
- Docs: Add comprehensive model YAML configuration guide by @Y-T-G in #21830
ultralytics 8.3.201
Expand TensorFlowai-edge-litert≥1.2
support (non-macOS) by @glenn-jocher in #22110
Full Changelog: v8.3.200...v8.3.201