Trang này mô tả cách tạo thư viện Python TensorFlow Lite tflite_runtime
cho x86_64 và các thiết bị ARM khác nhau.
Các hướng dẫn sau đã được kiểm thử trên máy tính Ubuntu 16.04.3 64 bit (AMD64), macOS Catalina (x86_64) và hình ảnh TensorFlow devel Docker tensorflow/tensorflow:devel.
Điều kiện tiên quyết
Bạn cần cài đặt CMake và một bản sao của mã nguồn TensorFlow. Vui lòng xem trang Tạo TensorFlow Lite bằng CMake để biết thông tin chi tiết.
Để xây dựng gói PIP cho máy trạm, bạn có thể chạy các lệnh sau.
PYTHON=python3 tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh native
Biên dịch chéo ARM
Đối với quá trình biên dịch chéo ARM, bạn nên sử dụng Docker vì công cụ này giúp thiết lập nhiều môi trường tạo bản dựng dễ dàng hơn. Ngoài ra, bạn cần có một tuỳ chọn target
để xác định cấu trúc mục tiêu.
Có một công cụ trợ giúp trong Makefile tensorflow/lite/tools/pip_package/Makefile
có sẵn để gọi một lệnh bản dựng bằng cách sử dụng vùng chứa Docker được xác định trước. Trên máy chủ Docker, bạn có thể chạy lệnh bản dựng như sau.
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=<target> PYTHON_VERSION=<python3 version>
Tên mục tiêu có thể sử dụng
Tập lệnh tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh
cần có tên mục tiêu để tìm ra cấu trúc mục tiêu. Dưới đây là danh sách các mục tiêu được hỗ trợ.
Mục tiêu | Cấu trúc mục tiêu | Bình luận |
---|---|---|
armhf | VFP kiến trúc ARMv7 với Neon | Tương thích với quả mâm xôi Pi 3 và 4 |
rpi0 | ARMv6 | Tương thích với quả mâm xôi Pi Zero |
aarch64 | aarch64 (ARM 64 bit) | Coral Mendel Linux 4.0 Rappberry Pi với Ubuntu Server 20.04.01 LTS 64 bit |
gốc | Máy trạm của bạn | Tính năng này được xây dựng bằng tính năng tối ưu hoá "-gốc" |
mặc định | Máy trạm của bạn | Mục tiêu mặc định |
Xây dựng ví dụ
Dưới đây là một số lệnh mẫu bạn có thể sử dụng.
mục tiêu armhf cho Python 3.7
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=armhf PYTHON_VERSION=3.7
mục tiêu aarch64 cho Python 3.8
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=aarch64 PYTHON_VERSION=3.8
Cách sử dụng chuỗi công cụ tuỳ chỉnh?
Nếu các tệp nhị phân đã tạo không tương thích với mục tiêu của bạn, thì bạn cần sử dụng chuỗi công cụ của riêng mình hoặc cung cấp cờ bản dựng tuỳ chỉnh. (Hãy xem mục này để hiểu môi trường mục tiêu của bạn) Trong trường hợp đó, bạn cần sửa đổi tensorflow/lite/tools/cmake/download_toolchains.sh
để sử dụng chuỗi công cụ của riêng mình.
Tập lệnh chuỗi công cụ xác định 2 biến sau đây cho tập lệnh build_pip_package_with_cmake.sh
.
Biến | Mục đích | ví dụ |
---|---|---|
ARMCC_PREFIX |
xác định tiền tố chuỗi công cụ | arm-linux-gnueabihf- |
ARMCC_FLAGS |
cờ biên dịch | -march=armv7-a -mFPu=neon-vFPv4 |