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

Nếu là một nhà phát triển học máy có kinh nghiệm và thư viện TensorFlow Lite được tạo sẵn không đáp ứng được nhu cầu của bạn, thì bạn có thể sử dụng bản dựng TensorFlow Lite tuỳ chỉnh với Bộ công cụ học máy. 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 tạo bản dựng TensorFlow Lite đang hoạt động
  • Một lần 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 một 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 chưa giải nén vào TensorFlowLite/Frameworks
  6. Sửa đổi TensorFlowLite/TensorFlowLite.podspec đã tạo để tham chiếu đến 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 đến pod tuỳ chỉnh trong dự án của bạn

Bạn có thể thêm pod tuỳ chỉnh bằng cách tham chiếu 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 lựa chọn khác để quản lý các pod riêng tư, hãy xem phần Private Pods (Pod riêng tư) trong tài liệu 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 thêm pod từ kho lưu trữ riêng tư, ví dụ: pod 'TensorFlowLite', "1.10.1".