‫Google Tensor (EdgeTPU) עם LiteRT

‫Google Tensor הוא מערכת על שבב (SoC) שתוכננה במיוחד להרצת מודלים של AI בטלפונים מדגמי Google Pixel. ה-Tensor מותאם ליעילות חישובית ולצריכת אנרגיה מינימלית. הוא משתמש במאיץ ייעודי של מסקנות ML שנקרא TPU (Tensor Processing Unit), שאפשר לגשת אליו דרך Google Tensor SDK.

הרשמה לגישה לגרסת הבטא של Google Tensor SDK

Google Tensor SDK היא ערכת פיתוח תוכנה שנוצרה כדי לבצע אופטימיזציה של למידת מכונה במכשיר בטלפונים מדגם Google Pixel. האופטימיזציה מתבצעת באמצעות Tensor System-on-Chip (SoC) בהתאמה אישית ומאיץ ההסקה הייעודי של TPU. ה-SDK הזה מספק חבילה מקיפה של כלים שעוזרים למפתחים לגשת למודלים של קוד פתוח שנבחרו בקפידה ב-Model Garden. ערכת הכלים הזו מאפשרת גם קומפילציה של מודלים לפורמטים שתואמים ל-TPU.


הרשמה


תכונות עיקריות

  • גישה ישירה ל-TPU ייעודי להסקת מסקנות יעילה של ML במכשירי Pixel.
  • מודלים של קוד פתוח שנבחרו בקפידה ועברו אופטימיזציה לשימוש ב-SDK ב-Model Garden.

הגדרת סביבת הפיתוח

בהמשך מפורטות הדרישות המקדימות והמפרטים של החומרה והתוכנה לשימוש ב-Google Tensor SDK:

חומרה

  • תחנת עבודה מקומית לפיתוח שמשתמשת במערכת הפעלה מבוססת-Linux עם ארכיטקטורת x86_64.
    • טיפ: כדי לברר את הארכיטקטורה של תחנת העבודה, אפשר להשתמש בפקודה uname -m או בכלי אבחון דומה.
  • נדרש זיכרון RAM בנפח 16GB לפחות.
    קיבולת ה-RAM הספציפית שנדרשת לשימוש ב-SDK תלויה בגודל הקלט של המודל. כדי להזין נתונים משמעותיים יותר, מומלץ להשתמש בזיכרון RAM בנפח של 64GB לפחות.

תוכנה

  • מערכת הפעלה: Ubuntu 22.04 LTS
  • מערכת build: Bazel 7.4.1
  • Android SDK: רמת API‏ 34 (Android 14)
  • Android NDK: תמיכה ברמת API‏ 28 (Android 9 Pie)
  • ‫(Optional) Python 3.11.0

  • ממשק הגישור של Android‏ (adb)

דרישות מוקדמות

  • (אופציונלי) פרויקט ב-Google Cloud‏ (GCP) שצוות Tensor SDK העניק לו גישה למכשירי Pixel מרוחקים. הוראות ליצירת פרויקט בענן ב-Google Cloud זמינות במאמר יצירה וניהול של פרויקטים.

  • (אופציונלי) עותק להורדה של efficientnet_b0.tflite

מערכות SoC נתמכות

ערכת Google Tensor SDK תומכת במערכות הבאות על שבב (SoC):

  • Google Tensor G5 ‏ (Tensor_G5)

השלבים הבאים

  1. פועלים לפי השלבים להטמעה ולמעקב המרות במאמר בנושא האצת NPU באמצעות LiteRT, ובוחרים ב-Google Tensor לפי הצורך.

  2. למודלים של שפה, ראו הפעלת LLM ב-NPU באמצעות LiteRT-LM.