Terima kasih telah mendengarkan Google I/O. Lihat semua sesi sesuai permintaan Tonton sesuai permintaan

Bangun Paket Roda Python TensorFlow Lite

Halaman ini menjelaskan cara membangun pustaka TensorFlow Lite tflite_runtime Python untuk x86_64 dan berbagai perangkat ARM.

Instruksi berikut telah diuji pada Ubuntu 16.04.3 64-bit PC (AMD64) , macOS Catalina (x86_64) dan TensorFlow devel Docker image tensorflow/tensorflow:devel .

Prasyarat

Anda perlu menginstal CMake dan salinan kode sumber TensorFlow. Silakan periksa Build TensorFlow Lite dengan halaman CMake untuk detailnya.

Untuk membangun paket PIP untuk workstation Anda, Anda dapat menjalankan perintah berikut.

PYTHON=python3 tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh native

Kompilasi silang ARM

Untuk kompilasi lintas ARM, disarankan untuk menggunakan Docker karena lebih mudah untuk mengatur lingkungan lintas bangunan. Anda juga memerlukan opsi target untuk mengetahui arsitektur target.

Ada alat pembantu di Makefile tensorflow/lite/tools/pip_package/Makefile yang tersedia untuk menjalankan perintah build menggunakan wadah Docker yang telah ditentukan sebelumnya. Pada mesin host Docker, Anda dapat menjalankan perintah build sebagai berikut.

make -C tensorflow/lite/tools/pip_package docker-build \
  TENSORFLOW_TARGET=<target> PYTHON_VERSION=<python3 version>

Nama target yang tersedia

skrip tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh membutuhkan nama target untuk mengetahui arsitektur target. Berikut adalah daftar target yang didukung.

Target Arsitektur sasaran Komentar
lenganhf ARMv7 VFP dengan Neon Kompatibel dengan Raspberry Pi 3 dan 4
Rpi0 ARMv6 Kompatibel dengan Raspberry Pi Nol
aarch64 aarch64 (ARM 64-bit) Karang Mendel Linux 4.0
Raspberry Pi dengan Ubuntu Server 20.04.01 LTS 64-bit
warga asli Stasiun kerja Anda Itu dibangun dengan optimasi "-mnative".
Stasiun kerja Anda Target bawaan

Membangun contoh

Berikut adalah beberapa contoh perintah yang dapat Anda gunakan.

target armhf untuk Python 3.7

make -C tensorflow/lite/tools/pip_package docker-build \
  TENSORFLOW_TARGET=armhf PYTHON_VERSION=3.7

target aarch64 untuk Python 3.8

make -C tensorflow/lite/tools/pip_package docker-build \
  TENSORFLOW_TARGET=aarch64 PYTHON_VERSION=3.8

Bagaimana cara menggunakan rantai alat khusus?

Jika binari yang dihasilkan tidak kompatibel dengan target Anda, Anda perlu menggunakan toolchain Anda sendiri atau menyediakan flag build kustom. (Periksa ini untuk memahami lingkungan target Anda) Dalam hal ini, Anda perlu memodifikasi tensorflow/lite/tools/cmake/download_toolchains.sh untuk menggunakan rantai alat Anda sendiri. Skrip toolchain mendefinisikan dua variabel berikut untuk skrip build_pip_package_with_cmake.sh .

Variabel Tujuan contoh
ARMCC_PREFIX mendefinisikan awalan toolchain lengan-linux-gnueabihf-
ARMCC_FLAGS bendera kompilasi -march=armv7-a -mfpu=neon-vfpv4