Por padrão, todos os recursos do ML Kit usam modelos de machine learning treinados pelo Google (conhecidos como modelos de base). Este guia é aplicável apenas aos modelos básicos. Confira aqui orientações sobre modelos personalizados.
Os modelos nas APIs do ML Kit podem ser instalados de três maneiras:
- Desvinculado:os modelos são baixados e gerenciados pelo Google Play Services.
- Agrupado:os modelos são vinculados estaticamente ao app no momento da criação.
- Download dinâmico:os modelos são baixados sob demanda.
Caminhos de instalação compatíveis para cada API
A tabela abaixo mostra quais caminhos de instalação de modelo são compatíveis com cada recurso do ML Kit:
Sem pacote | Agrupado | Baixado dinamicamente | |
Reconhecimento de texto v2 | ✅ | ✅ | |
Detecção facial | ✅ | ✅ | |
Detecção de malha facial | ✅ | ||
Detecção de poses | ✅ | ||
Segmentação de selfie | ✅ | ||
Leitura de código de barras | ✅ | ✅ | |
Rotulagem de imagens | ✅ | ✅ | |
Detecção e rastreamento de objetos | ✅ | ||
Reconhecimento de tinta digital | ✅ | ||
Digitalizador de documentos | ✅ | ||
Segmentação de assunto | ✅ | ||
Leitor de código do Google | ✅ | ||
Identificação de idioma | ✅ | ✅ | |
Tradução | ✅ | ||
Resposta inteligente | ✅ | ✅ | |
Extração de entidades | ✅ |
Os guias específicos da API mostram quais opções de instalação estão disponíveis para a API em questão.
Principais diferenças entre as opções de instalação
Sem pacote | Agrupado | Baixado dinamicamente | |
Onde os modelos são armazenados? | Reside no Google Play Services e não é contabilizado no armazenamento usado pelo app. | Salvos no armazenamento específico do app após a instalação | Salvo 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 | Contribui diretamente para o tamanho do app | Não contribui para o tamanho do app, mas aumenta o armazenamento específico do app. |
Quando os modelos são atualizados? | Atualizado automaticamente quando uma versão mais recente é lançada | É preciso atualizar o app para atualizar o modelo | É preciso atualizar o app para atualizar o modelo |
Quando os modelos são baixados? | Os modelos precisam ser baixados antes do uso | Todos os modelos e recursos são incluídos quando o app é instalado e podem ser usados imediatamente | Os downloads, atualizações e exclusões de modelos precisam ser gerenciados manualmente usando a API RemoteModelManager. |
Quando os modelos são removidos do dispositivo? | O Google Play Services só remove 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 baixados são removidos do armazenamento específico do app quando o app é desinstalado. |
Como escolher entre agrupado e desagrupado
Se uma API for compatível com as opções de instalação agrupada e não agrupada:
Use a opção agrupada se você priorizar:
- Concluir a funcionalidade do recurso imediatamente após a instalação do app
- Funcionalidade do recurso sem conexão de rede após a instalação do app
Use a opção sem pacote se você priorizar:
- Menos espaço ocupado pelos apps.
- Atualizações automáticas de modelos pelo Google Play Services
Como baixar modelos
Ao usar a opção de modelo não agrupado, é possível especificar como você quer que os modelos sejam baixados para o dispositivo:
Para ativar os downloads de modelos no momento da instalação, adicione uma declaração ao arquivo
AndroidManifest.xml
do 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 depois que ele for instalado na 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>
É possível solicitar o download explícito usando a API ModuleInstallClient do Google Play Services.
Se você não ativar os downloads do modelo no momento da instalação ou solicitar o download explícito, o modelo será baixado na primeira vez que você executar o recurso. Até que o download seja concluído, as solicitações de inferência vão falhar.
Como atualizar modelos
Para atualizar seus modelos ao usar a opção de modelo agrupado ou de modelos baixados dinamicamente:
Atualize o arquivo gradle do app para usar a biblioteca de cliente de recursos do ML Kit mais recente.
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }
Recrie o app.
Por que algumas APIs oferecem modelos baixados dinamicamente
Algumas APIs do ML Kit têm muitas opções de modelo para serem agrupadas. Por exemplo, o reconhecimento de tinta digital é compatível com mais de 300 idiomas, e nem sempre é necessário incluir todos os idiomas no recurso durante a instalação. Para isso, oferecemos a terceira opção de instalação, em que os modelos são baixados sob demanda após a instalação. No momento, apenas Reconhecimento de tinta digital, Tradução e Extração de entidades têm essa opção.