השימוש ב-LiteRT עם Python מומלץ מאוד למכשירים מוטמעים המבוססים על Linux, כמו Raspberry Pi מכשירי Coral עם Edge TPU, ובהרבה אחרים.
בדף הזה מוסבר איך להתחיל להריץ מודלי LiteRT עם Python בכמה דקות בלבד. כל מה שצריך זה מודל TensorFlow שהומר ל-TensorFlow Lite. (אם עדיין לא המרת מודל, ניתן ניסוי באמצעות המודל שסופק עם הדוגמה שבקישור למטה).
מידע על חבילת זמן הריצה של LiteRT
כדי להתחיל במהירות להפעיל מודלים של LiteRT באמצעות Python, אפשר להתקין
רק במפענח LiteRT, במקום כל החבילות של TensorFlow. רביעי
קוראים לחבילת Python הפשוטה הזו tflite_runtime
.
החבילה tflite_runtime
היא חלק מהגודל של חבילת tensorflow
המלאה
כולל את הקוד המינימלי הנדרש כדי להריץ הסקת מסקנות
LiteRT – בעיקר
Interpreter
Python. החבילה הקטנה הזו היא אידיאלית כאשר כל מה שרוצים לעשות
מודלים של .tflite
ונמנעים מבזבוז מקום בדיסק בעזרת ספריית TensorFlow הגדולה.
התקנת LiteRT ל-Python
אפשר להתקין ב-Linux באמצעות PIP:
python3 -m pip install tflite-runtime
פלטפורמות נתמכות
גלגלי ה-Python מסוג tflite-runtime
מוכנים מראש וסופקים בשביל
פלטפורמות:
- Linux Armv7l (למשל, Raspberry Pi 2, 3, 4 ו-Zero 2 עם מערכת ההפעלה Raspberry Pi OS 32-ביט)
- Linux a Arch64 (למשל Raspberry Pi 3, 4 שפועלת בו Debian ARM64)
- Linux x86_64
אם תרצו להריץ מודלים של LiteRT בפלטפורמות אחרות, עליכם: להשתמש בחבילה המלאה של TensorFlow, או בונים את חבילת זמן הריצה של tflite מהמקור.
אם משתמשים ב-TensorFlow עם Coral Edge TPU, במקום זאת, יש לפעול לפי המסמכים הרלוונטיים בנושא הגדרות אלימיות.
הרצת ההסקה באמצעות tflite_runtime
במקום לייבא את Interpreter
מהמודול tensorflow
, עכשיו צריך
אפשר לייבא אותו מ-tflite_runtime
.
לדוגמה, אחרי שמתקינים את החבילה שלמעלה, מעתיקים ומפעילים את
label_image.py
חדש. הפעולה תיכשל (ככל הנראה) כי אין לך את הספרייה tensorflow
מותקנת. כדי לפתור את הבעיה, יש לערוך את השורה הבאה בקובץ:
import tensorflow as tf
במקום זאת:
import tflite_runtime.interpreter as tflite
לאחר מכן משנים את השורה הזו:
interpreter = tf.lite.Interpreter(model_path=args.model_file)
כך כתוב:
interpreter = tflite.Interpreter(model_path=args.model_file)
עכשיו מריצים שוב את label_image.py
. זהו! עכשיו מתבצע על ידך שימוש ב-LiteRT
למשימות ספציפיות.
מידע נוסף
פרטים נוספים על ה-API של
Interpreter
זמינים כאן טוענים ומפעילים מודל ב-Python.אם יש לכם Raspberry Pi, כדאי לצפות בסדרת הסרטונים על איך להריץ זיהוי אובייקטים ב-Raspberry Pi באמצעות LiteRT.
אם אתם משתמשים במאיץ של Coral ML, כדאי לעיין דוגמאות בסיסיות ב-GitHub.
כדי להמיר מודלים אחרים של TensorFlow ל-LiteRT, קראו את המאמר בנושא ממיר LiteRT.
כדי לבנות גלגל אחד של
tflite_runtime
, צריך לקרוא את בניית חבילת גלגלי Python של LiteRT