Sử dụng bản dựng TensorFlow Lite tùy chỉnh

Nếu bạn là nhà phát triển ML có kinh nghiệm và thư viện TensorFlow Lite dựng sẵn không đáp ứng nhu cầu của bạn, bạn có thể sử dụng bản dựng TensorFlow Lite tùy chỉnh với ML Kit. Ví dụ: bạn có thể muốn thêm các hoạt động tùy chỉnh.

Điều kiện tiên quyết

  • Môi trường xây dựng TensorFlow Lite đang hoạt động
  • Kiểm tra TensorFlow Lite 1.10.1

Bạn có thể kiểm tra phiên bản chính xác bằng Git:

git checkout -b work
git reset --hard tflite-v1.10.1
git cherry-pick 4dcfddc5d12018a5a0fdca652b9221ed95e9eb23

Xây dựng thư viện Tensorflow Lite

  1. Xây dựng Tensorflow Lite (với các sửa đổi của bạn) theo hướng dẫn tiêu chuẩn
  2. Xây dựng khung:
tensorflow/lite/lib_package/create_ios_frameworks.sh

Bạn có thể tìm thấy khung được tạo tại tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip

Tạo một nhóm cục bộ

  1. Tạo một thư mục cho nhóm cục bộ của bạn
  2. Chạy pod lib create TensorFlowLite trong thư mục bạn đã tạo
  3. Tạo thư mục Frameworks bên trong thư mục TensorFlowLite
  4. Giải nén tệp tensorflow_lite.framework.zip được tạo ở trên
  5. Sao chép tensorflow_lite.framework đã giải nén vào TensorFlowLite/Frameworks
  6. Sửa đổi TensorFlowLite/TensorFlowLite.podspec đã tạo để tham chiếu thư viện:
    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

Tham khảo nhóm tùy chỉnh trong dự án của bạn

Bạn có thể bao gồm nhóm tùy chỉnh bằng cách tham chiếu nó trực tiếp từ Podfile của ứng dụng:

pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'

Để biết các tùy chọn khác để quản lý nhóm riêng tư, hãy xem Nhóm riêng tư trong tài liệu Cocoapod. Lưu ý rằng phiên bản phải khớp chính xác và bạn nên tham khảo phiên bản này khi bao gồm nhóm từ kho lưu trữ riêng tư của mình, ví dụ: pod 'TensorFlowLite', "1.10.1" .