Caminhos de instalação do modelo do Kit de ML no Android

Todos os recursos do kit de ML usam modelos de machine learning treinados pelo Google (conhecidos como modelos base) por padrão. Este guia se aplica somente aos modelos básicos. Clique aqui para ver orientações sobre modelos personalizados.

Os modelos nas APIs do kit de ML podem ser instalados de uma destas três maneiras:

  1. Desagrupados:os modelos são transferidos por download e gerenciados pelo Google Play Services.
  2. Agrupados: os modelos são vinculados estaticamente ao app no momento da criação.
  3. Download dinâmico: os modelos são transferidos por download sob demanda.

Caminhos de instalação compatíveis para cada API

A tabela abaixo mostra quais caminhos de instalação do modelo são compatíveis com cada recurso do kit de ML:

Desagrupado Pacotes Download dinâmico
Reconhecimento de texto v2
Detecção facial
Detecção de malha de rosto
Detecção de posse
Segmentação de selfie
Leitura de código de barras
Rotulagem de imagens
Detecção e rastreamento de objetos
Reconhecimento de tinta digital
Leitor de código do Google
Identificação de idioma
Tradução
Resposta inteligente
Extração de entidades

Guias específicos da API mostram quais opções de instalação estão disponíveis para a API especificada.

Principais diferenças entre as opções de instalação

Desagrupados Pacotes Download dinâmico
Onde os modelos são armazenados? reside no Google Play Services e não é contabilizado no armazenamento usado por esse app; salvos no armazenamento específico do app após a instalação. salvos no armazenamento específico do app após o download do modelo.
Como o tamanho do modelo afeta o tamanho do app? Não contribui para o tamanho do app Contribuem diretamente para o tamanho do app Contribuem diretamente para o tamanho do app
Quando os modelos são atualizados? Atualizado automaticamente quando uma nova versão é lançada É necessário atualizar o app para atualizar o modelo É necessário atualizar o app para atualizar o modelo
Quando é feito o download dos modelos? É preciso fazer o download dos modelos antes de usá-los Todos os modelos e recursos são incluídos quando o app é instalado, então podem ser usados imediatamente É preciso gerenciar manualmente os downloads, as atualizações e as exclusões de modelos usando a API RemoteModelManager
Quando os modelos são removidos do dispositivo? O Google Play Services só removerá o modelo do armazenamento se todos os apps que dependem dele forem desinstalados. Os modelos são removidos do armazenamento específico do app quando o app é desinstalado Os modelos transferidos por download são removidos do armazenamento específico do app quando o app é desinstalado.

Como escolher entre o pacote e o pacote

Se uma API for compatível com as opções de instalação em pacote e desagrupada:

  • Use a opção agrupada se você priorizar:

    • Conclua a funcionalidade do recurso imediatamente após a instalação do app
    • Recurso sem conexão de rede após a instalação do aplicativo
  • Use a opção desagrupada se você priorizar:

    • Menos espaço ocupado pelos apps.
    • Atualizações de modelos automatizadas pelo Google Play Services

Como fazer o download de modelos

Ao usar a opção de modelo desagrupado, é possível especificar como quer que o download dos modelos seja feito no dispositivo:

  • É possível ativar os downloads de modelos no momento da instalação adicionando uma declaração ao arquivo AndroidManifest.xml do seu app. Por exemplo, o snippet de código abaixo mostra como configurar seu app para fazer o download automático do modelo de leitura de código de barras após a instalação do app a partir da Play Store:

    <application ...>
          ...
          <meta-data
              android:name="com.google.mlkit.vision.DEPENDENCIES"
              android:value="barcode" >
          <!-- To use multiple models: android:value="barcode,model2,model3" -->
    </application>
    
  • Você pode solicitar o download explícito por meio da API ModuleInstallClient do Google Play Services.

  • Se você não ativar os downloads do modelo de tempo de instalação ou solicitar o download explícito, o download do modelo será feito na primeira vez que você executar o recurso. As solicitações de inferência falharão até que o download seja concluído.

Como atualizar modelos

Para atualizar os modelos ao usar o modelo agrupado ou a opção de modelos transferidos dinamicamente:

  1. Atualize o arquivo do Gradle do seu app para usar a biblioteca de cliente do recurso do kit de ML mais recente.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.1.0' // The latest version number of the API
    }
    
  2. Recrie seu app.

Por que algumas APIs oferecem modelos baixados dinamicamente

Algumas APIs do Kit de ML têm muitas opções de modelo para agrupar. Por exemplo, o reconhecimento de tinta digital é compatível com mais de 300 idiomas, e nem sempre é necessário colocar todos os idiomas no recurso durante a instalação. Para isso, fornecemos a terceira opção de instalação, em que os modelos são baixados sob demanda após a instalação. Atualmente, apenas Reconhecimento de tinta digital, Tradução e Extração de entidades têm essa opção.