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. Weitere Informationen zu benutzerdefinierten Modellen

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

  1. Nicht gebündelt:Modelle werden über die Google Play-Dienste heruntergeladen und verwaltet.
  2. Gebündelt:Modelle werden zur Build-Zeit 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-Funktionen unterstützt werden:

Nicht gebündelt Gebündelt Dynamisch heruntergeladen
Texterkennung V2
Gesichtserkennung
Erkennung von Gesichts-Meshs
Körperhaltungserkennung
Selfie-Segmentierung
Barcode-Scanning
Bildlabeling
Objekterkennung und -tracking
Erkennung von digitaler Tinte
Dokumentenscanner
Themensegmentierung
Google-Code-Scanner
Spracherkennung
Translation
Intelligente Antwort
Entitätsextraktion

In API-spezifischen Anleitungen wird gezeigt, welche Installationsoptionen für die jeweilige API verfügbar sind.

Wichtige Unterschiede zwischen den Installationsoptionen

Nicht gebündelt Gebündelt Dynamisch heruntergeladen
Wo werden Modelle gespeichert? Befindet sich in den Google Play-Diensten und wird nicht auf den von dieser App verwendeten Speicherplatz angerechnet Nach der Installation im app-spezifischen Speicher gespeichert Nach dem Herunterladen des Modells im app-spezifischen Speicher gespeichert
Wie wirkt sich die Modellgröße auf die App-Größe aus? Wird nicht auf die App-Größe angerechnet Trägt direkt zur App-Größe bei Trägt nicht zur App-Größe bei, erhöht aber den app-spezifischen Speicher
Wann werden Modelle aktualisiert? Wird automatisch aktualisiert, wenn eine neuere Version veröffentlicht wird App muss aktualisiert werden, um das Modell zu aktualisieren 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 sofort verwendet werden. Das Herunterladen, Aktualisieren und Löschen von Modellen muss manuell über die RemoteModelManager API verwaltet werden.
Wann werden Modelle vom Gerät entfernt? Das Modell wird nur dann aus dem Speicher entfernt, wenn alle Apps, die davon abhängen, deinstalliert werden. 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.

Zwischen gebündelten und nicht gebündelten Produkten wählen

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

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

    • Vollständige Funktionsweise der Funktion unmittelbar nach der App-Installation
    • Funktionsweise von Funktionen ohne Netzwerkverbindung nach der Installation der App
  • Verwenden Sie die Option ohne Bündelung, wenn Sie Folgendes priorisieren:

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

Modelle herunterladen

Wenn Sie die Option „Ungebündeltes Modell“ verwenden, können Sie angeben, wie Modelle auf das Gerät heruntergeladen werden sollen:

  • Sie können Modell-Downloads bei der Installation 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-Scanning-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 keine Modell-Downloads bei der Installation aktivieren oder keinen expliziten Download anfordern, wird das Modell beim ersten Ausführen der Funktion 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 Clientbibliothek für ML Kit-Funktionen zu verwenden.

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

Warum bieten einige APIs dynamisch heruntergeladene Modelle an?

Einige ML Kit-APIs haben zu viele Modelloptionen, um sie zu bündeln. Die Handschrifterkennung unterstützt beispielsweise über 300 Sprachen. Es ist nicht immer erforderlich, jede Sprache bei der Installation in die Funktion aufzunehmen. Dazu bieten wir die dritte Installationsoption an, bei der Modelle nach der Installation bei Bedarf heruntergeladen werden. Derzeit ist diese Option nur für Handschrifterkennung, Übersetzung und Entitätsextraktion verfügbar.