ML Kit-Modellinstallationspfade unter Android

Für alle ML Kit-Funktionen werden standardmäßig von Google trainierte Modelle für maschinelles Lernen (sogenannte Basismodelle) verwendet. Dieser Leitfaden gilt nur für Basismodelle. Hier finden Sie eine Anleitung zu benutzerdefinierten Modellen.

Modelle in ML Kit APIs können auf drei Arten installiert werden:

  1. Ungebündelt:Die Modelle werden über die Google Play-Dienste heruntergeladen und verwaltet.
  2. Gebündelt:Die Modelle werden bei der Build-Erstellung statisch mit Ihrer App verknüpft.
  3. Dynamisch heruntergeladen:Die Modelle werden bei Bedarf heruntergeladen.

Unterstützte Installationspfade für jede API

In der folgenden Tabelle sehen Sie, welche Modellinstallationspfade von den einzelnen ML Kit-Features unterstützt werden:

Ungruppiert Gebündelt Dynamisch heruntergeladen
Texterkennung v2
Gesichtserkennung
Face-Mesh-Erkennung
Pose-Erkennung
Selfie-Segmentierung
Barcode scannen
Bildlabel
Objekterkennung und -tracking
Digitale Tintenerkennung
Dokumentenscanner
Themensegmentierung
Google Code Scanner
Spracherkennung
Übersetzung
Intelligente Antwort
Entitätsextraktion

API-spezifische Leitfäden zeigen, welche Installationsoptionen für die jeweilige API verfügbar sind.

Hauptunterschiede zwischen den Installationsoptionen

Ungruppiert Im Set Dynamisch heruntergeladen
Wo werden Modelle gespeichert? Befindet sich in den Google Play-Diensten und wird nicht auf den von dieser App verwendeten Speicherplatz angerechnet Wird nach der Installation im app-spezifischen Speicher gespeichert Wird nach dem Download des Modells im app-spezifischen Speicher gespeichert
Wie wirkt sich die Modellgröße auf die App-Größe aus? Beeinflusst nicht die App-Größe Trägt direkt zur App-Größe bei Trägt nicht zur App-Größe bei, erhöht aber den appspezifischen Speicher.
Wann werden Modelle aktualisiert? Automatische Aktualisierung, wenn eine neuere Version veröffentlicht wird Die App muss aktualisiert werden, um das Modell zu aktualisieren Die App muss aktualisiert werden, um das Modell zu aktualisieren
Wann werden Modelle heruntergeladen? Modelle müssen vor der Verwendung heruntergeladen werden Alle Modelle und Funktionen sind bei der Installation der App enthalten und können daher sofort genutzt werden. Modelldownloads, -aktualisierungen und -löschungen müssen manuell mit der RemoteModelManager API verwaltet werden.
Wann werden Modelle vom Gerät entfernt? Die Google Play-Dienste entfernen das Modell nur dann aus dem Speicher, wenn alle von diesem Modell abhängigen Apps deinstalliert werden Modelle werden bei der Deinstallation der App aus dem app-spezifischen Speicher entfernt Heruntergeladene Modelle werden bei der Deinstallation der App aus dem app-spezifischen Speicher entfernt

So wählen Sie zwischen gruppiert und nicht gebündelt

Wenn eine API sowohl gebündelte als auch entbündelte Installationsoptionen unterstützt:

  • Verwenden Sie die gebündelte Option, wenn Sie Folgendes priorisieren:

    • Funktionsfunktionen werden sofort nach der App-Installation ausgeführt
    • Funktionalität ohne Netzwerkverbindung nach der App-Installation
  • Verwenden Sie die Option „Ungruppiert“, wenn Sie Folgendes priorisieren:

    • Kleinere App-Größe
    • Automatische Modellaktualisierungen durch Google Play-Dienste

Modelle herunterladen

Wenn Sie die Option für entbündelte Modelle verwenden, können Sie angeben, wie Modelle auf das Gerät heruntergeladen werden sollen:

  • Sie können Downloads von Modellen bei der Installationszeit aktivieren, indem Sie der Datei AndroidManifest.xml Ihrer App eine Deklaration hinzufügen. Das folgende Code-Snippet zeigt beispielsweise, wie Sie Ihre App so konfigurieren, dass das Barcode-Scanner-Modell automatisch heruntergeladen wird, nachdem Ihre App aus dem Play Store installiert wurde:

    <application ...>
          ...
          <meta-data
              android:name="com.google.mlkit.vision.DEPENDENCIES"
              android:value="barcode" >
          <!-- To use multiple models: android:value="barcode,model2,model3" -->
    </application>
    
  • Sie können über die ModuleInstallClient API der Google Play-Dienste einen expliziten Download anfordern.

  • Wenn Sie weder Modelldownloads bei der Installation aktivieren noch einen expliziten Download anfordern, wird das Modell bei der ersten Ausführung des Features heruntergeladen. Bis zum Abschluss des Downloads schlagen Inferenzanfragen fehl.

Modelle aktualisieren

So aktualisieren Sie Ihre Modelle, wenn Sie das gebündelte Modell oder die Option für dynamisch heruntergeladene Modelle verwenden:

  1. Aktualisieren Sie die Gradle-Datei Ihrer App, um die neueste ML Kit-Feature-Clientbibliothek zu verwenden.

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.2.0' // The latest version number of the API
    }
    
  2. Erstellen Sie Ihre App neu.

Warum einige APIs dynamisch heruntergeladene Modelle anbieten

Für einige ML Kit APIs sind zu viele Modelloptionen verfügbar, um sie bündeln zu können. Die digitale Tintenerkennung unterstützt beispielsweise mehr als 300 Sprachen und es ist nicht immer erforderlich, während der Installation jede Sprache in der Funktion anzugeben. Zu diesem Zweck bieten wir die dritte Installationsoption an, bei der Modelle nach der Installation on demand heruntergeladen werden. Derzeit gibt es diese Option nur für die digitale Tintenerkennung, die Übersetzung und die Entitätsextraktion.