Percorsi di installazione dei modelli ML Kit su Android

Tutte le funzionalità del kit ML utilizzano per impostazione predefinita modelli di machine learning addestrati da Google (noti come modelli di base). Questa guida riguarda solo i modelli di base. Consulta qui le indicazioni sui modelli personalizzati.

I modelli nelle API ML Kit possono essere installati in tre modi:

  1. Non in bundle: i modelli vengono scaricati e gestiti tramite Google Play Services.
  2. In bundle: i modelli vengono collegati in modo statico alla tua app al momento della creazione.
  3. Scaricato dinamicamente: i modelli vengono scaricati on demand.

Percorsi di installazione supportati per ogni API

La tabella seguente mostra quali percorsi di installazione dei modelli sono supportati da ciascuna funzionalità del kit ML:

Non in bundle In bundle Download dinamico
Riconoscimento del testo v2
Rilevamento facciale
Rilevamento mesh facciale
Rilevamento pose
Segmentazione dei selfie
Scansione di codici a barre
Etichettatura delle immagini
Rilevamento e monitoraggio degli oggetti
Riconoscimento a inchiostro digitale
Scanner di documenti
Segmentazione dell'oggetto
Scanner di codici Google
Identificazione della lingua
Traduzioni
Risposta rapida
Estrazione dell'entità

Le guide specifiche per le API mostrano le opzioni di installazione disponibili per l'API in questione.

Principali differenze tra le opzioni di installazione

Non in bundle In bundle Download dinamico
Dove vengono archiviati i modelli? Risiede in Google Play Services e non viene conteggiato ai fini del calcolo dello spazio di archiviazione utilizzato da questa app Salvato nello spazio di archiviazione specifico dell'app dopo l'installazione Salvato nello spazio di archiviazione specifico per l'app dopo il download del modello
In che modo le dimensioni del modello influiscono su quelle dell'app? Non contribuisce alle dimensioni dell'app Contribuisce direttamente alle dimensioni dell'app Non contribuisce alle dimensioni dell'app, ma aumenta lo spazio di archiviazione specifico per l'app
Quando vengono aggiornati i modelli? Si aggiorna automaticamente quando viene rilasciata una versione più recente Per aggiornare il modello è necessario aggiornare l'app Per aggiornare il modello è necessario aggiornare l'app
Quando vengono scaricati i modelli? I modelli devono essere scaricati prima dell'uso Tutti i modelli e le funzionalità sono inclusi al momento dell'installazione dell'app, quindi sono utilizzabili immediatamente I download, gli aggiornamenti e le eliminazioni dei modelli devono essere gestiti manualmente utilizzando l'API RemoteModelManager
Quando vengono rimossi i modelli dal dispositivo? Google Play Services rimuoverà il modello dallo spazio di archiviazione solo se tutte le app che dipendono dal modello vengono disinstallate I modelli vengono rimossi dallo spazio di archiviazione specifico dell'app quando l'app viene disinstallata I modelli scaricati vengono rimossi dallo spazio di archiviazione specifico dell'app al momento della disinstallazione dell'app

Come scegliere tra in bundle e non in bundle

Se un'API supporta sia l'opzione di installazione in bundle che quella non in bundle:

  • Utilizza l'opzione in bundle se dai priorità a:

    • Completa la funzionalità della funzionalità subito dopo l'installazione dell'app
    • Funzionalità della funzionalità senza connessione di rete dopo l'installazione dell'app
  • Utilizza l'opzione non in bundle se dai priorità a:

    • Dimensioni dell'app ridotte
    • Aggiornamenti automatici del modello da parte di Google Play Services

Come scaricare i modelli

Quando utilizzi l'opzione dei modelli non raggruppati, puoi specificare la modalità di download dei modelli sul dispositivo:

  • Puoi attivare i download dei modelli al momento dell'installazione aggiungendo una dichiarazione al file AndroidManifest.xml dell'app. Ad esempio, lo snippet di codice riportato di seguito mostra come configurare l'app per scaricare automaticamente il modello di scansione dei codici a barre dopo che l'app è stata installata dal 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>
    
  • Puoi richiedere il download esplicito tramite l'API ModuleInstallaClient di Google Play Services.

  • Se non abiliti i download del modello al momento dell'installazione o non richiedi un download esplicito, il modello verrà scaricato la prima volta che esegui la funzionalità. Fino al completamento del download, le richieste di inferenza non andranno a buon fine.

Come aggiornare i modelli

Per aggiornare i modelli quando utilizzi il modello in bundle o l'opzione per i modelli scaricati dinamicamente:

  1. Aggiorna il file gradle della tua app per utilizzare la libreria client delle funzionalità ML Kit più recente.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.2.0' // The latest version number of the API
    }
    
  2. Ricrea l'app.

Perché alcune API offrono modelli scaricati dinamicamente

Alcune API ML Kit hanno troppe opzioni di modello da raggruppare. Ad esempio, il riconoscimento digitale supporta oltre 300 lingue e non è sempre necessario inserire ogni lingua all'interno della funzionalità durante l'installazione. A questo scopo, forniamo la terza opzione di installazione, in cui i modelli vengono scaricati on demand dopo l'installazione. Attualmente, solo il Riconoscimento inchiostro digitale, Traduzione ed Estrazione delle entità offrono questa opzione.