Il 3 giugno 2020, abbiamo apportato alcune modifiche a ML Kit for Firebase per distinguere meglio le API on-device da quelle basate su cloud. L'attuale set di API è ora suddiviso in due prodotti:
Un nuovo prodotto, semplicemente chiamato ML Kit, che conterrà tutte le API on-device
Firebase Machine Learning, incentrato su API basate su cloud e sul deployment di modelli personalizzati.
Questa modifica semplificherà inoltre l'integrazione di ML Kit nella tua app se hai bisogno solo di una soluzione on-device. Questo documento spiega come eseguire la migrazione della tua app dall'SDK di Firebase ML Kit al nuovo SDK di ML Kit.
Cosa cambierà?
API di base sul dispositivo
Le API seguenti sono state spostate nel nuovo SDK ML Kit autonomo.
- Scansione dei codici a barre
- Rilevamento facciale
- Etichettatura delle immagini
- Rilevamento e monitoraggio degli oggetti
- Riconoscimento del testo
- ID lingua
- Risposta rapida
- Traduci
- API AutoML Vision Edge inference
Le API di base on-device esistenti nell'SDK ML Kit for Firebase sono obsolete e non riceveranno più aggiornamenti.
Se al momento utilizzi queste API nella tua app, esegui la migrazione al nuovo SDK ML Kit, seguendo la guida alla migrazione di ML Kit per Android e la guida alla migrazione di ML Kit per iOS.
API per modelli personalizzati
Per scaricare i modelli ospitati in Firebase, il downloader dei modelli personalizzati continua a essere offerto tramite l'SDK Firebase ML. L'SDK recupera il modello più recente disponibile e lo passa al runtime TensorFlow Lite separato per l'inferenza.
L'interprete di modelli personalizzati esistente nell'SDK ML Kit for Firebase è deprecato e non riceverà più aggiornamenti. Ti consigliamo di usare direttamente il runtime TensorFlow Lite per l'inferenza. In alternativa, se vuoi solo utilizzare modelli personalizzati per le API di etichettatura delle immagini e rilevamento e monitoraggio degli oggetti, ora puoi usare modelli personalizzati in queste API direttamente in ML Kit.
Consulta le guide alla migrazione per Android e iOS per istruzioni dettagliate.
Che cosa non è cambiato?
Le API e i servizi basati su cloud continueranno a essere offerti con Firebase ML:
Le API basate su cloud per l'etichettatura delle immagini, il riconoscimento del testo e il riconoscimento dei punti di riferimento sono ancora disponibili nell'SDK di Firebase ML.
Firebase ML continua a offrire anche il deployment dei modelli.
Domande frequenti
Perché questa modifica?
Questa modifica serve a chiarire quali soluzioni offre il prodotto. Con questa modifica, il nuovo SDK ML Kit è completamente incentrato sul machine learning on-device, in cui l'intera elaborazione dei dati avviene on-device ed è disponibile per gli sviluppatori senza costi. I servizi cloud che prima facevano parte di Firebase ML Kit rimangono disponibili tramite Firebase ML e puoi ancora utilizzarli in parallelo con le API ML Kit.
Per le API on-device, il nuovo SDK ML Kit consente agli sviluppatori di integrare più facilmente ML Kit nella loro app. In futuro dovrai solo aggiungere dipendenze al progetto dell'app e poi iniziare a utilizzare l'API. Non è necessario configurare un progetto Firebase solo per utilizzare le API sul dispositivo.
Che cosa succede ai modelli ospitati su Firebase?
Firebase Machine Learning continuerà a gestire i tuoi modelli come prima. Questa funzionalità non cambierà. Ecco un paio di miglioramenti:
Ora puoi eseguire il deployment dei tuoi modelli in Firebase in modo programmatico utilizzando gli SDK Python o Node.
Ora puoi utilizzare l'SDK Firebase ML insieme al runtime TensorFlow Lite. L'SDK Firebase scarica il modello sul dispositivo e il runtime TensorFlow Lite esegue l'inferenza. In questo modo puoi scegliere facilmente la versione di runtime che preferisci, inclusa una build personalizzata.
Quali vantaggi ottengo dalla migrazione al nuovo SDK ML Kit?
La migrazione al nuovo SDK garantirà che le tue applicazioni beneficiano delle ultime correzioni di bug e dei miglioramenti delle API on-device. Ad esempio, ecco un paio di modifiche nella prima release:
Ora puoi utilizzare le nuove API per etichettatura personalizzata delle immagini e API di rilevamento e monitoraggio degli oggetti personalizzati per integrare facilmente modelli di classificazione delle immagini personalizzati nelle tue app e creare esperienze utente interattive in tempo reale.
Il supporto del ciclo di vita Android Jetpack è stato aggiunto a tutte le API. Ora puoi utilizzare
addObserver
per gestire automaticamente l'avvio e l'eliminazione delle API ML Kit durante la rotazione o la chiusura dello schermo da parte dell'utente o del sistema dell'app. In questo modo l'integrazione con CameraX è più semplice.
Per un elenco completo delle ultime modifiche, consulta le note di rilascio dell'SDK ML Kit.
Oggi utilizzo ML Kit per Firebase, quando devo eseguire la migrazione?
Ciò dipende dall'API ML Kit per Firebase attualmente in uso nella tua app.
Le API di base sul dispositivo nell'SDK ML Kit for Firebase continueranno a funzionare nel prossimo futuro. Tuttavia, ritardando il passaggio al nuovo SDK ML Kit, non potrai usufruire di nuove funzionalità e aggiornamenti. Inoltre, dopo l'aggiornamento di altri componenti dell'app, c'è il rischio di incorrere in conflitti di dipendenze. Questo può accadere quando alcune delle altre dipendenze (dirette o indirette) sono più recenti di quelle previste dal precedente SDK ML Kit per Firebase. Esempi di librerie per cui ciò può accadere sono OkHttp e firebase-common.
Se utilizzi le API Cloud tramite l'SDK ML Kit for Firebase, al momento non sono necessarie modifiche.
Se utilizzi il deployment di modelli personalizzati, ti consigliamo di eseguire l'upgrade alla versione più recente, che consente di eseguire inferenze direttamente sul runtime di TensorFlow Lite.