LiteRT, früher bekannt als TensorFlow Lite, ist die Hochleistungslaufzeit für On-Device-KI. Sie finden einsatzbereite LiteRT-Modelle für eine ML-/KI-Aufgaben ausführen oder TensorFlow-, PyTorch- oder JAX-Modelle in das TFLite-Format mit den Konvertierungs- und Optimierungstools von AI Edge.
Wichtige Features
Optimiert für maschinelles Lernen auf dem Gerät: LiteRT behandelt fünf wichtige ODML-Einschränkungen: Latenz (ein Umlauf zu einem Server ist nicht möglich), Datenschutz (keine personenbezogenen Daten verlassen das Gerät), Konnektivität (eine Internetverbindung ist nicht erforderlich), Größe (geringere Modell- und binäre Größe) und Stromverbrauch (effiziente Inferenz und fehlende Netzwerkverbindungen).
Plattformübergreifende Unterstützung: Kompatibel mit Android und iOS-Geräte, eingebettet Linux und Mikrocontrollern.
Optionen für Multi-Framework-Modelle: AI Edge bietet Tools zum Konvertieren von Modellen. von TensorFlow-, PyTorch- und JAX-Modellen in das FlatBuffers-Format (
.tflite
), sodass Sie eine breite Palette hochmoderner Modelle LiteRT Außerdem haben Sie Zugriff auf Tools zur Modelloptimierung, Quantisierung und Metadaten.Vielfältige Sprachunterstützung: Umfasst SDKs für Java/Kotlin, Swift, Objective-C, C++ und Python.
Hohe Leistung: Hardwarebeschleunigung wie GPU und iOS Core ML.
Entwicklungs-Workflow
Der LiteRT-Entwicklungsworkflow beinhaltet die Identifizierung eines ML-/KI-Problems, ein Modell auswählen, das dieses Problem löst, und das Modell auf dem Gerät zu implementieren. Die folgenden Schritte führen Sie durch den Workflow und enthalten Links zu weiteren Anleitung.
1. Die geeignetste Lösung für das ML-Problem finden
LiteRT bietet Nutzenden ein hohes Maß an Flexibilität und Anpassbarkeit. wenn es darum geht, Probleme des maschinellen Lernens zu lösen. die ein bestimmtes Modell oder eine spezielle Implementierung benötigen. Nutzer*innen die nach Plug-and-Play-Lösungen suchen, bevorzugen unter Umständen MediaPipe Tasks bietet Ihnen für gängige ML-Aufgaben wie Objekterkennung, Textklassifizierung und LLM-Inferenz.
Wählen Sie eines der folgenden AI Edge-Frameworks aus:
- LiteRT: Flexible und anpassbare Laufzeit, die eine große Bandbreite verschiedenen Modellen. Wählen Sie ein Modell für Ihren Anwendungsfall aus, konvertieren Sie es in das LiteRT-Format (falls erforderlich) und führen es auf dem Gerät aus. Wenn Sie beabsichtigen, Lesen Sie weiter, wenn Sie LiteRT verwenden möchten.
- MediaPipe Tasks: Plug-and-Play-Lösungen mit Standardmodellen, die für die Anpassung. Wählen Sie die Aufgabe aus, die Ihr KI-/ML-Problem löst, und auf mehreren Plattformen implementieren. Wenn Sie MediaPipe Tasks verwenden möchten, finden Sie in der MediaPipe Dokumentation zu Tasks
2. Modell auswählen
Ein LiteRT-Modell wird in einem effizienten, portablen Format dargestellt, das
FlatBuffers verwendet die .tflite
Dateiendung.
Sie können ein LiteRT-Modell auf folgende Arten verwenden:
Vorhandenes LiteRT-Modell verwenden: Die einfachste Methode ist die Verwendung eines LiteRT-Modell bereits im Format
.tflite
. Diese Modelle enthalten keine zusätzliche Conversion-Schritte erforderlich. LiteRT-Modelle finden Sie auf Kaggle-Modelle:Modell in ein LiteRT-Modell umwandeln:Sie können die Methode TensorFlow Converter, PyToch Converter oder JAX Konverter zum Konvertieren von Modellen in das FlatBuffers-Format (
.tflite
) und führen Sie sie in LiteRT aus. Für den Einstieg finden Sie auf den folgenden Websites:- TensorFlow-Modelle auf Kaggle Modelle und Umarmendes Gesicht
- PyTorch-Modelle in Hugging
Gesicht und
torchvision
- JAX-Modelle in Hugging Face
Ein LiteRT-Modell kann optional Metadaten enthalten, die Folgendes enthalten: menschenlesbare Modellbeschreibungen und maschinenlesbare Daten für automatische Pipelines für die Vor- und Nachbearbeitung während der On-Device-Inferenz generiert werden. Weitere Informationen findest du unter Metadaten hinzufügen.
3. Modell in die App einbinden
Sie können Ihre LiteRT-Modelle implementieren, um Inferenzen vollständig auszuführen im Web, auf eingebetteten und auf Mobilgeräten. LiteRT enthält APIs für Python, Java und Kotlin für Android, Swift für iOS und C++ für Mikrogeräte.
Verwenden Sie die folgenden Leitfäden, um ein LiteRT-Modell auf Ihrem bevorzugten Gerät zu implementieren. Plattform:
- Auf Android-Geräten ausführen: Führen Sie Modelle auf Android-Geräten mit der Java/Kotlin APIs
- Ausführung auf iOS: Führen Sie Modelle auf iOS-Geräten mit Swift aus. APIs
- Run on Micro: Modelle auf eingebetteten Geräten ausführen mithilfe der C++ APIs.
Auf Android- und iOS-Geräten lässt sich die Leistung mithilfe der Hardware verbessern von Beschleunigungen. Bei beiden Plattformen können Sie eine GPU Delegieren und unter iOS können Sie das Core ML Delegieren. Um neue Hardwarebeschleuniger zu unterstützen, können Sie Sie können Ihren eigenen Bevollmächtigten definieren.
Je nach Modelltyp können Sie eine Inferenz auf folgende Arten ausführen:
Modelle ohne Metadaten: Verwenden Sie die Methode LiteRT Interpreter API. Unterstützung auf mehreren Plattformen und Sprachen wie Java, Swift, C++, Objective-C und Python.
Modelle mit Metadaten: Sie können benutzerdefinierte Inferenzpipelines mit den LiteRT-Supportbibliothek.
Von LiteRT migrieren
Anwendungen, die LiteRT-Bibliotheken nutzen, funktionieren weiterhin, Alle neuen aktiven Entwicklungen und Updates sind nur in LiteRT-Paketen enthalten. Die LiteRT-APIs enthalten dieselben Methodennamen wie die TF Lite-APIs, sodass die Migration für LiteRT sind keine detaillierten Codeänderungen erforderlich.
Weitere Informationen finden Sie in der Migrationsanleitung.
Nächste Schritte
Neue Nutzer sollten mit dem LiteRT-Schnellstart beginnen. Weitere Informationen finden Sie in den folgenden Abschnitten:
Modellkonvertierung
- TensorFlow-Modelle konvertieren
- PyTorch-Modelle konvertieren
- Generative AI-Modelle von PyTorch konvertieren
- JAX-Modelle konvertieren
Plattformleitfäden