หากคุณเป็นนักพัฒนา ML ที่มีประสบการณ์และไลบรารี TensorFlow Lite ที่สร้างไว้ล่วงหน้าไม่ตรงกับความต้องการของคุณ คุณสามารถใช้ TensorFlow Lite build แบบกำหนดเองกับ ML Kit ได้ ตัวอย่างเช่น คุณอาจต้องการเพิ่มการดำเนินการที่กำหนดเอง
ข้อกำหนดเบื้องต้น
- สภาพแวดล้อมการสร้าง 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'
สำหรับตัวเลือกอื่นๆ ในการจัดการพ็อดส่วนตัว โปรดดู พ็อดส่วนตัว ในเอกสารประกอบของ Cocoapods โปรดทราบว่าเวอร์ชันจะต้องตรงกันทุกประการ และคุณควรอ้างอิงเวอร์ชันนี้เมื่อรวมพ็อดจากที่เก็บส่วนตัวของคุณ เช่น pod 'TensorFlowLite', "1.10.1"