בדף הזה מוסבר איך להגדיר את סביבת הפיתוח לשימוש ב-MediaPipe Tasks באפליקציות שלכם ל-iOS.
פלטפורמות ומכשירים נתמכים
כדי ליצור אפליקציות ל-iOS עם משימות של MediaPipe, סביבת הפיתוח שלכם צריכה את הדברים הבאים:
macOS Mojave 10.14.3 ומעלה.
Xcode מגרסה 10.3 ואילך.
מכשיר iOS עם iOS מגרסה 12.0 ואילך. לחלופין, סימולטור של iOS יכול לטפל באפליקציות שלא דורשות את מצלמת המכשיר.
הגדרה של סביבת המפתח
לפני שמריצים משימת MediaPipe באפליקציה ל-iOS, צריך להיות לכם פרויקט Xcode קיים או ליצור פרויקט חדש במכונה המקומית.
אפשר להתקין משימות MediaPipe רק באמצעות CocoaPods. חובה להתקין את CocoaPods 1.12.1 ומעלה לפני תחילת העבודה. לקבלת הוראות להתקנת CocoaPods ב-macOS, תוכלו לעיין במדריך ההתקנה של CocoaPods.
דוגמה להגדרת קוד
במאגר MediaPipe תוכלו למצוא אפליקציות לדוגמה ל-iOS למשימות של MediaPipe.
אפשר ליצור פרויקט מהקוד לדוגמה, לבנות את הפרויקט ולהריץ את המשימה. השלבים הבאים יוצרים את המשימה Text classifier.
כדי לייבא ולבנות את פרויקט הקוד לדוגמה:
פותחים את הטרמינל, משכפלים את מאגר הדוגמאות של MediaPipe ומנווטים לספרייה שמכילה את
TextClassifier.xcodeproj
ואתPodfile
.git clone https://github.com/google-ai-edge/mediapipe-samples cd mediapipe/examples/text_classification/ios
התקנת משימות MediaPipe באמצעות CocoaPods:
pod install
הפקודה יוצרת קובץ
TextClassifier.xcworkspace
בספריית הפרויקט לדוגמה.לוחצים לחיצה כפולה על הקובץ
TextClassifier.xcworkspace
כדי לפתוח את הפרויקט ב-Xcode. אם הקובץTextClassifier.xcodeproj
כבר פתוח, סוגרים אותו לפני שפותחים את הקובץTextClassifier.xcworkspace
.בוחרים את הסכמה
TextClassifier
ובוחרים מכשיר iOS או סימולטור פיזי בסרגל הכלים שבחלון הפרויקט. כשאתם משתמשים במכשיר iOS פיזי, ודאו שהוא מחובר ל-Mac.לוחצים על הלחצן
Run
בסרגל הכלים של הפרויקט.
במאמר יצירה והפעלה של אפליקציה תוכלו לקרוא הוראות נוספות להפעלת אפליקציה ב-Xcode.
יחסי תלות של משימות MediaPipe
השירות MediaPipe Tasks מספק שתי ספריות מוגדרות מראש לתצוגה ולטקסט. קובץ המודל .tflite
חייב להיות ממוקם בחבילה של האפליקציה ל-iOS שמשתמשת במודל. בהתאם ל-MediaPipe Tas, תוכלו להוסיף את ספריית החזון או את ספריית הטקסט לרשימת רצפי המודעות ב-CocoaPods Podfile
. במאמר שימוש ב-CocoaPods תוכלו לקרוא איך ליצור Podfile
עם רכיבי Pod שנדרשים לאפליקציה.
משימות של בינה מלאכותית גנרטיבית
ספריות ה-MediaPipe Tasks של AI גנרטיבי למשימות כוללות משימות שמטפלות ביצירת תמונות או טקסט. כדי להתקין את ספריית ה-AI הגנרטיבי של MediaPipe Tasks, צריך להוסיף את רצפי המודעות MediaPipeTasksGenAI
ו-MediaPipeTasksGenAIC
ליעד של האפליקציה ב-Podfile
.
LLM Inference API
המשימה של הסקת ה-LLM של MediaPipe נמצאת בתוך הרצפי MediaPipeTasksGenAI
ו-MediaPipeTasksGenAIC
.
target 'MyLlmInferenceApp' do
use_frameworks!
pod 'MediaPipeTasksGenAI'
pod 'MediaPipeTasksGenAIC'
end
משימות ראייה
ספריית הראייה של משימות MediaPipe מכילה משימות שמטפלות בקלט תמונה או וידאו. כדי להתקין את ספריית החזון של MediaPipe Tasks, צריך להוסיף את רצף MediaPipeTasksVision
ליעד של האפליקציה ב-Podfile
.
target 'MyAppWithMediaPipeTasksVision' do
use_frameworks!
pod 'MediaPipeTasksVision'
end
משימות טקסט
ספריית הטקסט של משימות MediaPipe מכילה משימות שמטפלות בנתוני שפה בפורמט טקסט. כדי להתקין את ספריית הטקסט של MediaPipe Tasks, צריך להוסיף את ה-pod MediaPipeTasksText
ליעד של האפליקציה ב-Podfile
target 'MyAppWithMediaPipeTasksText' do
use_frameworks!
pod 'MediaPipeTasksText'
end
הגדרת יעדי בדיקה
אם לאפליקציה שלכם יש יעד בדיקה, ודאו שה-Podfile פועל בהתאם לאחת מההטמעות הבאות כדי להימנע מהתנהגות לא רצויה במהלך השימוש בספריית משימות של MediaPipe.
ההטמעה הפשוטה ביותר היא לוודא שיעד הבדיקה לא מוצב בתוך יעד האפליקציה הראשי שמוסיף את רצף המשימות של MediaPipe.
target 'MyAppWithMediaPipeTasks' do
pod 'MediaPipeTasksVision'
end
target 'MyAppWithMediaPipeTasksTests' do
end
אם יעד הבדיקה צריך להיות מקונן בתוך יעד האפליקציה הראשי, ה-Podfile חייב להתאים להטמעה הבאה:
target 'MyAppWithMediaPipeTasks' do
pod 'MediaPipeTasksVision'
target 'MyAppWithMediaPipeTasksTests' do
inherit! :none
end
end
תצורת BaseOptions
BaseOptions מאפשרות לקבוע תצורה כללית של ממשקי API למשימות של MediaPipe.
שם האפשרות | תיאור | ערכים קבילים |
---|---|---|
modelAssetPath |
נתיב המודל לקובץ מודל בחבילת האפליקציות ל-iOS. | נתיב כמחרוזת. |
שיפור המהירות באמצעות חומרה
ב-iOS, ב-MediaPipe Tasks יש תמיכה רק במודלים פעילים במעבדי CPU רגילים.
פתרון בעיות
לקבלת עזרה בשאלות טכניות שקשורות ל-MediaPipe, תוכלו לקבל תמיכה מהקהילה בקבוצת הדיון או ב-StackOverflow. כדי לדווח על באגים או לשלוח בקשות להוספת תכונות, תוכלו לדווח על בעיה ב-GitHub.
לקבלת עזרה בהגדרה של סביבת הפיתוח ל-iOS, תוכלו להיעזר במסמכי התיעוד למפתחים של Apple.