Wszystkie funkcje ML Kit domyślnie korzystają z modeli systemów uczących się wytrenowanych przez Google (nazywanych modelami podstawowymi). Ten przewodnik dotyczy tylko modeli podstawowych. Tutaj znajdziesz wskazówki dotyczące modeli niestandardowych
Modele w interfejsach ML Kit API można instalować na 3 sposoby:
- Niepołączone: modele są pobierane i zarządzane w Usługach Google Play.
- W pakiecie: modele są statycznie połączone z aplikacją w czasie kompilacji.
- Pobierane dynamicznie:modele są pobierane na żądanie.
Obsługiwane ścieżki instalacji dla poszczególnych interfejsów API
W tabeli poniżej znajdziesz ścieżki instalacji modeli obsługiwane przez poszczególne funkcje ML Kit:
Niegrupowane | W pakiecie | pobierane dynamicznie. | |
Rozpoznawanie tekstu w wersji 2 | ✅ | ✅ | |
Wykrywanie twarzy | ✅ | ✅ | |
Wykrywanie siatki twarzy | ✅ | ||
Wykrywanie pozycji | ✅ | ||
Podział selfie na segmenty | ✅ | ||
Skanowanie kodów kreskowych | ✅ | ✅ | |
Oznaczanie obrazów etykietami | ✅ | ✅ | |
Wykrywanie i śledzenie obiektów | ✅ | ||
Cyfrowe rozpoznawanie tuszu | ✅ | ||
Skaner dokumentów | ✅ | ||
Podział według tematu na segmenty | ✅ | ||
Skaner kodów Google | ✅ | ||
Rozpoznawanie języka | ✅ | ✅ | |
Tłumaczenie | ✅ | ||
Inteligentna odpowiedź | ✅ | ✅ | |
Wyodrębnianie encji | ✅ |
Przewodniki dotyczące konkretnych interfejsów API pokazują, jakie opcje instalacji są dostępne dla danego interfejsu API.
Główne różnice między opcjami instalacji
Niegrupowane | W pakiecie | pobierane dynamicznie | |
Gdzie są przechowywane modele? | znajduje się w Usługach Google Play i nie jest wliczany do limitu miejsca na dane wykorzystywanego przez tę aplikację; | Zapisany w miejscu na dane aplikacji po instalacji | Zapisany w miejscu na dane aplikacji po pobraniu modelu |
Jak rozmiar modelu wpływa na rozmiar aplikacji? | Nie ma wpływu na rozmiar aplikacji | Bezpośrednio wpływa na rozmiar aplikacji | Nie ma wpływu na rozmiar aplikacji, ale zwiększa miejsce na dane aplikacji. |
Kiedy modele są aktualizowane? | Aktualizowane automatycznie po opublikowaniu nowszej wersji | Aby zaktualizować model, musisz zaktualizować aplikację | Aby zaktualizować model, musisz zaktualizować aplikację |
Kiedy są pobierane modele? | Modele należy pobrać przed użyciem | Wszystkie modele i funkcje są dostępne po zainstalowaniu aplikacji, więc można ich używać od razu. | Pobieraniem, aktualizowaniem i usuwaniem modelu należy zarządzać ręcznie za pomocą interfejsu API RemoteModelManager |
Kiedy modele są usuwane z urządzenia? | Usługi Google Play usuną model z pamięci tylko wtedy, gdy wszystkie aplikacje zależne od tego modelu zostaną odinstalowane | Po odinstalowaniu aplikacji modele są usuwane z pamięci aplikacji | Po odinstalowaniu aplikacji pobrane modele są usuwane z pamięci aplikacji |
Jak wybrać pakiet:
Jeśli interfejs API obsługuje zarówno opcje instalacji zawarte w pakiecie, jak i w przypadku niepakietu:
Użyj opcji łączenia, jeśli:
- Pełne działanie funkcji natychmiast po zainstalowaniu aplikacji
- Funkcja po zainstalowaniu aplikacji bez połączenia z siecią
Użyj opcji nienależącej do grupy, jeśli zależy Ci na:
- Mniejszy rozmiar aplikacji
- Zautomatyzowane aktualizacje modelu przez Usługi Google Play
Jak pobierać modele
Korzystając z opcji modelu niegrupowanego, możesz określić sposób pobierania modeli na urządzenie:
Możesz włączyć pobieranie modelu podczas instalacji, dodając deklarację do pliku
AndroidManifest.xml
aplikacji. Na przykład ten fragment kodu pokazuje, jak skonfigurować w aplikacji automatyczne pobieranie modelu skanowania kodów kreskowych po jej zainstalowaniu ze Sklepu Play:<application ...> ... <meta-data android:name="com.google.mlkit.vision.DEPENDENCIES" android:value="barcode" > <!-- To use multiple models: android:value="barcode,model2,model3" --> </application>
Możesz poprosić o jawne pobranie za pomocą interfejsu ModuleInstallClient API z Usług Google Play.
Jeśli nie włączysz pobierania modelu podczas instalacji ani nie zażądasz jawnego pobierania, model zostanie pobrany przy pierwszym uruchomieniu tej funkcji. Do momentu zakończenia pobierania żądania wnioskowania będą kończyć się niepowodzeniem.
Jak aktualizować modele
Aby zaktualizować modele, gdy używasz modelu w pakiecie lub opcji modeli pobieranych dynamicznie:
Zaktualizuj plik Gradle aplikacji, aby używać najnowszej biblioteki klienta funkcji ML Kit.
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.2.0' // The latest version number of the API }
Przebuduj aplikację.
Dlaczego niektóre interfejsy API oferują modele pobierane dynamicznie
Niektóre interfejsy ML Kit API mają zbyt wiele opcji modelu, by można było dodać je do pakietu. Na przykład cyfrowe rozpoznawanie pisma atramentowego obsługuje ponad 300 języków i nie zawsze trzeba umieszczać w nim wszystkie języki podczas instalacji. W tym celu udostępniamy trzecią opcję instalacji, która polega na pobieraniu modeli na żądanie po instalacji. Obecnie ta opcja jest dostępna tylko w przypadku rozpoznawania atramentu cyfrowego, tłumaczenia i wyodrębniania jednostek.