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. Wskazówki dotyczące modeli niestandardowych znajdziesz tutaj
Modele w interfejsach ML Kit API można instalować na 3 sposoby:
- Niegrupowane: modele są pobierane i zarządzane przez Usługi Google Play.
- W pakiecie: modele są statycznie połączone z aplikacją w momencie kompilacji.
- Pobieraj dynamicznie: modele są pobierane na żądanie.
Obsługiwane ścieżki instalacji dla każdego interfejsu API
Poniższa tabela przedstawia, które ścieżki instalacji modeli są obsługiwane przez poszczególne funkcje ML Kit:
Niegrupowane | W pakiecie | Dynamiczne pobieranie | |
Rozpoznawanie tekstu (wersja 2) | ✅ | ✅ | |
Wykrywanie twarzy | ✅ | ✅ | |
Wykrywanie siatki twarzy | ✅ | ||
Wykrywanie pozycji | ✅ | ||
Segmentowanie selfie | ✅ | ||
Skanowanie kodów kreskowych | ✅ | ✅ | |
Oznaczanie obrazów etykietami | ✅ | ✅ | |
Wykrywanie i śledzenie obiektów | ✅ | ||
Rozpoznawanie cyfrowego atramentu | ✅ | ||
Skaner dokumentów | ✅ | ||
Podział na segmenty według tematu | ✅ | ||
Skaner kodów Google | ✅ | ||
Identyfikacja języka | ✅ | ✅ | |
Tłumaczenie | ✅ | ||
Inteligentna odpowiedź | ✅ | ✅ | |
Ekstrakcja encji | ✅ |
Przewodniki dotyczące interfejsów API pokazują, jakie opcje instalacji są dostępne dla danego interfejsu API.
Najważniejsze różnice między opcjami instalacji
Niegrupowane | W pakiecie | Dynamiczne pobieranie | |
Gdzie są przechowywane modele? | Jest w Usługach Google Play i nie jest wliczany do limitu miejsca na dane wykorzystywanego przez tę aplikację | Zapisany w pamięci aplikacji po instalacji | Zapisano w pamięci aplikacji po pobraniu modelu |
Jak rozmiar modelu wpływa na rozmiar aplikacji? | Nie wpływa na rozmiar aplikacji | Bezpośrednio wpływa na rozmiar aplikacji | Nie zwiększa rozmiaru 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 w momencie instalacji aplikacji, więc można ich używać od razu. | Pobieraniem, aktualizowaniem i usuwaniem modeli trzeba 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 po odinstalowaniu wszystkich aplikacji zależnych od modelu | Po odinstalowaniu aplikacji modele są usuwane z pamięci związanej z aplikacją. | Po odinstalowaniu aplikacji pobrane modele są usuwane z pamięci związanej z aplikacją |
Jak wybrać wersję łączoną i niezbiorczą
Jeśli interfejs API obsługuje opcje instalacji zarówno w pakiecie, jak i bez niego:
Użyj opcji pakietu, jeśli priorytetowo traktujesz:
- Pełna funkcjonalność funkcji natychmiast po zainstalowaniu aplikacji
- Funkcja działa bez połączenia sieciowego po zainstalowaniu aplikacji
Użyj opcji niegrupowej, jeśli priorytetowo traktujesz:
- Mniejszy rozmiar aplikacji
- Automatyczne aktualizacje modeli przez Usługi Google Play
Jak pobierać modele
Jeśli wybierzesz opcję modelu bez pakietu, 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. Poniższy fragment kodu pokazuje na przykład, jak skonfigurować w aplikacji automatyczne pobieranie modelu skanowania kodów kreskowych po zainstalowaniu aplikacji 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 bezpośrednie pobranie pliku za pomocą interfejsu ModuleInstallClient API Usług Google Play.
Jeśli nie włączysz pobierania modelu w czasie instalacji lub nie poprosisz o wyraźne pobranie pliku, model zostanie pobrany przy pierwszym uruchomieniu tej funkcji. Dopóki pobieranie nie zostanie ukończone, żądania wnioskowania będą się kończyć niepowodzeniem.
Jak aktualizować modele
Aby zaktualizować modele w przypadku korzystania z 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 }
Ponownie skompiluj aplikację.
Dlaczego niektóre interfejsy API udostępniają modele pobierane dynamicznie
Niektóre interfejsy ML Kit API mają zbyt wiele opcji modeli, aby je połączyć w pakiet. Na przykład rozpoznawanie atramentu cyfrowego obsługuje ponad 300 języków, więc podczas instalacji nie zawsze trzeba dodawać wszystkie języki do funkcji. W tym celu udostępniamy 3 opcję instalacji, w której modele są pobierane na żądanie po instalacji. Obecnie ta opcja jest dostępna tylko w funkcjach Rozpoznawanie cyfrowego atramentu, Tłumaczenie i Wyodrębnianie encji.