Ścieżki instalacji modelu ML Kit na Androidzie

Wszystkie funkcje ML Kit domyślnie korzystają z modeli uczenia maszynowego wytrenowanych przez Google (tzw. modeli bazowych). Ten przewodnik dotyczy tylko modeli podstawowych. Wskazówki dotyczące modeli niestandardowych

Modele w interfejsach API ML Kit można instalować na 3 sposoby:

  1. W ramach pakietu: modele są pobierane i zarządzane za pomocą Usług Google Play.
  2. W pakiecie: modele są statycznie powiązane z aplikacją w momencie kompilacji.
  3. Pobranie dynamiczne: modele są pobierane na żądanie.

Obsługiwane ścieżki instalacji dla poszczególnych interfejsów API

Poniższa tabela pokazuje, które ścieżki instalacji modeli są obsługiwane przez poszczególne funkcje MLKit:

Nieskładane W pakiecie Pobrany dynamicznie
Rozpoznawanie tekstu w wersji 2
Wykrywanie twarzy
Wykrywanie siatki twarzy
Wykrywanie pozy
Podział na segmenty na podstawie selfie
Skanowanie kodów kreskowych
Etykietowanie obrazów
wykrywanie i śledzenie obiektów,
Rozpoznawanie atramentu cyfrowego
Skaner dokumentów
Podział na tematy
skaner kodu Google,
Identyfikacja języka
Tłumaczenie
Inteligentna odpowiedź
Ekstrakcja encji

Przewodniki dotyczące poszczególnych interfejsów API podają, jakie opcje instalacji są dostępne w przypadku danego interfejsu.

Najważniejsze różnice między opcjami instalacji

Nieskładane W pakiecie Pobrany dynamicznie
Gdzie są przechowywane modele? znajduje się w Usługach Google Play i nie jest wliczana do miejsca na dane używanego przez tę aplikację; Zapisany w pamięci przeznaczonej dla aplikacji po zainstalowaniu Zapisano w pamięci przeznaczonej dla aplikacji po pobraniu modelu
Jak rozmiar modelu wpływa na rozmiar aplikacji? nie zwiększa rozmiaru aplikacji; Bezpośredni wpływ na rozmiar aplikacji Nie zwiększa rozmiaru aplikacji, ale zwiększa miejsce na dane aplikacji
Kiedy są aktualizowane modele? automatycznie aktualizowane po wydaniu nowszej wersji. Aby zaktualizować model, musisz zaktualizować aplikację Aby zaktualizować model, musisz zaktualizować aplikację
Kiedy pobierane są modele? Modele muszą zostać pobrane przed użyciem Wszystkie modele i funkcje są dostępne po zainstalowaniu aplikacji, więc można ich używać od razu. Pobraniami, aktualizacjami i usunięciami modeli należy zarządzać ręcznie za pomocą interfejsu RemoteModelManager API.
Kiedy modele są usuwane z urządzenia? Usługi Google Play usuną model z pamięci tylko wtedy, gdy wszystkie aplikacje, które go używają, zostaną odinstalowane. Modele są usuwane z magazynu danych konkretnej aplikacji po odinstalowaniu aplikacji. Po odinstalowaniu aplikacji pobrane modele są usuwane z magazynu danych aplikacji.

Jak wybrać między usługami w pakiecie a usługami bez pakietu

Jeśli interfejs API obsługuje zarówno opcje instalacji w pakiecie, jak i bez pakietu:

  • Skorzystaj z opcji pakietu, jeśli priorytetowo traktujesz:

    • pełna funkcjonalność funkcji od razu po zainstalowaniu aplikacji;
    • Funkcja bez połączenia z internetem po zainstalowaniu aplikacji
  • Skorzystaj z opcji niespakowanej, jeśli priorytetowo traktujesz:

    • Mniejszy rozmiar aplikacji
    • Automatyczne aktualizacje modeli przez Usługi Google Play

Jak pobierać modele

Korzystając z opcji niespakowanego modelu, możesz określić sposób pobierania modeli na urządzenie:

  • Aby włączyć pobieranie modelu w czasie instalacji, dodaj deklarację do pliku AndroidManifest.xml aplikacji. Na przykład poniższy fragment kodu pokazuje, jak skonfigurować aplikację, aby po zainstalowaniu jej ze Sklepu Play automatycznie pobierała model skanowania kodów kreskowych:

    <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 pobieranie z wyrażeniem zgody za pomocą interfejsu ModuleInstallClient API w Usługach Google Play.

  • Jeśli nie włączysz pobierania modelu w czasie instalacji ani nie poprosisz o pobieranie modelu, zostanie on pobrany przy pierwszym uruchomieniu funkcji. Dopóki pobieranie nie zostanie ukończone, żądania wnioskowania będą kończyć się niepowodzeniem.

Jak aktualizować modele

Aby zaktualizować modele, gdy używasz modelu w pakiecie lub opcji pobierania modeli dynamicznie:

  1. Zaktualizuj plik gradle aplikacji, aby korzystać z najnowszej biblioteki klienta funkcji ML Kit.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API
    }
    
  2. Utwórz ponownie aplikację.

Dlaczego niektóre interfejsy API oferują modele pobierane dynamicznie

Niektóre interfejsy ML Kit mają zbyt wiele opcji modeli, aby można je umieścić w pakiecie. Na przykład funkcja rozpoznawania pisma odręcznego obsługuje ponad 300 języków, ale nie zawsze trzeba uwzględniać wszystkie języki podczas instalacji. W tym celu udostępniamy trzecią opcję instalacji, w której modele są pobierane na żądanie po instalacji. Obecnie ta opcja jest dostępna tylko w przypadku cyfrowego rozpoznawania pisma odręcznego, tłumaczenia i wyodrębniania informacji o podmiotach.