在 LiteRT 上导出 Ultralytics YOLO
了解全新的 LiteRT 导出集成如何将 Ultralytics YOLO 推理以单一统一的格式引入移动端、嵌入式、边缘及浏览器环境。

在 Ultralytics,我们观察到一种日益增长的趋势,即直接在所需的设备上运行 计算机视觉模型,而不是依赖云端连接。移动应用、嵌入式系统、物联网传感器和基于浏览器的工具越来越需要在本地运行推理,通常是在功耗和计算资源受限的硬件上。这就是为什么我们很高兴地宣布,Ultralytics YOLO 模型现在可以直接导出到 LiteRT。
满足这一需求需要一种能够在所有这些环境中通用的模型格式,而无需开发者为每种环境维护单独的导出流水线。
这种功能之前通过非官方的第三方软件包存在,但这次新的集成是我们与 Google 官方合作的成果。我们与 LiteRT 团队密切合作,构建了一个端到端的流水线,用于通过 LiteRT 将 Ultralytics YOLO 模型导出到 TFLite。通过这种集成,单个导出的 Ultralytics YOLO 模型即可部署在移动、嵌入式、边缘和浏览器环境中,将旧版 TFLite 和 TF.js 导出格式之前分别处理的内容统一为一个精简的格式。
Link to this section什么是 LiteRT?#
LiteRT(Lite Runtime 的缩写)是 Google 面向端侧 AI 的高性能运行时。它是 TensorFlow Lite (TFLite) 的下一代产品和新名称,运行开发者已经熟悉的相同 .tflite 模型格式。
LiteRT 是专门为端侧推理设计的开源框架,也称为 边缘计算。它为开发者提供了在移动设备、嵌入式设备、物联网设备、传统计算机以及通过 LiteRT.js 直接在网页浏览器和 Node.js 中执行训练模型所需的工具。LiteRT 导出格式针对 目标检测、分割、姿态估计 和 分类 等任务优化了模型,使它们能够在各种设备上快速离线运行。
Link to this section为什么要将 Ultralytics YOLO 模型导出到 LiteRT?#
现在,单一模型格式即可覆盖所有部署目标:
• 移动端和嵌入式。 Android、iOS、桌面、嵌入式 Linux 和微控制器 (MCU)。
• 边缘加速器。 兼容 Coral Edge TPU 以实现进一步加速。
• 浏览器和 Node.js。 LiteRT.js 通过 WebGPU/WASM 加速在 Web 上运行相同的 .tflite 模型,无需再进行单独的 TensorFlow.js 导出。
• 桌面端
这种整合至关重要,因为它消除了生产部署中真正的问题来源。团队现在无需为移动端维护一个导出流水线,为浏览器维护第二个,再为边缘加速器维护第三个,而是一次导出即可在所有 LiteRT 运行的环境中进行部署。
Link to this sectionLiteRT 模型的主要特性#
• 端侧优化。 通过在本地处理数据减少延迟,通过不传输个人数据增强隐私,并最小化模型大小以节省空间。
• 多平台支持。 可在 Android、iOS、嵌入式 Linux、微控制器和现代 Web 浏览器上运行。
• 硬件加速。 利用 CPU 上的 XNNPACK,以及通过 OpenCL、Metal 和 WebGPU 进行 GPU 加速。GPU 加速默认以 FP16 运行以提高速度。
• 量化。 支持 FP32、静态 INT8、静态 INT16 激活和动态 INT8,以压缩模型并以极小的精度损失加快推理速度。
• 多语言支持。 兼容 Java/Kotlin、Swift、Objective-C、C++、Python 和 JavaScript。
Link to this sectionLiteRT 导出入门#
Ultralytics Python 软件包 和 Ultralytics Platform 为跨所有五种计算机视觉任务训练、评估和部署 YOLO 模型提供了完整、统一的环境。LiteRT 导出格式支持 Export、Predict 和 Validate 模式,因此模型导出后即可立即在本地用于推理或精度验证。
导出模型只需一个命令:
from ultralytics import YOLO
\# Load a YOLO26 model
model \= YOLO("yolo26n.pt")
\# Export the model to LiteRT format
model.export(format="litert") \# creates 'yolo26n.tflite'对于部署到受限硬件的团队,LiteRT 还支持量化导出,允许模型进行压缩,从而以极小的精度损失实现更快的推理:
from ultralytics import YOLO
model \= YOLO("yolo26n.pt")
\# Dynamic INT8: int8 weights, FP32 activations \- no calibration data needed
model.export(format="litert", quantize="w8a32")
\# Static INT8: int8 weights \+ int8 activations \- needs calibration data
model.export(format="litert", quantize=8, data="coco8.yaml")模型导出后,可以直接加载并运行以进行推理:
from ultralytics import YOLO
\# Load the exported LiteRT model
model \= YOLO("yolo26n.tflite")
\# Run inference
results \= model("https://ultralytics.com/images/bus.jpg")目前 Linux x86_64 和 macOS 支持 LiteRT 导出。导出的 .tflite 模型本身可以在所有 LiteRT 支持的平台上运行,包括移动设备、嵌入式设备、边缘设备和浏览器。
图 1. ONNX 与 LiteRT 的性能对比。
上图比较了 YOLO26n 在检测、分割和姿态估计任务上的平均推理时间,该模型通过 @ultralytics/yolo(Ultralytics 用于通过 ONNX Runtime Web 在 WebGPU/WASM 上进行客户端推理的 npm 包)在浏览器中运行。测试环境为 2024 年款 Apple MacBook Pro (Apple Silicon M4) 的受控浏览器环境。
Link to this section将 Ultralytics YOLO 带到边缘#
有了 LiteRT,在移动、嵌入式、边缘和浏览器环境中部署 Ultralytics YOLO 模型不再需要为每个目标分别维护导出流水线。一次导出,一种模型格式,实现从训练到生产的一致路径,无论推理需要在哪里进行。
对视觉 AI 感兴趣?了解我们的 许可选项 以将计算机视觉应用到你的项目中。访问我们的 GitHub 仓库 以探索 Ultralytics 的全系列导出集成,并查看 Ultralytics Platform 以开始构建你自己的端到端视觉 AI 工作流。






