Xuất Ultralytics YOLO trên LiteRT
Tìm hiểu cách tích hợp xuất LiteRT mới mang tính năng inference Ultralytics YOLO đến các môi trường di động, nhúng, edge và trình duyệt trong một định dạng duy nhất, thống nhất.

Tại Ultralytics, chúng tôi nhận thấy sự thay đổi rõ rệt hướng tới việc chạy các mô hình thị giác máy tính trực tiếp trên các thiết bị cần thiết, thay vì phụ thuộc vào kết nối đám mây. Các ứng dụng di động, hệ thống nhúng, cảm biến IoT và công cụ trên trình duyệt ngày càng cần thực hiện suy luận cục bộ, thường là trên phần cứng có giới hạn về điện năng và tài nguyên tính toán. Đó là lý do tại sao chúng tôi rất vui mừng thông báo rằng các mô hình Ultralytics YOLO hiện có thể được xuất trực tiếp sang LiteRT.
Để đáp ứng nhu cầu đó, cần một định dạng mô hình có thể hoạt động trên tất cả các môi trường này mà không bắt buộc các nhà phát triển phải duy trì các quy trình xuất riêng biệt cho từng môi trường.
Khả năng này trước đây đã tồn tại thông qua một gói bên thứ ba không chính thức, nhưng sự tích hợp mới này là kết quả của sự hợp tác chính thức với Google. Chúng tôi đã làm việc chặt chẽ với đội ngũ LiteRT để xây dựng quy trình end-to-end nhằm xuất các mô hình Ultralytics YOLO sang TFLite thông qua LiteRT. Với sự tích hợp này, một mô hình Ultralytics YOLO đã xuất có thể triển khai trên các môi trường di động, nhúng, edge và trình duyệt, hợp nhất những gì mà các định dạng xuất TFLite và TF.js cũ hơn trước đây phải xử lý riêng biệt thành một định dạng tinh gọn.
Link to this sectionLiteRT là gì?#
LiteRT (viết tắt của Lite Runtime) là runtime hiệu năng cao của Google dành cho AI trên thiết bị. Đây là thế hệ kế tiếp và là tên gọi mới cho TensorFlow Lite (TFLite), và nó chạy cùng định dạng mô hình .tflite mà các nhà phát triển đã quen thuộc.
LiteRT là một framework mã nguồn mở được thiết kế đặc biệt cho suy luận trên thiết bị, còn được gọi là edge computing. Nó cung cấp cho các nhà phát triển công cụ để thực thi các mô hình đã huấn luyện trên thiết bị di động, hệ thống nhúng và IoT, máy tính truyền thống, và thông qua LiteRT.js, chạy trực tiếp trên trình duyệt web và Node.js. Định dạng xuất LiteRT tối ưu hóa các mô hình cho các tác vụ như phát hiện đối tượng, phân đoạn, ước tính tư thế và phân loại để chúng chạy nhanh và ngoại tuyến trên nhiều loại thiết bị khác nhau.
Link to this sectionTại sao nên xuất các mô hình Ultralytics YOLO sang LiteRT?#
Một định dạng mô hình duy nhất nay bao phủ mọi mục tiêu triển khai:
• Di động & nhúng. Android, iOS, Desktop, Linux nhúng và các vi điều khiển (MCU).
• Bộ tăng tốc Edge. Tương thích với Coral Edge TPU để tăng tốc thêm.
• Trình duyệt & Node.js. LiteRT.js chạy cùng một mô hình .tflite trên web với khả năng tăng tốc WebGPU/WASM, thay thế nhu cầu cho một định dạng xuất TensorFlow.js riêng biệt.
• Desktop
Sự hợp nhất này rất quan trọng vì nó loại bỏ một nguồn ma sát thực sự trong các triển khai production. Thay vì phải duy trì một quy trình xuất cho di động, một quy trình cho trình duyệt và một quy trình thứ ba cho bộ tăng tốc edge, các nhóm giờ đây có thể xuất một lần và triển khai ở mọi nơi LiteRT có thể chạy.
Link to this sectionCác tính năng chính của mô hình LiteRT#
• Tối ưu hóa trên thiết bị. Giảm độ trễ bằng cách xử lý dữ liệu cục bộ, tăng cường quyền riêng tư bằng cách không truyền tải dữ liệu cá nhân và giảm thiểu kích thước mô hình để tiết kiệm không gian.
• Hỗ trợ đa nền tảng. Chạy trên Android, iOS, Linux nhúng, vi điều khiển và các trình duyệt web hiện đại.
• Tăng tốc phần cứng. Tận dụng XNNPACK trên CPU và tăng tốc GPU thông qua OpenCL, Metal và WebGPU. Tăng tốc GPU mặc định chạy ở chế độ FP16 để đạt tốc độ cao hơn.
• Lượng tử hóa (Quantization). Hỗ trợ FP32, INT8 tĩnh, INT16-activation tĩnh và INT8 động để nén mô hình và tăng tốc suy luận với độ chính xác giảm thiểu tối đa.
• Hỗ trợ đa ngôn ngữ. Tương thích với Java/Kotlin, Swift, Objective-C, C++, Python và JavaScript.
Link to this sectionBắt đầu với việc xuất LiteRT#
Gói Python Ultralytics và Nền tảng Ultralytics cung cấp một môi trường hoàn chỉnh và thống nhất để huấn luyện, đánh giá và triển khai các mô hình YOLO trên cả năm tác vụ thị giác máy tính. Định dạng xuất LiteRT hỗ trợ các chế độ Export, Predict và Validate, vì vậy một mô hình có thể được xuất và ngay lập tức được sử dụng để suy luận hoặc kiểm tra độ chính xác tại chỗ.
Việc xuất một mô hình chỉ cần một lệnh duy nhất:
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'Đối với các nhóm triển khai trên phần cứng bị hạn chế, LiteRT cũng hỗ trợ xuất đã lượng tử hóa, cho phép nén mô hình để suy luận nhanh hơn với độ chính xác giảm thiểu tối đa:
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")Sau khi xuất, mô hình có thể được tải và chạy để suy luận trực tiếp:
from ultralytics import YOLO
\# Load the exported LiteRT model
model \= YOLO("yolo26n.tflite")
\# Run inference
results \= model("https://ultralytics.com/images/bus.jpg")Xuất LiteRT hiện được hỗ trợ trên Linux x86_64 và macOS. Bản thân mô hình .tflite đã xuất có thể chạy trên mọi nền tảng được LiteRT hỗ trợ, bao gồm di động, nhúng, edge và trình duyệt.
Hình 1. So sánh hiệu năng giữa ONNX và LiteRT.
Hình ảnh phía trên trình bày so sánh thời gian suy luận trung bình cho phát hiện, phân đoạn và ước tính tư thế trên YOLO26n, chạy trong trình duyệt thông qua @ultralytics/yolo, gói npm của Ultralytics cho suy luận phía máy khách trên WebGPU/WASM qua ONNX Runtime Web. Được đo kiểm trên Apple MacBook Pro 2024 (Apple Silicon M4) trong môi trường trình duyệt được kiểm soát.
Link to this sectionĐưa Ultralytics YOLO ra biên (edge)#
Với LiteRT, việc triển khai các mô hình Ultralytics YOLO trên môi trường di động, nhúng, edge và trình duyệt không còn yêu cầu các quy trình xuất riêng biệt cho từng mục tiêu. Một lần xuất, một định dạng mô hình và một lộ trình nhất quán từ huấn luyện đến production, bất kể suy luận cần diễn ra ở đâu.
Bạn tò mò về thị giác AI? Hãy khám phá các tùy chọn cấp phép của chúng tôi để đưa thị giác máy tính vào các dự án của bạn. Truy cập kho lưu trữ GitHub của chúng tôi để khám phá đầy đủ các tích hợp xuất của Ultralytics, và kiểm tra Nền tảng Ultralytics để bắt đầu xây dựng các quy trình công việc thị giác AI end-to-end của riêng bạn.






