In diesem Leitfaden erfahren Sie, wie Sie die Lösungen für generative künstliche Intelligenz und maschinelles Lernen (KI/ML) von Google in Ihre Anwendungen einbinden. Sie erhalten eine Anleitung, wie Sie sich in den verschiedenen verfügbaren Lösungen für künstliche Intelligenz und maschinelles Lernen zurechtfinden und diejenige auswählen, die Ihren Anforderungen am besten entspricht. In diesem Dokument erfahren Sie, welches Tool Sie verwenden sollten und warum. Dabei liegt der Fokus auf Ihren Anforderungen und Anwendungsfällen.
In diesem Dokument finden Sie einen Leitfaden für Lösungen, der Ihnen bei der Auswahl der für Ihre spezifischen Anforderungen am besten geeigneten KI-/ML-Lösung helfen soll. 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.
In diesem Leitfaden erfahren Sie, wie Sie die beste KI-Lösung für Ihre App auswählen. Berücksichtigen Sie dabei die folgenden Faktoren: Datentyp (Text, Bilder, Audio, Video), Komplexität der Aufgabe (einfache Zusammenfassung bis hin zu komplexen Aufgaben, die Fachwissen erfordern) und 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 On-Device-Inferenz nutzen
Wenn Sie Ihrer Android-App KI- und ML-Funktionen hinzufügen, haben Sie verschiedene Möglichkeiten, sie bereitzustellen – entweder auf dem Gerät oder über die Cloud.
On-Device-Lösungen wie Gemini Nano liefern Ergebnisse ohne zusätzliche Kosten, bieten einen verbesserten Datenschutz für Nutzer und zuverlässige Offlinefunktionen, da Eingabedaten lokal verarbeitet werden. Diese Vorteile können für bestimmte Anwendungsfälle, z. B. die Nachrichtenzusammenfassung, entscheidend sein. Daher sollten Sie bei der Auswahl der richtigen Lösungen die On-Device-Verarbeitung priorisieren.
Mit Gemini Nano können Sie die Inferenz direkt auf einem Android-Gerät ausführen. Wenn Sie mit Text oder Bildern arbeiten, beginnen Sie mit den GenAI APIs von ML Kit für sofort einsatzbereite Lösungen. Die ML Kit GenAI APIs basieren auf Gemini Nano und wurden für bestimmte On-Device-Aufgaben optimiert. Die ML Kit GenAI APIs sind aufgrund ihrer höheren Benutzeroberfläche und Skalierbarkeit ein idealer Weg für die Produktion Ihrer Apps. Mit diesen APIs können Sie Anwendungsfälle implementieren, um Text zu zusammenfassen, Korrektur zu lesen und umzuformulieren sowie Bildbeschreibungen zu generieren.
Wenn Sie über die grundlegenden Anwendungsfälle der ML Kit GenAI APIs hinausgehen möchten, können Sie den experimentellen Zugriff auf Gemini Nano nutzen. Mit dem experimentellen Zugriff auf Gemini Nano erhalten Sie direkten Zugriff auf benutzerdefinierte Prompts mit Gemini Nano.
Bei herkömmlichen Aufgaben für maschinelles Lernen können Sie eigene benutzerdefinierte Modelle implementieren. Wir stellen robuste Tools wie ML Kit, MediaPipe, LiteRT und Bereitstellungsfunktionen von Google Play zur Verfügung, um Ihren Entwicklungsvorgang zu optimieren.
Für Anwendungen, die hochspezialisierte Lösungen erfordern, können Sie ein eigenes benutzerdefiniertes Modell wie Gemma oder ein anderes Modell verwenden, das auf Ihren spezifischen Anwendungsfall zugeschnitten ist. Mit LiteRT können Sie Ihr Modell direkt auf dem Gerät des Nutzers ausführen. LiteRT bietet vordefinierte Modellarchitekturen für eine optimierte Leistung.
Sie können auch eine hybride Lösung entwickeln, 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, ist jedoch möglicherweise eine cloudbasierte Lösung mit leistungsfähigeren Gemini-Modellen erforderlich.
Erweiterte Gemini-Modelle einbinden
Android-Entwickler können die erweiterten generativen KI-Funktionen von Google, einschließlich der leistungsstarken Gemini Pro-, Gemini Flash- und Imagen-Modelle, mit dem Firebase AI Logic SDK in ihre Anwendungen einbinden. Dieses SDK wurde für größere Datenmengen entwickelt und bietet erweiterte Funktionen und Anpassungsmöglichkeiten, da es den 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 ausführen. Diese Modelle, z. B. Gemini Pro und Gemini Flash, führen Inferenzen 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 Lösung komplexer Probleme und die Analyse umfangreicher Daten. Die Gemini Flash-Reihe bietet eine überlegene Geschwindigkeit und ein Kontextfenster, das für die meisten Aufgaben groß genug ist.
Wann sollte traditionelles maschinelles Lernen verwendet werden?
Generative KI ist zwar nützlich, um Inhalte wie Text, Bilder und Code zu erstellen und zu bearbeiten, viele reale Probleme lassen sich jedoch besser mit traditionellen Methoden des maschinellen Lernens (ML) lösen. Diese etablierten Methoden eignen sich hervorragend für Aufgaben wie Vorhersage, Klassifizierung, Erkennung und Verständnis von Mustern in vorhandenen Daten. Sie sind oft effizienter, kostengünstiger und einfacher zu implementieren als generative Modelle.
Traditionelle ML-Frameworks bieten robuste, optimierte und oft praktischere Lösungen für Anwendungen, die sich auf die Analyse von Eingaben, die Identifizierung von Merkmalen oder die Vorhersage auf der Grundlage gelernter Muster konzentrieren, anstatt völlig neue Ergebnisse zu generieren. Tools wie ML Kit, LiteRT und MediaPipe von Google bieten leistungsstarke Funktionen, die speziell auf diese nicht generativen Anwendungsfälle zugeschnitten sind, insbesondere in mobilen und Edge-Computing-Umgebungen.
Mit ML Kit die Integration von Machine Learning starten
ML Kit bietet produktionsreife, für Mobilgeräte optimierte Lösungen für gängige Aufgaben im Bereich maschinelles Lernen, für die keine Vorkenntnisse erforderlich sind. Dieses nutzerfreundliche mobile SDK bringt das ML-Know-how von Google direkt in Ihre Android- und iOS-Apps. So können Sie sich auf die Feature-Entwicklung konzentrieren, anstatt sich um das Modelltraining und die Modelloptimierung kümmern zu müssen. ML Kit bietet vordefinierte APIs und sofort einsatzbereite Modelle für Funktionen wie Barcode-Scannen, Texterkennung (OCR), Gesichtserkennung, Bildbeschriftung, Objekterkennung und -verfolgung, Spracherkennung und intelligente Antwort.
Diese Modelle sind in der Regel für die Ausführung auf dem Gerät optimiert. So wird eine geringe Latenz, Offlinefunktionalität und ein verbesserter Datenschutz für Nutzer gewährleistet, da die Daten häufig auf dem Gerät verbleiben. Mit ML Kit können Sie Ihrer mobilen App schnell bewährte ML-Funktionen hinzufügen, ohne Modelle trainieren oder generative Ausgabe benötigen zu müssen. Sie eignet sich ideal, um Apps mithilfe der optimierten Modelle von Google oder durch Bereitstellung benutzerdefinierter TensorFlow Lite-Modelle effizient um „intelligente“ Funktionen zu ergänzen.
Auf der ML Kit-Entwicklerwebsite finden Sie umfassende Leitfäden und Dokumentationen.
Benutzerdefinierte ML-Bereitstellung mit LiteRT
Wenn Sie mehr Kontrolle haben 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 alles, was Sie für die Bereitstellung leistungsstarker ML-Funktionen benötigen. LiteRT ist ein Toolkit, das für die effiziente Ausführung von TensorFlow-Modellen auf ressourcenbeschränkten mobilen, eingebetteten 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 hoch optimiert und ermöglicht eine Inferenz mit niedriger Latenz.
Wählen Sie LiteRT aus, wenn Sie trainierte ML-Modelle (häufig für Klassifizierung, Regression oder Erkennung) effizient auf Geräten mit begrenzter Rechenleistung oder Akkulaufzeit wie Smartphones, IoT-Geräten oder Mikrocontrollern bereitstellen möchten. Sie ist die bevorzugte Lösung für die Bereitstellung benutzerdefinierter oder standardmäßiger Prognosemodelle am Edge, wo Geschwindigkeit und Ressourcenschonung an erster Stelle stehen.
Weitere Informationen zur Bereitstellung von KI mit LiteRT
Mit MediaPipe Echtzeitwahrnehmung in Ihre Apps einbinden
MediaPipe bietet Open-Source-, plattformübergreifende und anpassbare Lösungen für maschinelles Lernen, die für Live- und Streamingmedien entwickelt wurden. Sie profitieren von optimierten, vorgefertigten Tools für komplexe Aufgaben wie Gestenerkennung, Körperhaltungsschätzung, Gesichtserkennung und Objekterkennung. So ist eine leistungsstarke Echtzeitinteraktion auch auf Mobilgeräten möglich.
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 aus, wenn Ihre Anwendung Live-Sensordaten, insbesondere Videostreams, verstehen und sofort darauf reagieren muss. Das ist bei Anwendungsfällen wie Gestenerkennung, AR-Effekten, Fitness-Tracking oder Avatarsteuerung der Fall, bei denen es vor allem um die Analyse und Interpretation von Eingaben geht.
Sehen Sie sich die Lösungen an und beginnen Sie mit der Entwicklung mit MediaPipe.
Ansatz auswählen: On-Device oder Cloud
Wenn Sie KI-/ML-Funktionen in Ihre Android-App einbinden, müssen Sie zu Beginn entscheiden, ob die Verarbeitung direkt auf dem Gerät des Nutzers oder in der Cloud erfolgen soll. Tools wie ML Kit, Gemini Nano und TensorFlow Lite ermöglichen Funktionen auf dem Gerät, während die Gemini Cloud APIs mit Firebase AI Logic eine leistungsstarke cloudbasierte Verarbeitung ermöglichen. Die richtige Wahl hängt von einer Vielzahl von Faktoren ab, die für Ihren Anwendungsfall und die Anforderungen der Nutzer spezifisch sind.
Berücksichtigen Sie bei Ihrer Entscheidung die folgenden Aspekte:
- Verbindung und Offlinefunktionen: Wenn Ihre Anwendung auch ohne Internetverbindung zuverlässig funktionieren muss, sind On-Device-Lösungen wie Gemini Nano ideal. Für die cloudbasierte Verarbeitung ist von Natur aus ein Netzwerkzugriff erforderlich.
- Datenschutz: Bei Anwendungsfällen, in denen Nutzerdaten aus Datenschutzgründen auf dem Gerät verbleiben müssen, bietet die Verarbeitung auf dem Gerät einen deutlichen Vorteil, da vertrauliche Informationen lokal gespeichert werden.
- Modellfunktionen und Aufgabenkomplexität: Cloud-basierte Modelle sind oft deutlich größer, leistungsfähiger und werden häufiger aktualisiert. Sie eignen sich daher für hochkomplexe KI-Aufgaben oder für die Verarbeitung größerer Eingaben, bei denen eine höhere Ausgabequalität und umfangreiche Funktionen von entscheidender Bedeutung sind. Einfachere Aufgaben können von On-Device-Modellen gut verarbeitet werden.
- Kosten: Cloud-APIs beinhalten in der Regel nutzungsbasierte Preise. Das bedeutet, dass die Kosten mit der Anzahl der Inferenzen oder der Menge der verarbeiteten Daten skalieren können. Die On-Device-Inferenz ist zwar in der Regel frei von direkten Kosten pro Nutzung, verursacht aber Entwicklungskosten und kann sich auf Geräteressourcen wie Akkulaufzeit und Gesamtleistung auswirken.
- Geräteressourcen: On-Device-Modelle belegen Speicherplatz auf dem Gerät des Nutzers. Außerdem ist es wichtig, die Gerätekompatibilität bestimmter On-Device-Modelle wie Gemini Nano zu kennen, damit Ihre Zielgruppe die Funktionen nutzen kann.
- Optimierung und Anpassung: Wenn Sie Modelle für Ihren spezifischen Anwendungsfall optimieren möchten, bieten cloudbasierte Lösungen in der Regel mehr Flexibilität und umfangreichere Anpassungsmöglichkeiten.
- Plattformübergreifende Konsistenz: Wenn einheitliche KI-Funktionen auf mehreren Plattformen, einschließlich iOS, wichtig sind, beachten Sie, dass einige On-Device-Lösungen wie Gemini Nano möglicherweise noch nicht auf allen Betriebssystemen verfügbar sind.
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 Funktionen zu bieten.
Leitfaden zu KI-/ML-Lösungen
Dieser Leitfaden für Lösungen kann Ihnen helfen, die geeigneten Entwicklertools für die Einbindung 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 (Text zusammenfassen, Korrekturlesen oder umschreiben)? → Generative KI
- B) Analyse vorhandener Daten/Eingaben zur Vorhersage, Klassifizierung, Erkennung, zum Erfassen von Mustern oder zur Verarbeitung von Echtzeitstreams (z. B. Video/Audio)? → Traditionelle ML und Wahrnehmung
Traditionelles maschinelles Lernen und Wahrnehmung
Sie müssen Eingaben analysieren, Features identifizieren oder Vorhersagen basierend auf gelernten Mustern treffen, anstatt völlig neue Ergebnisse zu generieren.
Welche Aufgabe führen Sie aus?
- A) Sie benötigen eine schnelle Integration vorgefertigter, gängiger mobiler ML-Funktionen?
(z.B. Barcode-Scannen, Texterkennung (OCR), Gesichtserkennung, Bildbeschriftung, Objekterkennung und -verfolgung, Sprach-ID, einfache intelligente Antwort)
- → Verwenden: ML Kit (traditionelle APIs)
- Erläuterung: Die einfachste Integration für etablierte mobile ML-Aufgaben, oft für die Nutzung auf dem Gerät optimiert (niedrige Latenz, Offline, Datenschutz).
- B) Müssen Streamingdaten in Echtzeit (z. B. Video oder Audio) für Wahrnehmungsaufgaben verarbeitet werden? (z.B. Gestenerkennung, Körperhaltungsschätzung, Gesichts-Mesh, Echtzeit-Objekterkennung und -Segmentierung in Videos)
- → Verwendung: MediaPipe
- Erläuterung: Framework, das auf hochleistungsfähige Echtzeit-Wahrnehmungspipelines auf verschiedenen Plattformen spezialisiert ist.
- C) Müssen Sie Ihr eigenes benutzerdefiniert trainiertes ML-Modell (z.B. für Klassifizierung, Regression, Erkennung) effizient auf dem Gerät ausführen und dabei Leistung und geringe Ressourcennutzung priorisieren?
- → Verwendung: LiteRT (TensorFlow Lite Runtime)
- Erläuterung: Optimierte Laufzeit für die effiziente Bereitstellung benutzerdefinierter Modelle auf Mobilgeräten und Edge-Geräten (kleine Größe, schnelle Inferenz, Hardwarebeschleunigung).
- D) Müssen Sie ein eigenes benutzerdefiniertes ML-Modell für eine bestimmte Aufgabe trainieren?
- → Verwendung: LiteRT (TensorFlow Lite Runtime) + benutzerdefiniertes Modelltraining
- Erläuterung: Bietet die Tools zum Trainieren und Bereitstellen benutzerdefinierter Modelle, die für Mobilgeräte und Edge-Geräte optimiert sind.
- E) Benötige ich eine erweiterte Inhaltsklassifizierung, Sentimentanalyse oder Übersetzung in vielen Sprachen mit vielen Nuancen?
- Überlegen Sie, ob herkömmliche ML-Modelle (potenziell mit LiteRT oder Cloud bereitgestellt) geeignet sind oder ob für die erweiterte NLU generative Modelle erforderlich sind (zu „Start“ zurückkehren, Option A auswählen). Für cloudbasierte Klassifizierung, Sentimentanalyse oder Übersetzung:
- → Verwenden: Cloud-basierte Lösungen (z.B. Google Cloud Natural Language API, Google Cloud Translation API, möglicherweise über ein benutzerdefiniertes Backend oder Vertex AI). (Niedrigere Priorität als Optionen auf dem Gerät, wenn Offlinezugriff oder Datenschutz wichtig sind)
- Erläuterung: Cloud-Lösungen bieten leistungsstarke Modelle und eine umfassende Sprachunterstützung, erfordern aber eine Internetverbindung und können Kosten verursachen.
Generative KI
Sie müssen neue Inhalte erstellen, zusammenfassen, umformulieren oder komplexe Aufgaben im Bereich des Verstehens oder der Interaktion ausführen.
Müssen die KI-Modelle offline funktionieren, benötigen Sie maximale Datensicherheit (Nutzerdaten bleiben auf dem Gerät) oder möchten Sie Kosten für die Inferenz in der Cloud vermeiden?
- A) Ja, Offlinezugriff, maximaler Datenschutz oder keine Cloud-Kosten sind entscheidend.
- B) Nein, die Konnektivität ist verfügbar und akzeptabel, Cloud-Funktionen und Skalierbarkeit sind wichtiger oder bestimmte Funktionen erfordern die Cloud.
Generative KI auf dem Gerät (mit Gemini Nano)
Einschränkungen: Kompatible Android-Geräte erforderlich, eingeschränkte iOS-Unterstützung, bestimmte Tokenlimits (1.024 Prompts, 4.096 Kontexte), Modelle sind weniger leistungsfähig als Cloud-Modelle.
Entspricht Ihr Anwendungsfall speziell den optimierten Aufgaben, die von den ML Kit GenAI APIs angeboten werden? (Text zusammenfassen, Text Korrektur lesen, Text umschreiben, Bildbeschreibungen generieren) UND sind die Tokenlimits ausreichend?
- A) Ja:
- → Verwendung: ML Kit GenAI APIs (powered by Gemini Nano)
- Erläuterung: Die einfachste Möglichkeit, bestimmte gängige generative Aufgaben auf dem Gerät zu integrieren.
- B) Nein (Sie benötigen flexiblere Prompts oder Aufgaben als die spezifischen ML Kit GenAI APIs, möchten aber trotzdem die Ausführung auf dem Gerät innerhalb der Möglichkeiten von Nano):
- → Verwendung: Experimenteller Zugriff auf Gemini Nano
- Erläuterung: Bietet auf dem Gerät offene Prompt-Funktionen für Anwendungsfälle, die über die strukturierten ML Kit GenAI APIs hinausgehen, und berücksichtigt die Einschränkungen von Nano.
Generative KI in der Cloud
Es werden leistungsstärkere Modelle verwendet, eine Internetverbindung ist erforderlich, es fallen in der Regel Inferenzkosten an, die Geräteabdeckung ist größer und die plattformübergreifende Konsistenz (Android und iOS) ist einfacher.
Was ist Ihnen wichtiger: eine einfache Einbindung in Firebase ODER maximale Flexibilität/Steuerung?
- A) Sie bevorzugen eine einfachere Integration, eine verwaltete API und verwenden wahrscheinlich bereits Firebase.
- → Verwendung: Firebase AI Logic SDK → Firebase AI Logic
- B) Sie benötigen maximale Flexibilität, Zugriff auf die größte Auswahl an Modellen (einschließlich Drittanbieter-/benutzerdefinierter Modelle) und eine erweiterte Feinabstimmung. Außerdem sind Sie bereit, Ihre eigene Backend-Integration zu verwalten (komplexer)?
- → Verwendung: Gemini API mit benutzerdefiniertem Cloud-Back-End (mit der Google Cloud Platform)
- Erläuterung: Bietet die größte Kontrolle, den breitesten Modellzugriff und benutzerdefinierte Trainingsoptionen, erfordert aber 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) Sie benötigen ein ausgewogenes Verhältnis zwischen Leistung und Kosten, das für die allgemeine Textgenerierung, Zusammenfassung oder Chatanwendungen geeignet ist, bei denen Geschwindigkeit wichtig ist.
- → Verwenden: Firebase AI Logic SDK mit Gemini Flash
- Erläuterung: Optimiert für Geschwindigkeit und Effizienz in der von Vertex AI verwalteten Umgebung.
- B) Benötigen Sie eine höhere Qualität und Leistung für die komplexe Textgenerierung, das logische Denken, die erweiterte NLU oder das Befolgen von Anweisungen?
- → Verwenden: Firebase AI Logic SDK mit Gemini Pro
- Erläuterung: Leistungsstärkeres Textmodell für anspruchsvolle Aufgaben, auf das über Firebase zugegriffen wird.
- C) Benötige ich eine ausgefeilte Bilderstellung oder eine erweiterte Bilderkennung oder ‑manipulation anhand von Text-Prompts?
- → Verwenden: Firebase AI Logic SDK mit Imagen 3
- Erläuterung: Ein hochmodernes Modell zur Bildgenerierung, auf das über die verwaltete Firebase-Umgebung zugegriffen wird.