TensorFlow Lite Python Tekerlek Paketini Oluşturun

Bu sayfada x86_64 ve çeşitli ARM cihazları için TensorFlow Lite tflite_runtime Python kitaplığının nasıl oluşturulacağı açıklanmaktadır.

Aşağıdaki talimatlar Ubuntu 16.04.3 64 bit PC (AMD64), macOS Catalina (x86_64) ve TensorFlow devel Docker image tensorflow/tensorflow:devel üzerinde test edilmiştir.

Önkoşullar

CMake'in kurulu olması ve TensorFlow kaynak kodunun bir kopyasının olması gerekir. Ayrıntılar için lütfen CMake ile TensorFlow Lite Oluşturma sayfasını kontrol edin.

İş istasyonunuza yönelik PIP paketini oluşturmak için aşağıdaki komutları çalıştırabilirsiniz.

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

ARM çapraz derleme

ARM çapraz derleme için, çapraz yapı ortamının kurulumunu kolaylaştırdığından Docker'ın kullanılması önerilir. Ayrıca hedef mimariyi anlamak için bir target seçeneğine ihtiyacınız var.

Makefile tensorflow/lite/tools/pip_package/Makefile dosyasında, önceden tanımlanmış bir Docker kapsayıcısını kullanarak bir derleme komutunu çağırmak için kullanılabilen bir yardımcı araç vardır. Docker host makine üzerinde aşağıdaki gibi build komutunu çalıştırabilirsiniz.

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

Mevcut hedef adları

tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh betiğinin hedef mimariyi anlamak için bir hedef adına ihtiyacı var. Desteklenen hedeflerin listesi buradadır.

Hedef Hedef mimari Yorumlar
armhf Neon'lu ARMv7 VFP Raspberry Pi 3 ve 4 ile uyumlu
rpi0 ARMv6 Raspberry Pi Zero ile uyumlu
aarch64 aarch64 (ARM 64 bit) Mercan Mendel Linux 4.0
Ubuntu Sunucusu 20.04.01 LTS 64 bit ile Raspberry Pi
yerli İş istasyonunuz "-mnative" optimizasyonu ile oluşturulur
İş istasyonunuz Varsayılan hedef

Örnekler oluşturun

İşte kullanabileceğiniz bazı örnek komutlar.

Python 3.7 için armhf hedefi

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

Python 3.8 için aarch64 hedefi

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

Özel bir takım zinciri nasıl kullanılır?

Oluşturulan ikili dosyalar hedefinizle uyumlu değilse kendi araç zincirinizi kullanmanız veya özel derleme bayrakları sağlamanız gerekir. (Hedef ortamınızı anlamak için bunu işaretleyin) Bu durumda, kendi araç zincirinizi kullanmak için tensorflow/lite/tools/cmake/download_toolchains.sh değiştirmeniz gerekir. Araç zinciri betiği, build_pip_package_with_cmake.sh betiği için aşağıdaki iki değişkeni tanımlar.

Değişken Amaç örnek
ARMCC_PREFIX takım zinciri önekini tanımlar arm-linux-gnueabihf-
ARMCC_FLAGS derleme bayrakları -march=armv7-a -mfpu=neon-vfpv4