숙련된 ML 개발자이며 사전 빌드된 TensorFlow Lite 라이브러리가 요구사항에 맞지 않는 경우 ML Kit를 통해 커스텀 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 라이브러리 빌드
- 표준 지침에 따라 TensorFlow Lite(수정 포함)를 빌드합니다.
- 프레임워크를 빌드합니다.
tensorflow/lite/lib_package/create_ios_frameworks.sh
생성된 프레임워크는 tensorflow/lite/gen/ios_frameworks/tensorflow_lite.framework.zip
에서 확인할 수 있습니다.
로컬 pod 만들기
- 로컬 pod의 디렉터리를 만듭니다.
- 만든 디렉터리에서
pod lib create TensorFlowLite
를 실행합니다. TensorFlowLite
디렉터리 내에Frameworks
디렉터리를 만듭니다.- 위에서 생성된
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
프로젝트의 커스텀 pod 참조
앱의 Podfile
에서 직접 커스텀 pod를 참조하여 포함할 수 있습니다.
pod 'Firebase/MLModelInterpreter'
pod 'TensorFlowLite', :path => 'path/to/your/TensorflowLite'
비공개 pod를 관리하는 다른 옵션은 CocoaPods 문서의 비공개 pod를 참조하세요. 버전이 정확히 일치해야 하며, 비공개 저장소의 포드(예: pod 'TensorFlowLite', "1.10.1"
)를 포함하는 경우에는 이 버전을 참조해야 합니다.