核心变化

9月17日,Ultralytics 在 GitHub 发布 YOLO 工具包 v8.4.155 稳定版,已生效。官方发布说明宣布,本次为缺陷修复型更新,核心是修复 data.yaml 语义修改后 labels.cache 被误复用,以及拦截小于 1 的非法训练轮数;同步改进 Windows OpenVINO 推理、苹果 MPS 姿态训练、字体检查与导出路径。经核验,该版本发布时间为 2026-09-17T14:05:11Z(北京时间 22 时 05 分),为正式稳定版而非预发布。

时间与状态

本次发布时间可确认属于 Asia/Shanghai 9月17日当日窗口。GitHub API 记录 published_at 为 2026-09-17T14:05:11Z,对应北京时间 9月17日 22 时 05 分;核心合入 PR #26207 页面显示 2026年9月17日。版本状态为正式稳定版,AGPL-3.0 许可不变,可通过 GitHub Release 与 PyPI 获取,无需等待后续生效条件。

主要修复与影响

  • 1. 数据缓存安全:YOLODataset 缓存哈希新增类别数、关键点配置、检测与姿态用途、单类模式等扫描语义键,修改 data.yaml 后将触发重新扫描,不再静默复用不兼容 labels.cache。 2. 训练校验:epochs 为 0 或负值时在配置阶段直接报错,避免此前静默按 100 轮训练或产生无效输出。 3. 设备与推理:Windows CPU 上 OpenVINO 推理明确请求 FP32,避免低精度内核失败;YOLO26 姿态训练在苹果 MPS 上修正损失权重为 float32,可正常训练。 4. 效率与导出:字体检查优先使用 Matplotlib 缓存列表,减少 macOS 启动开销;LiteRT 转换明确使用评估模式,MNN 示例与 OBB 导出修正边界与属性传递;DDP 按新版 PyTorch 调整同步选项。

据 PR #26207,旧逻辑仅按标签与图像文件校验缓存,修剪类别名或修改 kpt_shape 等语义变更不会使缓存失效,暖缓存被直接使用,报错会延迟到损失计算深处。编辑解释:本次将 verify_args 中的 use_keypoints、nc、nkpt、ndim、single_cls 等纳入哈希,与 Depth、Semantic、Classification 等数据集行为对齐,属于防御性修复。另据发布说明,YOLO_AUTOINSTALL 为 False 时不再自动执行 apt 与 Edge TPU 编译器安装,生产与容器用户将收到明确提示而非环境被改动。

限制与注意事项:本次不含新模型权重与精度声明,不改变 YOLO26 模型结构;发布说明未给出全量基准对比,不应理解为性能大版本升级。Windows、MPS、MNN、LiteRT 与 CoreML 相关改动均限特定后端与任务,多数用户无感知。AGPL-3.0 商业使用仍需按 Ultralytics 许可规则评估。升级前应在测试环境验证数据扫描、训练启动与导出流程,确认 data.yaml 修改后确已重新扫描。

当前行动:中国用户如使用 Ultralytics 本地训练,可在测试环境执行 pip install -U ultralytics 验证 v8.4.155,重点检查修改类别数或关键点后是否重新扫描、非法 epoch 是否被拦截、Windows OpenVINO 与 MPS 任务是否正常;确认无误后再更新生产环境。问题排查可查阅 GitHub Release 的完整变更与对比页,必要时回退到上一稳定版。