Dieser Leitfaden soll Ihnen helfen, die generativen KI- und ML-Lösungen (künstliche Intelligenz und maschinelles Lernen) von Google in Ihre Anwendungen zu integrieren. Er bietet eine Anleitung, mit der Sie sich in den verschiedenen verfügbaren KI- und ML-Lösungen zurechtfinden und die Lösung auswählen können, die am besten zu Ihren Anforderungen passt. Ziel dieses Dokuments ist es, Ihnen bei der Entscheidung zu helfen, welches Tool Sie verwenden sollten und warum. Dabei werden Ihre Anforderungen und Anwendungsfälle berücksichtigt.
Um Ihnen bei der Auswahl der am besten geeigneten KI/ML-Lösung für Ihre spezifischen Anforderungen zu helfen, enthält dieses Dokument einen Leitfaden zu Lösungen. Wenn Sie eine Reihe von Fragen zu den Zielen und Einschränkungen Ihres Projekts beantworten, werden Sie im Leitfaden zu den am besten geeigneten Tools und Technologien weitergeleitet.
Dieser Leitfaden hilft Ihnen bei der Auswahl der besten KI-Lösung für Ihre App. Berücksichtigen Sie dabei die folgenden Faktoren: den Datentyp (Text, Bilder, Audio, Video), die Komplexität der Aufgabe (einfache Zusammenfassung bis hin zu komplexen Aufgaben, die Fachwissen erfordern) und die Datengröße (kurze Eingaben im Vergleich zu großen Dokumenten). So können Sie entscheiden, ob Sie Gemini Nano auf Ihrem Gerät oder die cloudbasierte KI von Firebase (Gemini Flash, Gemini Pro oder Imagen) verwenden möchten.
Vorteile der Inferenz auf dem Gerät nutzen
Wenn Sie Ihrer Android-App KI- und ML-Funktionen hinzufügen, können Sie diese auf verschiedene Arten bereitstellen – entweder auf dem Gerät oder in der Cloud.
On-Device-Lösungen wie Gemini Nano liefern Ergebnisse ohne zusätzliche Kosten, bieten mehr Datenschutz für Nutzer und zuverlässige Offline-Funktionen, da Eingabedaten lokal verarbeitet werden. Diese Vorteile können für bestimmte Anwendungsfälle wie die Zusammenfassung von Nachrichten entscheidend sein. Daher sollte die Inferenz auf dem Gerät bei der Auswahl der richtigen Lösungen Priorität haben.
Mit Gemini Nano können Sie die Inferenz direkt auf einem Android-Gerät ausführen. Wenn Sie mit Text, Bildern oder Audio arbeiten, beginnen Sie mit den GenAI-APIs von ML Kit für sofort einsatzbereite Lösungen. Die GenAI-APIs von ML Kit basieren auf Gemini Nano und nutzen AICore als zugrunde liegenden Systemdienst. Sie sind für bestimmte Aufgaben auf dem Gerät optimiert. Die GenAI-APIs von ML Kit sind aufgrund ihrer übergeordneten Schnittstelle und Skalierbarkeit ideal für die Produktion Ihrer Apps geeignet. Mit diesen APIs können Sie Anfragen in natürlicher Sprache mit Text- und Bildeingaben senden. So lassen sich verschiedene Anwendungsfälle realisieren, z. B. Bildverständnis, kurze Übersetzungen und geführte Zusammenfassungen.
Für herkömmliche ML-Aufgaben haben Sie die Möglichkeit, eigene benutzerdefinierte Modelle zu implementieren. Wir bieten leistungsstarke Tools wie ML Kit, MediaPipe, LiteRT und Google Play-Bereitstellungsfunktionen, um den Entwicklungsprozess zu optimieren.
Für Anwendungen, die hochspezialisierte Lösungen erfordern, können Sie Ihr eigenes benutzerdefiniertes Modell verwenden, z. B. Gemma oder ein anderes Modell, das auf Ihren spezifischen Anwendungsfall zugeschnitten ist. Führen Sie Ihr Modell mit LiteRT direkt auf dem Gerät des Nutzers aus. LiteRT bietet vordefinierte Modellarchitekturen für eine optimale Leistung.
Sie können auch eine hybride Lösung erstellen, indem Sie sowohl On-Device- als auch Cloud-Modelle nutzen.
In mobilen Apps werden häufig lokale Modelle für kleine Textdaten wie Chatunterhaltungen oder Blogartikel verwendet. Bei größeren Datenquellen (z. B. PDFs) oder wenn zusätzliches Wissen erforderlich ist, kann jedoch eine cloudbasierte Lösung mit leistungsstärkeren Gemini-Modellen erforderlich sein.
Erweiterte Gemini-Modelle einbinden
Android-Entwickler können die erweiterten generativen KI-Funktionen von Google, einschließlich der leistungsstarken Modelle Gemini Pro, Gemini Flash und Imagen, mit dem Firebase AI Logic SDK in ihre Anwendungen einbinden. Dieses SDK wurde für größere Datenmengen entwickelt und bietet erweiterte Funktionen und Anpassungsfähigkeit, da es Zugriff auf diese leistungsstarken, multimodalen KI-Modelle ermöglicht.
Mit dem Firebase AI Logic SDK können Entwickler mit minimalem Aufwand clientseitige Aufrufe an die KI-Modelle von Google senden. Diese Modelle, z. B. Gemini Pro und Gemini Flash, führen die Inferenz in der Cloud aus und ermöglichen es Android-Apps, eine Vielzahl von Eingaben zu verarbeiten, darunter Bilder, Audio, Video und Text. Gemini Pro eignet sich hervorragend für die Analyse komplexer Probleme und die Analyse umfangreicher Daten, während die Gemini Flash-Reihe eine überlegene Geschwindigkeit und ein Kontextfenster bietet, das für die meisten Aufgaben groß genug ist.
Wann sollte herkömmliches maschinelles Lernen verwendet werden?
Generative KI ist zwar nützlich für die Erstellung und Bearbeitung von Inhalten wie Text, Bildern und Code, aber viele Probleme in der realen Welt lassen sich besser mit herkömmlichen ML-Techniken lösen. Diese etablierten Methoden eignen sich hervorragend für Aufgaben wie Vorhersage, Klassifizierung, Erkennung und das Erkennen von Mustern in vorhandenen Daten. Sie sind oft effizienter, kostengünstiger und einfacher zu implementieren als generative Modelle.
Herkömmliche ML-Frameworks bieten robuste, optimierte und oft praktischere Lösungen für Anwendungen, die sich auf die Analyse von Eingaben, die Identifizierung von Features oder die Erstellung von Vorhersagen auf der Grundlage erlernter Muster konzentrieren – anstatt völlig neue Ausgaben zu generieren. Tools wie ML Kit, LiteRT und MediaPipe von Google bieten leistungsstarke Funktionen, die auf diese nicht generativen Anwendungsfälle zugeschnitten sind, insbesondere in mobilen und Edge-Computing-Umgebungen.
Erste Schritte mit der ML-Integration mit ML Kit
ML Kit bietet produktionsreife, für Mobilgeräte optimierte Lösungen für gängige ML-Aufgaben, für die keine ML-Kenntnisse erforderlich sind. Mit diesem benutzerfreundlichen mobilen SDK können Sie die ML-Expertise von Google direkt in Ihre Android- und iOS-Apps einbinden. So können Sie sich auf die Entwicklung von Funktionen konzentrieren, anstatt Modelle zu trainieren und zu optimieren. ML Kit bietet vordefinierte APIs und sofort einsatzbereite Modelle für Funktionen wie Barcode-Scannen, Texterkennung (OCR), Gesichtserkennung, Bildbeschriftung, Objekterkennung und -tracking, Spracherkennung und intelligente Antworten.
Diese Modelle sind in der Regel für die Ausführung auf dem Gerät optimiert und sorgen für niedrige Latenz, Offline-Funktionen und mehr Datenschutz für Nutzer, da die Daten oft auf dem Gerät verbleiben. Mit ML Kit können Sie Ihrer mobilen App schnell etablierte ML-Funktionen hinzufügen, ohne Modelle trainieren oder generative Ausgaben benötigen zu müssen. Es ist ideal, um Apps effizient mit intelligenten Funktionen zu erweitern, indem Sie die optimierten Modelle von Google verwenden oder benutzerdefinierte TensorFlow Lite-Modelle bereitstellen.
Auf der ML Kit-Entwicklerwebsite finden Sie umfassende Leitfäden und Dokumentationen, die Ihnen den Einstieg erleichtern.
Benutzerdefinierte ML-Bereitstellung mit LiteRT
Wenn Sie mehr Kontrolle benötigen oder Ihre eigenen ML-Modelle bereitstellen möchten, verwenden Sie einen benutzerdefinierten ML-Stack, der auf LiteRT und Google Play-Diensten basiert. Dieser Stack bietet die Grundlagen für die Bereitstellung leistungsstarker ML-Funktionen. LiteRT ist ein Toolkit, das für die effiziente Ausführung von TensorFlow-Modellen auf ressourcenbeschränkten Mobil-, Embedded- und Edge-Geräten optimiert ist. So können Sie deutlich kleinere und schnellere Modelle ausführen, die weniger Arbeitsspeicher, Strom und Speicherplatz verbrauchen. Die LiteRT-Laufzeit ist für verschiedene Hardwarebeschleuniger (GPUs, DSPs, NPUs) auf Edge-Geräten optimiert und ermöglicht eine Inferenz mit niedriger Latenz.
Wählen Sie LiteRT, wenn Sie trainierte ML-Modelle (in der Regel für Klassifizierung, Regression oder Erkennung) effizient auf Geräten mit begrenzter Rechenleistung oder Akkulaufzeit bereitstellen müssen, z. B. Smartphones, IoT-Geräte oder Mikrocontroller. Es ist die bevorzugte Lösung für die Bereitstellung benutzerdefinierter oder standardmäßiger Vorhersagemodelle am Edge, wo Geschwindigkeit und Ressourcenschonung von größter Bedeutung sind.
Weitere Informationen zur ML-Bereitstellung mit LiteRT.
Echtzeit-Wahrnehmung in Ihre Apps einbinden mit MediaPipe
MediaPipe bietet Open-Source-, plattformübergreifende und anpassbare ML-Lösungen, die für Live- und Streaming-Medien entwickelt wurden. Profitieren Sie von optimierten, vordefinierten Tools für komplexe Aufgaben wie Handtracking, Haltungsschätzung, Erkennung von Gesichts-Meshs und Objekterkennung, die auch auf Mobilgeräten eine leistungsstarke Echtzeitinteraktion ermöglichen.
Die graphenbasierten Pipelines von MediaPipe sind hochgradig anpassbar, sodass Sie Lösungen für Android-, iOS-, Web-, Desktop- und Backend-Anwendungen anpassen können. Wählen Sie MediaPipe, wenn Ihre Anwendung Live-Sensordaten, insbesondere Videostreams, sofort verstehen und darauf reagieren muss, z. B. für Anwendungsfälle wie Gestenerkennung, AR-Effekte, Fitnesstracking oder Avatarsteuerung. Dabei geht es immer um die Analyse und Interpretation von Eingaben.
Entdecken Sie die Lösungen und beginnen Sie mit der Entwicklung mit MediaPipe.
App in den Geräteassistenten einbinden
Bei der herkömmlichen KI-Integration geht es darum, KI in Ihre App zu integrieren. Sie können aber auch Ihre App in KI-Funktionen einbinden. Wenn Sie die Funktionen Ihrer App zu KI-Funktionen auf Systemebene beitragen, können Assistenten auf Systemebene (z. B. Gemini) die Funktionen Ihrer App selbstständig erkennen und aufrufen. AppFunctions ist die primäre Möglichkeit, diese Integration zu erreichen. So kann Ihre App Teil des umfassenderen Android-KI-Ökosystems werden.
Ansatz auswählen
Wenn Sie KI einsetzen, um Ihre Android-App zu verbessern, sollten Sie drei Hauptansätze in Betracht ziehen: die Verarbeitung auf dem Gerät, die Nutzung cloudbasierter Modelle oder das Hinzufügen der Funktionen Ihrer App zu KI-Funktionen auf Systemebene. Tools wie ML Kit, Gemini Nano und LiteRT ermöglichen Funktionen auf dem Gerät, während die Gemini Cloud APIs mit Firebase AI Logic eine leistungsstarke cloudbasierte Verarbeitung bieten. AppFunctions ist ein dritter Weg, mit dem Sie Ihre App in KI-Funktionen einbinden können, indem Sie die Funktionen der App für das System selbstständig verfügbar machen.
Berücksichtigen Sie bei der Auswahl Ihres Ansatzes die folgenden Faktoren:
| Faktor | On-Device-Lösungen | Cloud-Lösungen |
|---|---|---|
| Konnektivität und Offline Funktionen | Ideal für die Offline-Nutzung; funktioniert ohne Netzwerk verbindung. | Erfordert eine Netzwerkverbindung, um mit Remote Servern zu kommunizieren. |
| Datenschutz | Verarbeitet und speichert vertrauliche Daten lokal auf dem Gerät. | Daten werden in die Cloud übertragen. Daher ist Vertrauen in die Sicherheit des Anbieters erforderlich. |
| Auffindbarkeit und Reichweite | Durch die direkte Betriebssystemintegration (AppFunctions) können Assistenten Funktionen erkennen. | Die Erkennung ist in der Regel auf die interne Benutzeroberfläche der App oder bestimmte API-Integrationen beschränkt. |
| Modellfähigkeiten | Optimiert für niedrige Latenz und spezifische, weniger intensive Aufgaben. | Leistungsstarke Modelle, die mit hoher Komplexität und großen Eingaben umgehen können. |
| Kostengesichtspunkte | Keine direkten nutzungsabhängigen Gebühren; nutzt vorhandene Geräte hardware. | In der Regel nutzungsabhängige Preise oder laufende Abogebühren. |
| Geräteressourcen | Nutzt lokalen Speicher, RAM und Akkulaufzeit. | Minimale lokale Auswirkungen; rechenintensive Aufgaben werden auf den Server ausgelagert. |
| Abstimmung | Begrenzte Flexibilität; durch die lokalen Hardware funktionen eingeschränkt. | Mehr Flexibilität für umfangreiche Anpassungen und groß angelegte Abstimmungen. |
| Plattformübergreifende Konsistenz | Die Verfügbarkeit kann je nach Betriebssystem und Hardware unterstützung variieren. | Einheitliche Umgebung auf jeder Plattform mit Internet Zugang. |
Wenn Sie die Anforderungen Ihres Anwendungsfalls und die verfügbaren Optionen sorgfältig abwägen, können Sie die perfekte KI/ML-Lösung finden, um Ihre Android-App zu verbessern und Ihren Nutzern intelligente und personalisierte Erlebnisse zu bieten.
Leitfaden zu KI/ML-Lösungen
Dieser Leitfaden zu Lösungen kann Ihnen helfen, die geeigneten Entwicklertools für die Integration von KI/ML-Technologien in Ihre Android-Projekte zu finden.
Was ist das Hauptziel der KI-Funktion?
- A) Neue Inhalte (Text, Bildbeschreibungen) generieren oder einfache Textverarbeitung durchführen (Text zusammenfassen, Korrektur lesen oder neu schreiben)? → Gehen Sie zu Generative KI.
- B) Vorhandene Daten/Eingaben für Vorhersagen, Klassifizierung, Erkennung, Mustererkennung oder Verarbeitung von Echtzeit-Streams (z. B. Video/Audio) analysieren? → Gehen Sie zu Herkömmliches ML und Wahrnehmung
- C) Die Funktionen Ihrer App erweitern, um sie in KI-Funktionen auf Systemebene zu integrieren (Ihre App in KI-Funktionen einbinden)? → Gehen Sie zu App in KI-Funktionen einbinden.
Herkömmliches ML und Wahrnehmung
Sie müssen Eingaben analysieren, Features identifizieren oder Vorhersagen auf der Grundlage erlernter Muster erstellen, anstatt völlig neue Ausgaben zu generieren.
Welche Aufgabe führen Sie aus?
- A) Müssen Sie schnell vordefinierte, gängige mobile ML-Funktionen einbinden?
(z.B. Barcode-Scannen, Texterkennung (OCR), Gesichtserkennung, Bildbeschriftung, Objekterkennung und -tracking, Spracherkennung, einfache intelligente Antworten)
- → Verwenden Sie: ML Kit (herkömmliche APIs)
- Begründung: Einfachste Integration für etablierte mobile ML-Aufgaben, oft für die Nutzung auf dem Gerät optimiert (niedrige Latenz, Offline-Funktionen, Datenschutz).
- B) Müssen Sie Echtzeit-Streamingdaten (z. B. Video oder Audio) für Wahrnehmungsaufgaben verarbeiten? (z.B. Handtracking, Haltungsschätzung, Gesichts-Mesh, Objekterkennung und -segmentierung in Echtzeit in Videos)
- → Verwenden Sie: MediaPipe
- Begründung: Framework, das auf leistungsstarke Echtzeit-Wahrnehmungspipelines auf verschiedenen Plattformen spezialisiert ist.
- C) Müssen Sie Ihr eigenes benutzerdefiniertes ML-Modell (z.B. für Klassifizierung, Regression, Erkennung) effizient auf dem Gerät ausführen und dabei Leistung und geringen Ressourcenverbrauch priorisieren?
- → Verwenden Sie: LiteRT (TensorFlow Lite-Laufzeit)
- Begründung: Optimierte Laufzeit für die effiziente Bereitstellung benutzerdefinierter Modelle auf Mobil- und Edge-Geräten (kleine Größe, schnelle Inferenz, Hardwarebeschleunigung).
- D) Müssen Sie Ihr eigenes benutzerdefiniertes ML-Modell trainieren für eine bestimmte Aufgabe?
- → Verwenden Sie: LiteRT (TensorFlow Lite-Laufzeit) + benutzerdefiniertes Modelltraining
- Begründung: Bietet die Tools zum Trainieren und Bereitstellen benutzerdefinierter Modelle, die für Mobil- und Edge Geräte optimiert sind.
- E) Benötigen Sie eine erweiterte Contentklassifizierung, Sentimentanalyse oder Übersetzung von vielen Sprachen mit hoher Nuance?
- Überlegen Sie, ob herkömmliche ML-Modelle (möglicherweise mit LiteRT oder in der Cloud bereitgestellt) geeignet sind oder ob für die erweiterte NLU generative Modelle erforderlich sind (zurück zum Start, Option A auswählen). Für cloudbasierte Klassifizierung, Sentimentanalyse oder Übersetzung:
- → Verwenden Sie: Cloudbasierte Lösungen (z.B. die Google Cloud Natural Language API, die Google Cloud Translation API, auf die möglicherweise über ein benutzerdefiniertes Backend oder Vertex AI zugegriffen wird). (Geringere Priorität als On-Device-Optionen, wenn Offline-Funktionen oder Datenschutz wichtig sind).
- Begründung: Cloud-Lösungen bieten leistungsstarke Modelle und umfangreiche Sprachunterstützung, erfordern jedoch eine Verbindung und können Kosten verursachen.
Generative KI
Sie müssen neue Inhalte erstellen, zusammenfassen, neu schreiben oder komplexe Aufgaben zum Verständnis oder zur Interaktion ausführen.
Muss die KI offline funktionieren, benötigen Sie maximalen Datenschutz (Nutzerdaten auf dem Gerät speichern) oder möchten Sie Kosten für die Cloud-Inferenz vermeiden?
- A) Ja, Offline-Funktionen, maximaler Datenschutz oder keine Cloud-Kosten sind entscheidend.
- → Gehen Sie zu Generative KI auf dem Gerät.
- B) Nein, eine Verbindung ist verfügbar und akzeptabel, Cloud-Funktionen und
Skalierbarkeit sind wichtiger oder bestimmte Funktionen erfordern die Cloud.
- → Gehen Sie zu Generative KI in der Cloud.
Generative KI auf dem Gerät (mit Gemini Nano)
Einschränkungen: Erfordert kompatible Android-Geräte, begrenzte iOS-Unterstützung, Modelle sind weniger leistungsstark als Cloud-Modelle.
Mit der Prompt API von ML Kit können Sie Anfragen in natürlicher Sprache mit reinen Texteingaben oder Text- und Bildeingaben für eine Vielzahl von Anwendungsfällen senden, z. B. Bildverständnis, kurze Übersetzungen und geführte Zusammenfassungen. Wenn Ihre Anwendungsfälle mit diesen Tokenlimits erfüllt werden können, sind die GenAI-APIs von ML Kit Ihre beste Option für generative KI auf dem Gerät. ML Kit bietet außerdem optimierte APIs für gängige Aufgaben wie Zusammenfassung und intelligente Antworten.
- → Verwenden Sie: GenAI-APIs von ML Kit (basierend auf Gemini Nano)
- Begründung: Einfachste Möglichkeit, generative KI-Aufgaben auf dem Gerät mit Prompts in natürlicher Sprache zu integrieren, höchste Priorität für On-Device-Lösungen.
Generative KI in der Cloud
Verwendet leistungsstärkere Modelle, erfordert eine Verbindung, verursacht in der Regel Kosten für die Inferenz, bietet eine größere Geräteabdeckung und eine einfachere plattformübergreifende Konsistenz (Android und iOS).
Was ist Ihre Priorität: Einfache Integration in Firebase ODER maximale Flexibilität/Kontrolle?
- A) Bevorzugen Sie eine einfachere Integration und eine verwaltete API-Umgebung und verwenden Sie wahrscheinlich bereits Firebase?
- → Verwenden Sie: Firebase AI Logic SDK → Gehen Sie zu Firebase AI Logic
- B) Benötigen Sie maximale Flexibilität, Zugriff auf die größte Auswahl an Modellen (einschließlich Drittanbieter-/benutzerdefinierter Modelle) und erweiterte Abstimmung und sind Sie bereit, Ihre eigene Backend-Integration zu verwalten (komplexer)?
- → Verwenden Sie: Gemini API mit einem benutzerdefinierten Cloud-Backend (mit der Google Cloud Platform)
- Begründung: Bietet die größte Kontrolle, den breitesten Modellzugriff und benutzerdefinierte Trainingsoptionen, erfordert jedoch einen erheblichen Aufwand für die Backend-Entwicklung. Geeignet für komplexe, groß angelegte oder stark angepasste Anforderungen.
(Sie haben das Firebase AI Logic SDK ausgewählt.) Welche Art von generativer Aufgabe und welches Leistungsprofil benötigen Sie?
- A) Benötigen Sie ein ausgewogenes Verhältnis zwischen Leistung und Kosten, das für die allgemeine Texterstellung, Zusammenfassung oder Chatanwendungen geeignet ist, bei denen Geschwindigkeit wichtig ist?
- → Verwenden Sie: Firebase AI Logic SDK mit Gemini Flash
- Begründung: Optimiert für Geschwindigkeit und Effizienz in der verwalteten Vertex AI-Umgebung.
- B) Benötigen Sie höhere Qualität und mehr Funktionen für komplexe Texterstellung, logisches Schlussfolgern, erweiterte NLU oder das Befolgen von Anweisungen?
- → Verwenden Sie: Firebase AI Logic SDK mit Gemini Pro
- Begründung: Leistungsstärkeres Textmodell für anspruchsvolle Aufgaben, auf das über Firebase zugegriffen wird.
- C) Benötigen Sie anspruchsvolle Bildgenerierung oder erweiterte Bildanalyse oder -bearbeitung auf der Grundlage von Text-Prompts?
- → Verwenden Sie: Firebase AI Logic SDK mit Imagen 3
- Begründung: Modernstes Modell zur Bild generierung, auf das über die verwaltete Firebase-Umgebung zugegriffen wird.
AppFunctions
Sie müssen die Funktionen Ihrer App erweitern, um sie in KI-Funktionen auf Systemebene zu integrieren (Ihre App in KI-Funktionen einbinden).
- → Verwenden Sie: AppFunctions
- Begründung: Ermöglicht es KI-Funktionen auf Systemebene, wie dem Assistant, die Funktionen Ihrer App zu erkennen und aufzurufen.