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:
- Non in bundle: i modelli vengono scaricati e gestiti tramite Google Play Services.
- In bundle: i modelli vengono collegati in modo statico alla tua app al momento della creazione.
- 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:
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 }
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.