Migrationsanleitung

Am 3. Juni 2020 haben wir einige Änderungen am ML Kit for Firebase vorgenommen, um die On-Device-APIs von cloudbasierten APIs zu unterscheiden. Der aktuelle Satz von APIs ist jetzt in die folgenden beiden Produkte unterteilt:

  • Ein neues Produkt namens ML Kit, das alle APIs auf dem Gerät enthält

  • Firebase Machine Learning mit Schwerpunkt auf cloudbasierten APIs und benutzerdefinierten Modellbereitstellungen.

Durch diese Änderung wird es auch einfacher, ML Kit in Ihre App zu integrieren, wenn Sie nur eine On-Device-Lösung benötigen. In diesem Dokument wird erläutert, wie Sie Ihre Anwendung vom Firebase ML Kit SDK zum neuen ML Kit SDK migrieren.

Was ändert sich?

Basis-APIs auf dem Gerät

Die folgenden APIs wurden in das neue eigenständige ML Kit SDK verschoben.

  • Barcode-Scan
  • Gesichtserkennung
  • Bildbeschriftung
  • Objekterkennung und -tracking
  • Texterkennung
  • Sprach-ID
  • Intelligente Antwort
  • Übersetzer
  • AutoML Vision Edge-Inferenz API

Die vorhandenen On-Device-Basis-APIs im ML Kit for Firebase SDK wurden verworfen und erhalten keine Updates mehr.

Wenn Sie diese APIs heute in Ihrer App verwenden, migrieren Sie bitte zum neuen ML Kit SDK. Folgen Sie dazu der ML Kit-Migrationsanleitung für Android und der ML Kit-Migrationsanleitung für iOS.

APIs für benutzerdefinierte Modelle

Für das Herunterladen von Modellen, die in Firebase gehostet werden, wird der Downloader für benutzerdefinierte Modelle weiterhin über das Firebase ML SDK angeboten. Das SDK ruft das neueste verfügbare Modell ab und übergibt es zur Inferenz an die separate TensorFlow Lite-Laufzeit.

Der vorhandene Interpreter für benutzerdefinierte Modelle im ML Kit for Firebase SDK wurde verworfen und wird nicht mehr aktualisiert. Wir empfehlen, die TensorFlow Lite-Laufzeit direkt für die Inferenz zu verwenden. Wenn Sie benutzerdefinierte Modelle nur für APIs zur Labeling- und Objekterkennung sowie für das Tracking von Objekten verwenden möchten, können Sie jetzt benutzerdefinierte Modelle in diesen APIs direkt in ML Kit verwenden.

Eine ausführliche Anleitung finden Sie in den Migrationshandbüchern für Android und iOS.

Was hat sich nicht geändert?

Cloudbasierte APIs und Dienste werden mit Firebase ML weiterhin angeboten:

  • Die cloudbasierten APIs für Bildlabeling, Texterkennung und Sehenswürdigkeitenerkennung sind weiterhin über das Firebase ML SDK verfügbar.

  • Firebase ML bietet auch weiterhin die Modellbereitstellung

Häufig gestellte Fragen

Warum diese Änderung?

Mit dieser Änderung möchten wir verdeutlichen, welche Lösungen das Produkt bietet. Im Zuge dieser Änderung konzentriert sich das neue ML Kit SDK vollständig auf maschinelles Lernen auf dem Gerät, bei dem die gesamte Datenverarbeitung auf dem Gerät erfolgt und für Entwickler kostenlos verfügbar ist. Die Cloud-Dienste, die vorher Teil von Firebase ML Kit waren, bleiben über Firebase ML verfügbar und können weiterhin parallel mit ML Kit APIs verwendet werden.

Bei APIs auf dem Gerät ist es mit dem neuen ML Kit SDK für Entwickler einfacher, das ML Kit in ihre App zu integrieren. In Zukunft müssen Sie dem Projekt der App nur Abhängigkeiten hinzufügen und dann die API verwenden. Sie müssen kein Firebase-Projekt einrichten, um On-Device-APIs zu verwenden.

Was passiert mit meinen Modellen, die mit Firebase gehostet werden?

Firebase Machine Learning stellt Ihre Modelle weiterhin wie gewohnt zur Verfügung. An dieser Funktionalität ändert sich nichts. Hier sind einige Verbesserungen:

  • Sie können Ihre Modelle jetzt programmatisch mithilfe der Python-SDKs oder Node.js-SDKs in Firebase bereitstellen.

  • Sie können jetzt das Firebase ML SDK in Verbindung mit der TensorFlow Lite-Laufzeit verwenden. Das Firebase SDK lädt das Modell auf das Gerät herunter und die TensorFlow Lite-Laufzeit führt die Inferenz durch. Auf diese Weise können Sie einfach die von Ihnen bevorzugte Laufzeitversion auswählen, einschließlich eines benutzerdefinierten Builds.

Welche Vorteile bietet die Migration zum neuen ML Kit SDK?

Durch die Migration zum neuen SDK profitieren Ihre Anwendungen von den neuesten Fehlerkorrekturen und Verbesserungen der APIs auf dem Gerät. Hier sind beispielsweise einige Änderungen in der ersten Version:

  • Sie können jetzt die neuen APIs für benutzerdefiniertes Bildlabeling und benutzerdefinierte Objekterkennung und -Tracking verwenden, um benutzerdefinierte Bildklassifizierungsmodelle ganz einfach in Ihre Anwendungen zu integrieren und interaktive Nutzerumgebungen in Echtzeit zu erstellen.

  • Die Unterstützung für den Android Jetpack Lifecycle wurde allen APIs hinzugefügt. Sie können jetzt addObserver verwenden, um das Initiieren und Entfernen von ML Kit APIs automatisch zu verwalten, während die App durch den Nutzer bzw. das System die Bildschirmrotation oder das Schließen der App durchläuft. Dies vereinfacht die Integration mit CameraX.

Eine vollständige Liste der neuesten Änderungen finden Sie in den Versionshinweisen zum ML Kit SDK.

Ich verwende aktuell ML Kit for Firebase. Wann muss ich migrieren?

Das hängt davon ab, welche ML Kit for Firebase APIs Sie derzeit in Ihrer App verwenden.

  • Die Basis-APIs auf dem Gerät im ML Kit for Firebase SDK werden auch in absehbarer Zukunft weiterhin funktionieren. Wenn Sie jedoch den Wechsel zum neuen ML Kit SDK verzögern, profitieren Sie nicht von neuen Funktionen und Updates. Wenn Sie andere Komponenten in Ihrer App aktualisieren, besteht außerdem das Risiko, dass Abhängigkeitskonflikte auftreten. Dies kann passieren, wenn einige Ihrer anderen Abhängigkeiten (direkt oder indirekt) neuer sind als die, die vom alten ML Kit for Firebase SDK erwartet werden. Dies kann beispielsweise bei OkHttp und firebase-common der Fall sein.

  • Wenn Sie Cloud APIs über das ML Kit for Firebase SDK verwenden, ist derzeit keine Änderung erforderlich.

  • Wenn Sie die Bereitstellung eines benutzerdefinierten Modells verwenden, empfehlen wir ein Upgrade auf die neueste Version, mit der Inferenzen direkt in der TensorFlow Lite-Laufzeit ausgeführt werden können.