Tutte le funzionalità di ML Kit utilizzano per impostazione predefinita modelli di machine learning addestrati da Google (noti come modelli di base). Questa guida si applica solo ai modelli di base. Leggi qui per 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 sono collegati in modo statico alla tua app al momento della creazione.
- Download dinamico: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à ML Kit:
Non in bundle | In bundle | Download dinamico | |
Riconoscimento del testo v2 | ✅ | ✅ | |
Rilevamento dei volti | ✅ | ✅ | |
Rilevamento mesh facciale | ✅ | ||
Rilevamento delle posizioni | ✅ | ||
Segmentazione dei selfie | ✅ | ||
Scansione di codici a barre | ✅ | ✅ | |
Etichettatura delle immagini | ✅ | ✅ | |
Rilevamento e monitoraggio degli oggetti | ✅ | ||
Riconoscimento dell'inchiostro digitale | ✅ | ||
Scanner di documenti | ✅ | ||
Segmentazione del soggetto | ✅ | ||
Scanner codici di Google | ✅ | ||
Identificazione della lingua | ✅ | ✅ | |
Traduzioni | ✅ | ||
Risposta rapida | ✅ | ✅ | |
Estrazione delle entità | ✅ |
Le guide specifiche per le API mostrano le opzioni di installazione disponibili per l'API in questione.
Differenze principali 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 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 dell'app dopo il download del modello |
In che modo le dimensioni del modello influiscono sulle dimensioni 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 | È necessario aggiornare l'app per aggiornare il modello | È necessario aggiornare l'app per aggiornare il modello |
Quando vengono scaricati i modelli? | I modelli devono essere scaricati prima dell'uso | Tutti i modelli e le funzionalità sono inclusi quando l'app viene installata, quindi possono essere utilizzati 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 sono state 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 quando l'app viene disinstallata |
Come scegliere tra in bundle e non in bundle
Se un'API supporta sia le opzioni di installazione in bundle che non in bundle:
Utilizza l'opzione in bundle se dai la 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 raggruppati" se dai la priorità a:
- App di dimensioni ridotte
- Aggiornamenti automatici dei modelli da parte di Google Play Services
Come scaricare i modelli
Quando utilizzi l'opzione del modello non in bundle, puoi specificare la modalità di download dei modelli sul dispositivo:
Puoi abilitare 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 il download automatico del modello di scansione dei codici a barre dopo l'installazione dell'app 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 un download esplicito tramite l'APIModuleInstallClient di Google Play Services.
Se non abiliti i download dei modelli al momento dell'installazione o non richiedi il download esplicito, il modello verrà scaricato la prima volta che esegui la funzionalità. Le richieste di inferenza non andranno a buon fine finché il download non sarà completato.
Come aggiornare i modelli
Per aggiornare i modelli quando utilizzi il modello in bundle o l'opzione di modelli scaricati dinamicamente:
Aggiorna il file gradle dell'app per utilizzare la libreria client delle funzionalità più recente di ML Kit.
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 dell'inchiostro digitale supporta oltre 300 lingue e non è sempre necessario inserire ogni lingua all'interno della funzionalità durante l'installazione. A questo scopo, offriamo la terza opzione di installazione, in cui i modelli vengono scaricati on demand dopo l'installazione. Al momento, questa opzione è disponibile solo per il riconoscimento dell'inchiostro digitale, la traduzione e l'estrazione delle entità.