Visão geral do LiteRT

O LiteRT, antes conhecido como TensorFlow Lite, é o ambiente de execução de alto desempenho do Google para IA no dispositivo. Encontre modelos LiteRT prontos para uma grande variedade de tarefas de ML/IA ou converter e executar modelos do TensorFlow, PyTorch e JAX para o formato TFLite usando as ferramentas de conversão e otimização do AI Edge.

Principais recursos

  • Otimizado para aprendizado de máquina no dispositivo: a LiteRT inclui cinco opções. principais restrições do ODML: latência (não há ida e volta ao servidor), privacidade (nenhum dado pessoal sai do dispositivo), conectividade (conexão com a internet não não obrigatório), tamanho (modelo e tamanho binário reduzidos) e consumo de energia (inferência eficiente e falta de conexões de rede).

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

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

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

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

Fluxo de trabalho de desenvolvimento

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

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

A LiteRT oferece aos usuários um alto nível de flexibilidade e personalização quando se trata de resolver problemas de machine learning, o que o torna adequado para usuários que precisam de um modelo específico ou uma implementação especializada. Usuários que buscam soluções "plug-and-play", podem preferir o MediaPipe Tarefas, que oferece soluções prontas para tarefas comuns de machine learning, como detecção de objetos, classificação de textos e inferência LLM.

Escolha um dos seguintes frameworks do AI Edge:

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

2. Escolher um modelo

Um modelo LiteRT é representado em um formato portátil eficiente conhecido como FlatBuffers, que usa o .tflite .

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

  • Usar um modelo LiteRT existente: a abordagem mais simples é usar um O modelo LiteRT já está no formato .tflite. Esses modelos não que exigem a adição de etapas de conversão. Você pode encontrar modelos LiteRT em Modelos Kaggle.

  • Converter um modelo em um modelo LiteRT: você pode usar o método Conversor do TensorFlow, PyToch Converter ou JAX conversor para converter modelos para o formato FlatBuffers (.tflite) e executá-los em LiteRT. Para começar, você pode encontrar nos seguintes sites:

Um modelo LiteRT pode incluir opcionalmente metadados que contêm descrições de modelos legíveis por humanos e dados legíveis por máquina para geração de pipelines de pré 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 LiteRT para executar inferências completamente no dispositivo em dispositivos móveis, incorporados e na Web. A 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 LiteRT na sua preferência. plataforma:

  • Executar no Android: execute modelos em dispositivos Android usando a APIs Java/Kotlin.
  • Executar no iOS: execute modelos em dispositivos iOS usando o Swift APIs de terceiros.
  • Executar em micro: execute modelos em dispositivos incorporados usando as APIs C++.

Nos dispositivos Android e iOS, é possível melhorar o desempenho usando hardware. e aceleração. Em qualquer plataforma, é possível usar uma GPU Delegate. No iOS, é possível usar o Core ML Delegação. Para adicionar suporte a novos aceleradores de hardware, você pode 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 LiteRT. Interpreter. Compatível com vários idiomas e plataformas como Java, Swift, C++, Objective-C e Python.

  • Modelos com metadados: é possível criar pipelines de inferência personalizados com o Biblioteca de Suporte LiteRT (em inglês).

Migrar do LiteRT

Os aplicativos que usam bibliotecas LiteRT continuarão funcionando, mas todos os novos desenvolvimentos e atualizações ativos serão incluídos somente nos pacotes LiteRT. As APIs LiteRT contêm os mesmos nomes de métodos que as APIs do TF Lite. Por isso, a migração para LiteRT não exige alterações detalhadas no código.

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

Próximas etapas

Novos usuários devem começar com o guia de início rápido da LiteRT. Para informações específicas, consulte as seguintes seções:

Conversão de modelo

Guias de plataforma