Guia de início rápido do iOS

O LiteRT permite executar modelos do TensorFlow, PyTorch e JAX nos seus apps para iOS. O sistema LiteRT oferece ambientes de execução predefinidos e personalizáveis para executar modelos no iOS de forma rápida e eficiente, com mais flexibilidade para gerenciamento de versões e delegados opcionais, como coreML e Metal, para melhor desempenho.

Por exemplo, aplicativos iOS que usam o LiteRT, consulte o repositório LiteRT samples.

Adicionar o LiteRT ao seu projeto Swift ou Objective-C

O LiteRT oferece bibliotecas nativas do iOS escritas em Swift e Objective-C.

As seções abaixo demonstram como adicionar o LiteRT Swift ou Objective-C ao seu projeto:

Desenvolvedores do CocoaPods

No Podfile, adicione o pod do LiteRT. Depois, execute pod install.

Swift

use_frameworks!
pod 'TensorFlowLiteSwift'

Objective-C

pod 'TensorFlowLiteObjC'

Como especificar versões

Há versões estáveis e noturnas disponíveis para pods TensorFlowLiteSwift e TensorFlowLiteObjC. Se você não especificar uma restrição de versão, como nos exemplos acima, o CocoaPods vai extrair a versão estável mais recente por padrão.

Também é possível especificar uma restrição de versão. Por exemplo, se você quiser depender da versão 2.10.0, escreva a dependência como:

pod 'TensorFlowLiteSwift', '~> 2.10.0'

Isso garante que a versão 2.x.y mais recente do pod TensorFlowLiteSwift seja usada no app. Como alternativa, se você quiser depender dos builds noturnos, escreva:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'

A partir da versão 2.4.0 e das versões noturnas mais recentes, por padrão, GPU e delegados do ML do núcleo são excluídos do pod para reduzir o tamanho binário. É possível incluí-los especificando subspec:

pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly', :subspecs => ['CoreML', 'Metal']

Isso permite que você use os recursos mais recentes adicionados ao LiteRT. Observe que, depois que o arquivo Podfile.lock for criado quando você executar o comando pod install pela primeira vez, a versão da biblioteca noturna será travada na versão da data atual. Se você quiser atualizar a biblioteca noturna para a mais recente, execute o comando pod update.

Para mais informações sobre as diferentes maneiras de especificar restrições de versão, consulte Como especificar versões de pods.

Desenvolvedores do Bazel

No arquivo BUILD, adicione a dependência TensorFlowLite ao destino.

Swift

swift_library(
  deps = [
      "//tensorflow/lite/swift:TensorFlowLite",
  ],
)

Objective-C

objc_library(
  deps = [
      "//tensorflow/lite/objc:TensorFlowLite",
  ],
)

API C/C++

Como alternativa, use a API C ou a API C++.

# Using C API directly
objc_library(
  deps = [
      "//tensorflow/lite/c:c_api",
  ],
)

# Using C++ API directly
objc_library(
  deps = [
      "//tensorflow/lite:framework",
  ],
)

Importar a biblioteca

Para arquivos Swift, importe o módulo LiteRT:

import TensorFlowLite

Para arquivos Objective-C, importe o cabeçalho de guarda-chuva:

#import "TFLTensorFlowLite.h"

Ou o módulo se você definir CLANG_ENABLE_MODULES = YES no projeto do Xcode:

@import TFLTensorFlowLite;