Per impostazione predefinita, tutte le funzionalità di ML Kit utilizzano modelli di machine learning addestrati da Google (noti come modelli di base). Questa guida è applicabile solo ai modelli di base. Leggi qui per ottenere indicazioni sui modelli personalizzati.
I modelli nelle API ML Kit possono essere installati in uno dei tre modi seguenti:
- Unbundled: i modelli vengono scaricati e gestiti tramite Google Play Services.
- In bundle: i modelli sono collegati staticamente alla tua app in fase di creazione.
- Scaricati dinamicamente: i modelli vengono scaricati on demand.
Percorsi di installazione supportati per ogni API
La tabella seguente mostra i percorsi di installazione dei modelli supportati da ciascuna funzionalità di ML Kit:
| Unbundled | In bundle | Scaricati dinamicamente | |
| Riconoscimento del testo v2 | ✅ | ✅ | |
| Riconoscimento facciale | ✅ | ✅ | |
| Rilevamento della mesh facciale | ✅ | ||
| Rilevamento della posa | ✅ | ||
| Segmentazione dei selfie | ✅ | ||
| Scansione di codici a barre | ✅ | ✅ | |
| Etichettatura delle immagini | ✅ | ✅ | |
| Rilevamento e monitoraggio degli oggetti | ✅ | ||
| Riconoscimento dell'input penna digitale | ✅ | ||
| Scanner di documenti | ✅ | ||
| Segmentazione del soggetto | ✅ | ||
| Scanner di codici Google | ✅ | ||
| Identificazione della lingua | ✅ | ✅ | |
| Traduzioni | ✅ | ||
| Risposta rapida | ✅ | ✅ | |
| Estrazione di entità | ✅ |
Le guide specifiche per le API mostrano le opzioni di installazione disponibili per l'API specifica.
Differenze principali tra le opzioni di installazione
| Unbundled | In bundle | Scaricato dinamicamente | |
| Dove vengono archiviati i modelli? | Si trova in Google Play Services e non viene conteggiato nello spazio di archiviazione utilizzato da questa app | Salvati 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 dell'app |
| Quando vengono aggiornati i modelli? | Aggiornamento automatico quando viene rilasciata una nuova versione | È 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 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 quando l'app viene disinstallata |
Come scegliere tra prodotti in bundle e non in bundle
Se un'API supporta sia le opzioni di installazione in bundle sia quelle unbundled:
Utilizza l'opzione in bundle se dai la priorità a:
- Funzionalità completa subito dopo l'installazione dell'app
- Funzionalità senza connessione di rete dopo l'installazione dell'app
Utilizza l'opzione unbundled se dai priorità a:
- Dimensioni dell'app ridotte
- Aggiornamenti automatici dei modelli da parte di Google Play Services
Come scaricare i modelli
Quando utilizzi l'opzione del modello non integrato, puoi specificare come scaricare i modelli sul dispositivo:
Puoi attivare i download dei modelli al momento dell'installazione aggiungendo una dichiarazione al file
AndroidManifest.xmldella tua 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 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 il download esplicito tramite l'API ModuleInstallClient di Google Play Services.
Se non attivi 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à. Fino al completamento del download, le richieste di inferenza non andranno a buon fine.
Come aggiornare i modelli
Per aggiornare i modelli quando utilizzi l'opzione dei modelli in bundle o scaricati dinamicamente:
Aggiorna il file gradle della tua app per utilizzare la libreria client più recente della funzionalità ML Kit.
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }Ricostruisci l'app.
Perché alcune API offrono modelli scaricati dinamicamente
Alcune API ML Kit hanno troppe opzioni di modelli da raggruppare. Ad esempio, il riconoscimento dell'inchiostro digitale supporta oltre 300 lingue e non è sempre necessario inserire ogni lingua nella funzionalità durante l'installazione. A questo scopo, forniamo la terza opzione di installazione, in cui i modelli vengono scaricati on demand dopo l'installazione. Al momento, solo Riconoscimento dell'inchiostro digitale, Traduzione ed Estrazione di entità dispongono di questa opzione.