Sử dụng bản dựng tuỳ chỉnh cho TensorFlow Lite

Nếu là một nhà phát triển máy học giàu kinh nghiệm và thư viện TensorFlow Lite tạo 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 tuỳ chỉnh bằng Bộ công cụ máy học. Ví dụ: bạn có thể muốn thêm các thao tác tuỳ 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

Tạo thư viện TensorFlow Lite

  1. Tạo Tensorflow Lite (với các nội dung 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 thư mục cho nhóm cục bộ
  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 đã 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 chiếu pod tuỳ chỉnh trong dự án

Bạn có thể đưa nhóm tuỳ chỉnh vào bằng cách tham chiếu trực tiếp nhóm đó từ Podfile của ứng dụng:

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

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