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

在 Ultralytics,我们看到越来越多的趋势是将计算机视觉模型直接运行在需要它们的设备上,而不是依赖云端连接。移动应用、嵌入式系统、IoT 传感器和基于浏览器的工具越来越需要在本地运行推理,而且通常运行在功耗和计算资源都十分有限的硬件上。这就是为什么我们很高兴地宣布,Ultralytics YOLO 模型现在可以直接导出到 LiteRT。
满足这一需求需要一种能够跨越所有这些环境的模型格式,同时不要求开发者为每种环境维护单独的导出流程。
此前,通过一个非官方的第三方软件包也能实现这一功能,但这次新集成源于与 Google 的官方合作。我们与 LiteRT 团队密切合作,构建了一个端到端流程,用于通过 LiteRT 将 Ultralytics YOLO 模型导出为 TFLite。借助这一集成,一个导出的 Ultralytics YOLO 模型即可部署到移动、嵌入式、边缘和浏览器环境中,将旧版 TFLite 和 TF.js 导出格式此前分别处理的功能统一到一种精简的格式中。
什么是 LiteRT?#
LiteRT(Lite Runtime 的简称)是 Google 面向设备端 AI 的高性能运行时。它是 TensorFlow Lite(TFLite)的下一代版本和新名称,并运行开发者已经熟悉的相同 .tflite 模型格式。
LiteRT 是一个专为设备端推理设计的开源框架,也称为边缘计算。它为开发者提供了在移动设备、嵌入式设备、IoT 设备和传统计算机上执行训练模型的工具;通过 LiteRT.js,还可以直接在 Web 浏览器和 Node.js 中执行。LiteRT 导出格式会针对目标检测、分割、姿态估计和分类等任务优化模型,使其能够在各种设备上快速、离线运行。
为什么要将 Ultralytics YOLO 模型导出到 LiteRT?#
现在,一种模型格式即可覆盖所有部署目标:
• 移动端和嵌入式设备。 Android、iOS、桌面设备、嵌入式 Linux 和微控制器(MCU)。
• 边缘加速器。 兼容 Coral Edge TPU,以实现进一步加速。
• 浏览器和 Node.js。 LiteRT.js 通过 WebGPU/WASM 加速在 Web 上运行相同的 .tflite 模型,无需单独的 TensorFlow\.js 导出。
• 桌面设备
这种整合非常重要,因为它消除了生产部署中的一个实际障碍。团队不再需要为移动端维护一个导出流程、为浏览器维护另一个流程、为边缘加速器维护第三个流程,而是现在只需导出一次,即可部署到 LiteRT 支持的所有环境。
LiteRT 模型的主要特性#
• 设备端优化。 通过在本地处理数据降低延迟,通过不传输个人数据来增强隐私,并通过缩小模型大小来节省空间。
• 多平台支持。 可运行于 Android、iOS、嵌入式 Linux、微控制器和现代 Web 浏览器。
• 硬件加速。 在 CPU 上利用 XNNPACK,并通过 OpenCL、Metal 和 WebGPU 实现 GPU 加速。GPU 加速默认以 FP16 运行,以获得更高速度。
• 量化。 支持 FP32、静态 INT8、静态 INT16-activation 和动态 INT8,可压缩模型并加快推理,同时将精度损失降至最低。
• 广泛的语言支持。 兼容 Java/Kotlin、Swift、Objective-C、C++、Python 和 JavaScript。
开始使用 LiteRT 导出#
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")LiteRT 导出目前支持 Linux x86_64 和 macOS。导出的 .tflite 模型本身可以运行于所有 LiteRT 支持的平台,包括移动端、嵌入式设备、边缘设备和浏览器。
图 1. ONNX 与 LiteRT 之间的性能对比。
上图展示了在 YOLO26n 上对检测、分割和姿态估计的平均推理时间进行的对比。模型通过 @ultralytics/yolo 在浏览器中运行;这是 Ultralytics 的 npm 软件包,可通过 ONNX Runtime Web 在 WebGPU/WASM 上执行客户端推理。基准测试在 2024 年 Apple MacBook Pro(Apple Silicon M4)上,在受控的浏览器环境中进行。
将 Ultralytics YOLO 带到边缘端#
借助 LiteRT,跨移动、嵌入式、边缘和浏览器环境部署 Ultralytics YOLO 模型不再需要为每个目标分别维护导出流程。只需一次导出、一种模型格式,无论推理需要在哪里进行,都能以一致的路径从训练走向生产。
对视觉 AI 感兴趣?了解我们的许可选项,将计算机视觉引入你的项目。访问我们的 GitHub 仓库,探索完整的 Ultralytics 导出集成,并查看 Ultralytics Platform,开始构建你自己的端到端视觉 AI 工作流。






