LiteRT (trước đây gọi là TensorFlow Lite) là thời gian chạy hiệu suất cao của Google đối với AI trên thiết bị. Bạn có thể tìm thấy các mô hình LiteRT sẵn sàng chạy cho một nhiều nhiệm vụ học máy/trí tuệ nhân tạo, hoặc chuyển đổi và chạy các mô hình TensorFlow, PyTorch và JAX sang định dạng TFLite bằng công cụ tối ưu hoá và chuyển đổi AI Edge.
Tính năng chính
Được tối ưu hoá cho công nghệ học máy trên thiết bị: LiteRT địa chỉ 5 các hạn chế chính của ODML: độ trễ (không có trả về máy chủ), quyền riêng tư (chỉ có dữ liệu cá nhân được lưu trên thiết bị), kết nối (kết nối Internet) không bắt buộc), kích thước (mô hình giảm và kích thước nhị phân) và mức tiêu thụ điện năng (suy luận hiệu quả và thiếu kết nối mạng).
Hỗ trợ nhiều nền tảng: Tương thích với Android và Thiết bị iOS, được nhúng Linux và bộ vi điều khiển.
Các lựa chọn về mô hình nhiều khung: AI Edge cung cấp các công cụ để chuyển đổi mô hình từ các mô hình TensorFlow, PyTorch và JAX thành định dạng FlatBuffers (
.tflite
), cho phép bạn sử dụng nhiều mô hình tiên tiến trên LiteRT. Bạn cũng có quyền truy cập vào các công cụ tối ưu hoá mô hình có khả năng xử lý lượng tử hoá và siêu dữ liệu.Hỗ trợ ngôn ngữ đa dạng: Bao gồm các SDK cho Java/Kotlin, Swift, Target-C, C++ và Python.
Hiệu suất cao: Tăng tốc phần cứng thông qua các đại biểu chuyên trách như GPU và iOS Core ML.
Quy trình phát triển
Quy trình phát triển LiteRT liên quan đến việc xác định vấn đề học máy/trí tuệ nhân tạo, chọn một mô hình giải quyết được vấn đề đó và triển khai mô hình đó trên thiết bị. Các bước sau đây sẽ hướng dẫn quy trình và cung cấp các đường liên kết để bạn .
1. Xác định giải pháp phù hợp nhất cho bài toán học máy
LiteRT cung cấp cho người dùng mức độ linh hoạt và khả năng tuỳ chỉnh cao khi giải quyết các vấn đề của công nghệ học máy, đây là một giải pháp phù hợp những người dùng yêu cầu một mô hình cụ thể hoặc một quy trình triển khai chuyên biệt. Người dùng các giải pháp "cắm là chạy" có thể thích MediaPipe hơn Tasks, trong đó cung cấp các giải pháp có sẵn cho các công việc phổ biến của công nghệ học máy như phát hiện đối tượng, phân loại văn bản và suy luận LLM.
Chọn một trong các khung AI Edge sau:
- LiteRT: Môi trường thời gian chạy linh hoạt và có thể tuỳ chỉnh, có thể chạy trên nhiều rất nhiều mô hình. Chọn mô hình cho trường hợp sử dụng của bạn, chuyển đổi mô hình đó thành LiteRT (nếu cần) và chạy trên thiết bị. Nếu bạn định để sử dụng LiteRT, hãy tiếp tục đọc.
- MediaPipe Tasks: Giải pháp cắm và chạy với các mô hình mặc định cho phép để tuỳ chỉnh. Chọn nhiệm vụ giải quyết vấn đề mà bạn gặp phải với công nghệ trí tuệ nhân tạo/học máy, và triển khai trên nhiều nền tảng. Nếu bạn định sử dụng MediaPipe Tasks, tham chiếu đến MediaPipe Tài liệu về Tasks.
2. Chọn người mẫu
Mô hình LiteRT được biểu diễn bằng một định dạng di động hiệu quả được gọi là
FlatBuffers, sử dụng .tflite
đuôi tệp.
Bạn có thể sử dụng mô hình LiteRT theo các cách sau:
Sử dụng mô hình LiteRT hiện có: Cách đơn giản nhất là sử dụng Mô hình LiteRT đã có ở định dạng
.tflite
. Các mô hình này không yêu cầu bạn phải thêm bất kỳ bước chuyển đổi nào. Bạn có thể tìm thấy các mô hình LiteRT trên Mô hình Kaggle.Chuyển đổi mô hình thành mô hình LiteRT: Bạn có thể sử dụng Trình chuyển đổi TensorFlow, PyToch Trình chuyển đổi hoặc JAX chuyển đổi để chuyển đổi mô hình sang định dạng FlatBuffers (
.tflite
) rồi chạy các chiến dịch đó trong LiteRT. Để bắt đầu, bạn có thể tìm thấy mô hình trên các trang web sau:- Mô hình TensorFlow trên Kaggle Mô hình và Ôm
- Mô hình PyTorch trên Ôm
Face và
torchvision
- Người mẫu JAX trên tính năng Ôm Face
Mô hình LiteRT có thể tuỳ ý bao gồm siêu dữ liệu chứa các bản mô tả mô hình mà con người có thể đọc được và dữ liệu mà máy có thể đọc được để tự động tạo quy trình trước và sau xử lý trong quá trình suy luận trên thiết bị. Hãy tham khảo bài viết Thêm siêu dữ liệu để biết thêm chi tiết.
3. Tích hợp mô hình vào ứng dụng của bạn
Bạn có thể triển khai các mô hình LiteRT để chạy các suy luận hoàn toàn trên thiết bị trên web, được nhúng và thiết bị di động. LiteRT chứa các API cho Python, Java và Kotlin cho Android, Swift cho iOS và C++ cho các thiết bị siêu nhỏ.
Hãy làm theo các hướng dẫn sau để triển khai mô hình LiteRT trên nền tảng:
- Chạy trên Android: Chạy mô hình trên thiết bị Android bằng API Java/Kotlin.
- Chạy trên iOS: Chạy mô hình trên thiết bị iOS bằng Swift API.
- Chạy trên Micro: Chạy mô hình trên thiết bị được nhúng bằng cách sử dụng API C++.
Trên thiết bị Android và iOS, bạn có thể cải thiện hiệu suất bằng phần cứng tăng tốc. Trên một trong hai nền tảng, bạn có thể sử dụng GPU Ủy quyền và trên iOS, bạn có thể sử dụng Core ML Người được uỷ quyền. Để thêm tính năng hỗ trợ cho trình tăng tốc phần cứng mới, bạn có thể xác định người được uỷ quyền của riêng bạn.
Bạn có thể chạy suy luận theo các cách sau dựa trên loại mô hình:
Mô hình không có siêu dữ liệu: Sử dụng LiteRT API Phiên dịch. Được hỗ trợ trên nhiều nền tảng và ngôn ngữ chẳng hạn như Java, Swift, C++, Khoản-C và Python.
Mô hình có siêu dữ liệu: Bạn có thể xây dựng quy trình suy luận tuỳ chỉnh bằng Thư viện hỗ trợ LiteRT.
Di chuyển từ LiteRT
Các ứng dụng dùng thư viện LiteRT sẽ tiếp tục hoạt động nhưng tất cả nội dung phát triển và cập nhật đang hoạt động mới sẽ chỉ được đưa vào gói LiteRT. API LiteRT chứa cùng tên phương thức với API TF Lite, vì vậy việc di chuyển sang LiteRT không yêu cầu thay đổi mã chi tiết.
Để biết thêm thông tin, hãy tham khảo hướng dẫn di chuyển.
Các bước tiếp theo
Người dùng mới nên bắt đầu với tính năng khởi động nhanh LiteRT. Để biết thông tin cụ thể, hãy xem các phần sau:
Chuyển đổi mô hình
- Chuyển đổi mô hình TensorFlow
- Chuyển đổi mô hình PyTorch
- Chuyển đổi mô hình AI tạo sinh PyTorch
- Chuyển đổi mô hình JAX
Hướng dẫn về nền tảng