ML Kit-Modellinstallationspfade unter Android

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

Es gibt drei Möglichkeiten, Modelle in ML Kit APIs zu installieren:

  1. Nicht gebündelt:Modelle werden über Google Play-Dienste heruntergeladen und verwaltet.
  2. Gebündelt:Modelle sind beim Build statisch mit Ihrer App verknüpft.
  3. Dynamisch heruntergeladen: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:

Ungebündelt Im Set Dynamisch heruntergeladen
Texterkennung v2
Gesichtserkennung
Gesichtserkennung
Poseerkennung
Selfie-Segmentierung
Barcode scannen
Bildlabels
Objekterkennung und -tracking
Digitale Tintenerkennung
Dokumentscanner
Themensegmentierung
Codescanner von Google
Spracherkennung
Übersetzung
Intelligente Antwort
Entitätsextraktion

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

Die wichtigsten Unterschiede zwischen den Installationsoptionen

Ungebündelt Im Set Dynamisch heruntergeladen
Wo werden Modelle gespeichert? Befindet sich in den Google Play-Diensten und wird nicht auf den von dieser App belegten Speicherplatz angerechnet Nach der Installation im app-spezifischen Speicher gespeichert Nach dem Modelldownload im app-spezifischen Speicher gespeichert
Wie wirkt sich die Modellgröße auf die App-Größe aus? Hat keinen Einfluss auf die App-Größe Trägt direkt zur App-Größe bei Beeinflusst nicht die App-Größe, erhöht aber den app-spezifischen Speicher
Wann werden Modelle aktualisiert? Wird automatisch aktualisiert, wenn eine neuere Version veröffentlicht wird Die App muss aktualisiert werden, damit das Modell aktualisiert werden kann Die App muss aktualisiert werden, damit das Modell aktualisiert werden kann
Wann werden Modelle heruntergeladen? Modelle müssen vor der Verwendung heruntergeladen werden Alle Modelle und Funktionen werden bei der Installation der App übernommen und können daher sofort verwendet werden Modelldownloads, -updates und -löschungen müssen manuell mit der RemoteModelManager API verwaltet werden
Wann werden Modelle vom Gerät entfernt? Google Play-Dienste entfernen das Modell nur aus dem Speicher, wenn alle Apps, die vom Modell abhängig sind, deinstalliert sind Modelle werden aus dem app-spezifischen Speicher entfernt, wenn die App deinstalliert wird Heruntergeladene Modelle werden aus dem app-spezifischen Speicher entfernt, wenn die App deinstalliert wird

So wählen Sie zwischen gebündelt und ungebündelt aus

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

  • Verwenden Sie die Option „gebündelt“, wenn Sie Folgendes priorisieren:

    • Führe die Funktionen direkt nach der Installation der App aus.
    • Funktion ohne Netzwerkverbindung nach App-Installation
  • Verwenden Sie die Option „Ungruppiert“, wenn Ihnen Folgendes wichtig ist:

    • Kleinere App-Größe
    • Automatisierte Modellupdates durch Google Play-Dienste

Modelle herunterladen

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

  • Sie können Modelldownloads für die 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 Modell zum Barcode-Scanning 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>
    
  • Du kannst einen expliziten Download über die ModuleInstallClient API der Google Play-Dienste anfordern.

  • Wenn Sie das Herunterladen von Modellen zum Zeitpunkt der Installation nicht aktivieren oder einen expliziten Download anfordern, wird das Modell bei der ersten Ausführung des Features heruntergeladen. Bis der Download abgeschlossen ist, 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-Funktions-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

Einige ML Kit-APIs haben zu viele Modelloptionen, um sie zu bündeln. Die digitale Tintenerkennung unterstützt beispielsweise mehr als 300 Sprachen und es muss nicht immer während der Installation jede Sprache innerhalb der Funktion hinzugefügt werden. Zu diesem Zweck bieten wir die dritte Installationsoption an, bei der Modelle nach der Installation bei Bedarf heruntergeladen werden. Derzeit gibt es diese Option nur für die digitale Tintenerkennung, die Übersetzung und die Entitätsextraktion.