إنشاء حزمة عجلة TensorFlow Lite Python

توضّح هذه الصفحة طريقة إنشاء مكتبة Python Lite في TensorFlow Lite tflite_runtimeلأجهزة x86_64 وأجهزة ARM مختلفة.

تم اختبار التعليمات التالية على جهاز كمبيوتر يعمل بنظام التشغيل Ubuntu 16.04.3 64 بت (AMD64) وmacOS Catalina (x86_64) وTensorFlow devel Docker tensorflow/tensorflow:devel.

المتطلبات الأساسية

تحتاج إلى تثبيت CMake ونسخة من رمز مصدر TensorFlow. يُرجى الاطّلاع على صفحة إنشاء TensorFlow Lite باستخدام CMake للحصول على التفاصيل.

لإنشاء حزمة PIP لمحطة العمل، يمكنك تشغيل الأوامر التالية:

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

تجميع البيانات المجمّعة من خلال ARM

بالنسبة إلى التجميع المتبادل ARM، يُنصَح باستخدام Docker لأنّه يجعل من السهل إعداد بيئة تصميم متقاطعة. أنت أيضًا بحاجة إلى خيار target لمعرفة البنية المستهدَفة.

هناك أداة مساعِدة في Makefile tensorflow/lite/tools/pip_package/Makefile متاحة لاستدعاء أمر إصدار باستخدام حاوية Docker محدّدة مسبقًا. على جهاز مضيف Docker، يمكنك تشغيل أمر إصدار على النحو التالي.

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

أسماء الاستهدافات المتاحة

يحتاج نص tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh البرمجي إلى اسم هدف لمعرفة البنية المستهدَفة. إليك قائمة الاستهدافات المتوافقة

الهدف البنية المستهدفة التعليقات
درع ARMv7 VFP مع نيون متوافق مع الإصدارين 3 و4 من Raspberry Pi
rpi0 ARMv6 متوافقة مع نظام Raspberry Pi Zero
aarch64 aقوس64 (ARM 64 بت) Coral Mendel Linux 4.0
Raspberry Pi مع Ubuntu Server 20.04.01 LTS 64 بت
مدمج مع المحتوى محطة العمل يتم إنشاؤها باستخدام التحسين " -mNative"
التلقائية محطة العمل الاستهداف التلقائي

إنشاء أمثلة

في ما يلي بعض الأمثلة على الأوامر التي يمكنك استخدامها.

هدف Armhf للغة Python 3.7

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

هدف arc64 للغة Python 3.8

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

كيف يتم استخدام سلسلة أدوات مخصصة؟

إذا كانت البرامج الثنائية التي تم إنشاؤها غير متوافقة مع الهدف الذي تستهدفه، فستحتاج إلى استخدام سلسلة أدواتك أو تقديم علامات إصدار مخصصة. (ضَع علامة في المربّع هذا لفهم البيئة المستهدَفة) في هذه الحالة، عليك تعديل tensorflow/lite/tools/cmake/download_toolchains.sh لاستخدام سلسلة أدواتك الخاصة. يحدّد نص toolchain المتغيرين التاليين للنص البرمجي build_pip_package_with_cmake.sh.

متغير الغرض على سبيل المثال
ARMCC_PREFIX تحدِّد بادئة سلسلة الأدوات arm-linux-gnueabihf-
ARMCC_FLAGS علامات التجميع -mrush=armv7-a -mfpu=neon-vfpv4