LiteRT 概览

LiteRT(以前称为 TensorFlow Lite)是 Google 推出的高性能运行时 设备端 AI。你可以找到现成可用的 LiteRT 模型, 一系列机器学习/AI 任务,也可以转换并运行 TensorFlow、PyTorch 和 JAX 模型, 使用 AI Edge 转换和优化工具对 TFLite 格式进行优化。

主要特性

  • 已针对设备端机器学习进行优化:LiteRT 可处理五个 关键的 ODML 限制:延迟时间(无需往返服务器)、隐私性 (没有个人数据会离开设备)、连接(互联网连接 不需要)、尺寸(缩减的模型和二进制文件大小)和功耗 (高效推理和缺少网络连接)。

  • 多平台支持:与 AndroidiOS 设备,嵌入式 Linux微控制器

  • 多框架模型选项:AI Edge 提供了用于转换模型的工具 转换为 FlatBuffers 格式 (.tflite),让您可以在 Google Cloud 上 LiteRT。您还可以使用模型优化工具来 量化和元数据。

  • 支持多种语言:包括适用于 Java/Kotlin、Swift、 Objective-C、C++ 和 Python。

  • 高性能硬件加速 通过 GPU 和 iOS Core ML 等专业代理来实现。

开发工作流

LiteRT 开发工作流涉及识别机器学习/AI 问题, 选择解决该问题的模型,并在设备端实现该模型。 以下步骤将引导您完成工作流程,并提供了指向 操作说明。

1. 确定最适合机器学习问题的解决方案

LiteRT 为用户提供高度的灵活性和可定制性 因此它非常适合 需要特定模型或特殊实现的用户。用户 希望寻找即插即用解决方案的用户可能更倾向于 MediaPipe Tasks:提供了 针对常见机器学习任务的现成解决方案,例如对象检测、 文本分类和 LLM 推理。

请选择以下 AI Edge 框架之一:

  • LiteRT:灵活且可自定义的运行时,可以在各种环境中 各种模型。为您的用例选择一个模型,将其转换为 LiteRT 格式(如果需要),并在设备上运行。如果您希望 使用 LiteRT,请继续阅读。
  • MediaPipe Tasks:即插即用解决方案,默认模型允许 进行自定义选择解决 AI/机器学习问题的任务 以及如何在多个平台上实施代码如果您打算使用 MediaPipe Tasks, 请参阅 MediaPipe Tasks 文档。

2. 选择模型

LiteRT 模型以高效的可移植格式表示,称为 FlatBuffers,它使用 .tflite 文件扩展名。

您可以通过以下方式使用 LiteRT 模型:

LiteRT 模型可以选择性地包含包含以下内容的元数据: 提供人类可读的模型说明和机器可读的数据,以实现自动化 在设备端推理期间生成预处理和后处理流水线。 如需了解详情,请参阅添加元数据

3. 将模型集成到您的应用中

您可以实现 LiteRT 模型来完整运行推断 在 Web、嵌入式和移动设备上构建设备端代码。LiteRT 包含 API 适用于 PythonJava 和 Kotlin 适用于 Android、Swift iOS 和 C++(适用于微设备)。

按照以下指南在您的首选上实现 LiteRT 模型 平台:

在 Android 和 iOS 设备上,您可以使用硬件提升性能 加速。在任一平台上,您都可以使用 GPU 委托,在 iOS 上,您可以使用 Core ML 委托。如需添加对新的硬件加速器的支持,您可以 定义您自己的委托

您可以根据模型类型通过以下方式进行推理:

  • 没有元数据的模型:请使用 LiteRT Interpreter API。支持多种平台和语言 例如 Java、Swift、C++、Objective-C 和 Python。

  • 带有元数据的模型:您可以使用 LiteRT 支持库

从 LiteRT 迁移

使用 LiteRT 库的应用将继续运行, 所有新的有效开发和更新都将仅包含在 LiteRT 软件包中。 LiteRT API 包含的方法名称与 TF Lite API 相同,因此迁移 无需对代码进行详细的更改。

如需了解详情,请参阅迁移指南

后续步骤

新用户应从 LiteRT 快速入门开始。 如需了解具体信息,请参阅以下部分:

模型转化

平台指南