אם אתה מפתח ML מנוסה וספריית TensorFlow Lite הבנויה מראש לא עונה על הצרכים שלך, אתה יכול להשתמש במבנה TensorFlow Lite מותאם אישית עם ערכת ML. לדוגמה, ייתכן שתרצה להוסיף פעולות מותאמות אישית.
דרישות מוקדמות
- סביבת בנייה עובדת של TensorFlow Lite
- קופה של TensorFlow Lite 1.10.1
אתה יכול לבדוק את הגרסה הנכונה באמצעות Git:
git checkout -b work
git reset --hard tflite-v1.10.1
git cherry-pick 4dcfddc5d12018a5a0fdca652b9221ed95e9eb23
בניית ספריית Tensorflow Lite
- בנה את Tensorflow Lite (עם השינויים שלך) לפי ההוראות הסטנדרטיות
- בנה את המסגרת:
tensorflow/lite/lib_package/create_ios_frameworks.sh
ניתן למצוא את המסגרת שנוצרה בכתובת tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip
יצירת פוד מקומי
- צור ספרייה עבור הפוד המקומי שלך
- הפעל את
pod lib create TensorFlowLite
בספרייה שיצרת - צור ספריית
Frameworks
בתוך ספרייתTensorFlowLite
- פתח את הקובץ
tensorflow_lite.framework.zip
שנוצר לעיל - העתק את ה-
tensorflow_lite.framework
הפתוח אלTensorFlowLite/Frameworks
- שנה את
TensorFlowLite/TensorFlowLite.podspec
שנוצר כדי להתייחס לספרייה:
Pod::Spec.new do |s|
s.name = 'TensorFlowLite'
s.version = '0.1.7' # Version must match.
s.ios.deployment_target = '9.0'
# ... make other changes as desired
internal_pod_root = Pathname.pwd
s.frameworks = 'Accelerate'
s.libraries = 'c++'
s.vendored_frameworks = 'Frameworks/tensorflow_lite.framework'
s.pod_target_xcconfig = {
'SWIFT_VERSION' => '4.0',
'INTERNAL_POD_ROOT' => "#{internal_pod_root}",
'HEADER_SEARCH_PATHS' => "$(inherited) '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/Headers'",
'OTHER_LDFLAGS' => "-force_load '${INTERNAL_POD_ROOT}/Frameworks/tensorflow_lite.framework/tensorflow_lite'"
}
end
הפניה לתרמיל המותאם אישית בפרויקט שלך
אתה יכול לכלול את הפוד המותאם אישית על ידי הפניה אליו ישירות מה- Podfile
של האפליקציה שלך:
pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'
לאפשרויות אחרות לניהול פודים פרטיים, ראה Pods פרטיים בתיעוד Cocoapods. שים לב שהגרסה חייבת להתאים בדיוק, ועליך להתייחס לגרסה זו כאשר אתה כולל את הפוד מהמאגר הפרטי שלך, למשל pod 'TensorFlowLite', "1.10.1"
.