Die richtige KI/ML-Lösung für Ihre App finden

Dieser Leitfaden soll Ihnen helfen, die Lösungen von Google für generative künstliche Intelligenz und maschinelles Lernen (KI/ML) in Ihre Anwendungen einzubinden. Er bietet eine Anleitung, mit der Sie sich in den verschiedenen verfügbaren Lösungen für künstliche Intelligenz und maschinelles Lernen 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 geführt.

Dieser Leitfaden hilft Ihnen bei der Auswahl der besten KI-Lösung für Ihre App. Berücksichtigen Sie dabei die folgenden Faktoren: Art der Daten (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 oder Gemini Pro) verwenden möchten.

Flussdiagramm für Entscheidungen bei Anwendungsfällen mit generativer KI. Zu den Kriterien gehören die Modalität (Text, Bild im Vergleich zu Audio, Video, Bildgenerierung), die Komplexität (zusammenfassen, umschreiben im Vergleich zu Fachwissen) und das Kontextfenster (kurze Eingabe/Ausgabe im Vergleich zu umfangreichen Dokumenten/Medien), was entweder zu On-Device GenAI (Gemini Nano) oder Firebase AI Logic (Gemini Flash, Pro) führt.
Abbildung 1: Diese Abbildung zeigt einen allgemeinen Leitfaden zu Lösungen, der Ihnen helfen soll, die richtige KI/ML-Lösung für Ihre Android-App zu finden. Eine detailliertere Aufschlüsselung Ihrer KI- und ML-Optionen finden Sie im Leitfaden zu Lösungen weiter unten in diesem Dokument.

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 einen besseren 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 ML Kit GenAI APIs basieren auf Gemini Nano und nutzen AICore als zugrunde liegenden Systemdienst. Sie sind für bestimmte Aufgaben auf dem Gerät optimiert. Die ML Kit GenAI APIs sind aufgrund ihrer Schnittstelle auf höherer Ebene und ihrer 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 Aufgaben im Bereich maschinelles Lernen können Sie Ihre eigenen benutzerdefinierten Modelle implementieren. Wir bieten leistungsstarke Tools wie ML Kit, MediaPipe, LiteRT und Google Play-Bereitstellungsfunktionen, um Ihren 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 optimierte Leistung.

Sie können auch eine hybride Lösung erstellen, indem Sie sowohl On-Device- als auch Cloud-Modelle nutzen.

Mobile Apps verwenden häufig lokale Modelle für kleine Textdaten wie Chatunterhaltungen oder Blogartikel. Für größere 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 und Gemini Flash, 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 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 zeichnet sich durch die Fähigkeit aus, komplexe Probleme zu analysieren und umfangreiche Daten zu verarbeiten, während die Gemini Flash-Reihe eine überlegene Geschwindigkeit und ein Kontextfenster bietet, das für die meisten Aufgaben groß genug ist.

Wann wird herkömmliches maschinelles Lernen verwendet?

Generative KI ist zwar nützlich für das Erstellen und Bearbeiten 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 Aufgaben im Bereich maschinelles Lernen, 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 Smart Reply.

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 einen besseren Datenschutz für Nutzer, da 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 Mobilgeräten, eingebetteten Geräten 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 Lösungen für maschinelles Lernen, die für Live- und Streaming-Medien entwickelt wurden. Profitieren Sie von optimierten, vordefinierten Tools für komplexe Aufgaben wie Hand-Tracking, Haltungsschätzung, Gesichtserkennung 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 einbinden. Wenn Sie die Funktionen Ihrer App zu den KI-Funktionen des Systems 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 breiteren 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: Verarbeitung auf dem Gerät, Nutzung cloudbasierter Modelle oder Hinzufügen der Funktionen Ihrer App zu KI 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 stellt einen dritten Weg dar, mit dem Sie Ihre App in KI einbinden können, indem Sie die Funktionen selbstständig für das System 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 UI der App oder bestimmte API-Integrationen beschränkt.
Modellfähigkeiten Optimiert für niedrige Latenz und spezifische, weniger intensive Aufgaben. Leistungsstarke Modelle, die in der Lage sind, hohe Komplexität und große Eingaben zu verarbeiten.
Kostengesichtspunkte Keine direkten Kosten pro Nutzung; nutzt vorhandene Geräte hardware. In der Regel nutzungsabhängige Preise oder laufende Abokosten.
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 prüfen, 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 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 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 einzubinden (Ihre App in KI einbinden)? → Gehen Sie zu Ihre App in KI 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 Smart Reply)
    • → 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. Hand-Tracking, Haltungsschätzung, Gesichtserkennung, 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 Mobilgeräten 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 Mobilgeräte 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 erweiterte NLU generative Modelle erforderlich sind (zurück zum Anfang, 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 die Gemini Enterprise Agent Platform 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.
  • B) Nein, eine Verbindung 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)

Hinweise: 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 ML Kit GenAI APIs die 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 Smart Reply.

  • → Verwenden Sie: ML Kit GenAI APIs (basierend auf Gemini Nano)
  • Begründung: Einfachste Möglichkeit, generative KI-Aufgaben auf dem Gerät mit Prompts in natürlicher Sprache einzubinden, 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 Einbindung in Firebase ODER maximale Flexibilität/Kontrolle?

  • A) Bevorzugen Sie eine einfachere Einbindung, eine verwaltete API-Umgebung und verwenden Sie wahrscheinlich bereits Firebase?
  • B) Benötigen Sie maximale Flexibilität, Zugriff auf die größte Auswahl an Modellen (einschließlich Drittanbieter-/benutzerdefinierter Modelle), 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?
  • B) Benötigen Sie höhere Qualität und mehr Funktionen für komplexe Texterstellung, logisches Schlussfolgern, erweiterte NLU oder das Befolgen von Anweisungen?

AppFunctions

Sie müssen die Funktionen Ihrer App erweitern, um sie in KI-Funktionen auf Systemebene einzubinden (Ihre App in KI einbinden).

  • → Verwenden Sie: AppFunctions
  • Begründung: Ermöglicht es KI-Funktionen auf Systemebene, wie dem Assistant, die Funktionen Ihrer App zu erkennen und aufzurufen.