अपनी पसंद के मुताबिक TensorFlow Lite बिल्ड इस्तेमाल करें

अगर आप एमएल के अनुभवी डेवलपर हैं और पहले से बनी हुई TensorFlow Lite लाइब्रेरी आपकी ज़रूरतों को पूरा नहीं करती है, तो एमएल किट के साथ कस्टम TensorFlow Lite बिल्ड का इस्तेमाल किया जा सकता है. उदाहरण के लिए, आपको कस्टम ऑप्स जोड़ने पड़ सकते हैं.

ज़रूरी शर्तें

  • 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 लाइब्रेरी बनाना

  1. स्टैंडर्ड निर्देशों का पालन करके, अपने बदलावों के साथ TensorFlow Lite बनाएं
  2. फ़्रेमवर्क बनाना:
tensorflow/lite/lib_package/create_ios_frameworks.sh

जनरेट किया गया फ़्रेमवर्क, tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip पर देखा जा सकता है

लोकल पॉड बनाना

  1. अपने लोकल पॉड के लिए डायरेक्ट्री बनाना
  2. बनाई गई डायरेक्ट्री में pod lib create TensorFlowLite चलाएं
  3. TensorFlowLite डायरेक्ट्री के अंदर Frameworks डायरेक्ट्री बनाएं
  4. ऊपर जनरेट की गई tensorflow_lite.framework.zip फ़ाइल को अनज़िप करें
  5. अनज़िप किए गए tensorflow_lite.framework को TensorFlowLite/Frameworks में कॉपी करें
  6. लाइब्रेरी को रेफ़रंस करने के लिए, जनरेट किए गए 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 के दस्तावेज़ में Private Pods देखें. ध्यान दें कि वर्शन पूरी तरह से मेल खाना चाहिए.साथ ही, आपको अपनी निजी रिपॉज़िटरी से पॉड शामिल करते समय, इस वर्शन का रेफ़रंस देना चाहिए. उदाहरण के लिए, pod 'TensorFlowLite', "1.10.1".