Visão geral do LiteRT

O LiteRT (abreviação de "ambiente de execução Lite"), anteriormente conhecido como TensorFlow Lite, é o ambiente de execução de alto desempenho do Google para IA no dispositivo. Você pode encontrar modelos LiteRT prontos para execução para uma ampla gama de tarefas de ML/IA ou converter e executar modelos do TensorFlow, PyTorch e JAX no formato TFLite usando as ferramentas de conversão e otimização da IA no Edge.

Principais recursos

  • Otimizado para aprendizado de máquina no dispositivo: o LiteRT aborda cinco restrições principais do ODML: latência (não há ida e volta para um servidor), privacidade (nenhum dado pessoal sai do dispositivo), conectividade (a conectividade de Internet não é necessária), tamanho (tamanho reduzido do modelo e do binário) e consumo de energia (inferência eficiente e falta de conexões de rede).

  • Suporte a várias plataformas: compatível com dispositivos Android e iOS, Linux incorporado e microcontroladores.

  • Opções de modelo com vários frameworks: o AI Edge oferece ferramentas para converter modelos do TensorFlow, PyTorch e JAX no formato FlatBuffers (.tflite), permitindo que você use uma ampla gama de modelos de última geração no LiteRT. Você também tem acesso a ferramentas de otimização de modelos que podem processar quantização e metadados.

  • Suporte a várias linguagens: inclui SDKs para Java/Kotlin, Swift, Objective-C, C++ e Python.

  • Alto desempenho: aceleração de hardware com delegados especializados, como GPU e Core ML do iOS.

Fluxo de trabalho de desenvolvimento

O fluxo de trabalho de desenvolvimento do LiteRT envolve identificar um problema de ML/IA, escolher um modelo que resolva esse problema e implementar o modelo no dispositivo. As etapas a seguir orientam você pelo fluxo de trabalho e fornecem links para mais instruções.

1. Identifique a solução mais adequada para o problema de ML

O LiteRT oferece aos usuários um alto nível de flexibilidade e personalização ao resolver problemas de aprendizado de máquina, o que o torna uma boa opção para usuários que precisam de um modelo específico ou de uma implementação especializada. Os usuários que procuram soluções plug-and-play podem preferir o MediaPipe Tasks, que fornece soluções prontas para tarefas comuns de aprendizado de máquina, como detecção de objetos, classificação de texto e inferência de LLM.

Escolha um dos seguintes frameworks de IA de borda:

  • LiteRT: ambiente de execução flexível e personalizável que pode executar uma ampla gama de modelos. Escolha um modelo para seu caso de uso, converta-o para o formato LiteRT (se necessário) e execute-o no dispositivo. Se você pretende usar o LiteRT, continue lendo.
  • Tarefas do MediaPipe: soluções plug-and-play com modelos padrão que permitem personalização. Escolha a tarefa que resolve seu problema de IA/ML e implemente em várias plataformas. Se você pretende usar o MediaPipe Tasks, consulte a documentação do MediaPipe Tasks.

2. Escolher um modelo

Um modelo do LiteRT é representado em um formato portátil eficiente conhecido como FlatBuffers, que usa a extensão de arquivo .tflite.

É possível usar um modelo do LiteRT das seguintes maneiras:

Um modelo do LiteRT pode incluir metadados que tenham uma descrição de modelo legível por humanos e dados legíveis por máquina para a geração automática de pipelines de pré-processamento e pós-processamento durante a inferência no dispositivo. Consulte Adicionar metadados para mais detalhes.

3. Integrar o modelo ao app

É possível implementar seus modelos do LiteRT para executar inferências totalmente no dispositivo na Web, em dispositivos incorporados e em dispositivos móveis. O LiteRT contém APIs para Python, Java e Kotlin para Android, Swift para iOS e C++ para microdispositivos.

Use os guias a seguir para implementar um modelo do LiteRT na sua plataforma preferida:

Em dispositivos Android e iOS, é possível melhorar o desempenho usando a aceleração de hardware. Em qualquer uma das plataformas, é possível usar um delegado de GPU. No iOS, é possível usar o delegado Core ML. Para adicionar suporte a novos aceleradores de hardware, defina seu próprio delegado.

É possível executar a inferência das seguintes maneiras com base no tipo de modelo:

  • Modelos sem metadados: use a API LiteRT Interpreter. Compatível com várias plataformas e linguagens, como Java, Swift, C++, Objective-C e Python.

  • Modelos com metadados: é possível criar pipelines de inferência personalizados com a Biblioteca de suporte do LiteRT.

Migrar do TF Lite

Os aplicativos que usam bibliotecas TF Lite vão continuar funcionando, mas todo o novo desenvolvimento e atualizações ativas só serão incluídos nos pacotes do LiteRT. As APIs LiteRT contêm os mesmos nomes de método das APIs TF Lite. Portanto, a migração para o LiteRT não exige mudanças detalhadas no código.

Para mais informações, consulte o guia de migração.

Próximas etapas

Os novos usuários devem começar com o guia de início rápido do LiteRT. Para informações específicas, consulte as seções a seguir:

Conversão de modelo

Guias de plataformas