Intelligente Anwendungen

Sichere und kostenoptimierte Android-Apps mit Firebase AI Logic und Gemini Nano 4 erstellen

Lautsprecher

  • Ankita Saxena

    Produktmanager

  • Arthur Thompson

    Developer Relations Engineer

Info

Über den Vortrag

Wenn Sie produktionsreife generative KI in Android-Apps einbinden möchten, reicht es nicht aus, eine Verbindung zu einem LLM herzustellen. Sie benötigen auch Sicherheits- und Kostenkontrollen auf Unternehmensniveau. In dieser Session erfahren Sie, wie Entwickler mit Firebase AI Logic sichere, budgetfreundliche KI-Anwendungen in großem Umfang bereitstellen können.

Wir behandeln die Grundlagen der Sicherheit, Firebase App Check, Kostenmanagement, dynamisches Modell-Routing und die Nutzung multimodaler Funktionen.

Zusammenfassung

  • Firebase AI Logic leitet Anfragen von Client-SDKs direkt an Gemini APIs weiter, ohne dass ein benutzerdefiniertes Backend erforderlich ist. Bei Server-Prompt-Vorlagen werden Prompts in der Cloud gespeichert, um App-Updates zu vermeiden.
  • Firebase App Check schützt Ressourcen vor Missbrauch, indem sichergestellt wird, dass Anfragen von Ihrer App stammen. Es werden Attestierungsanbieter wie Play Integrity und reCAPTCHA Enterprise eingebunden, bevor Sie Prüfungen erzwingen.
  • Gemini Nano 4 führt Inferenzen auf dem Gerät aus, um die Latenz zu verringern und die Privatsphäre der Nutzer zu schützen. Firebase AI Logic verwaltet bei Bedarf das Fallback-Routing zur Cloud.
  • Ausgabenobergrenzen und Firebase AI Logic-Trigger sorgen dafür, dass die Cloud-Kosten vorhersehbar bleiben. Firebase pausiert Ihren KI-Dienst automatisch, wenn 100 % der Ausgaben erreicht sind. Mit Triggern können Sie benutzerdefinierte Funktionen vor oder nach der Generierung ausführen.
  • Die Gemini Live API ermöglicht bidirektionales Audio- und Videostreaming für Unterhaltungen. Das Client-SDK verwaltet die zugrunde liegenden WebSocket-Verbindungen und Streamingprotokolle.

Gemini Notebook

Themen

  • firebase-ai-logic
  • gemini-nano
  • firebase-app-check
  • on-device-ai
  • Kostenoptimierung
  • gemini-live-api

Transkript

Einführung und Übersicht zu Firebase AI Logic

  • Willkommen beim Android Developer Summit.

  • Ich bin Ankita Saxena, Produktmanager für Firebase.

  • Und ich bin Arthur Thompson, Developer Relations Engineer im Firebase-Team.

  • Heute zeigen wir Ihnen, wie Sie Ihren Android-Apps generative Funktionen hinzufügen können.

  • Okay.

  • Was ist Firebase?

  • Heben Sie die Hand, wenn Sie schon einmal von Firebase gehört haben.

  • Oh, ich sehe eine Menge.

  • Sehr gut.

  • Firebase ist die Plattform zur App-Entwicklung von Google.

  • Firebase bietet hier eine einheitliche Plattform, auf der mehr als 20 Produkte integriert sind. Sie müssen also nicht mit verschiedenen Softwareprodukten arbeiten.

  • Sehen wir uns die Herausforderungen bei der Bereitstellung von generativer KI in mobilen Apps an.

  • Wir haben die drei größten Herausforderungen identifiziert.

  • Erstens: API-Schlüssel-Leaks. Es dauert nur wenige Minuten, sie zu extrahieren.

  • Zweitens: Aktualisieren von Modellnamen. Wir empfehlen Entwicklern immer, diese nicht in ihren Apps hartzucodieren. Andernfalls müssen Sie jedes Mal, wenn ein neues Modell herauskommt, ein weiteres Release veröffentlichen.

  • Drittens: Dateidatenschutz. Für Entwickler und App-Nutzer ist es sehr wichtig, dass ihre Daten geschützt sind und die richtigen Schutzmaßnahmen für die App getroffen werden.

  • Firebase AI Logic als wichtigste Lösung für die besprochenen Herausforderungen vorstellen.

  • Welche Vorteile bietet Firebase AI Logic?

  • Wir kümmern uns im Grunde um das gesamte komplexe benutzerdefinierte Backend, damit Sie es nicht selbst entwickeln müssen.

  • Zweitens können Sie mit unseren Client-SDKs die Gemini API direkt und sicher über Ihre mobilen Apps aufrufen.

  • Sehen wir uns die Architektur genauer an.

  • Auf der linken Seite sehen Sie die Firebase-Client-SDKs.

  • Wir unterstützen derzeit eine Vielzahl von Client-SDKs.

  • Ich möchte darauf hinweisen, dass wir auch Kotlin unterstützen.

  • Wenn Sie eine KI-Aktion ausführen möchten, sendet das SDK die Anfrage an Firebase AI Logic. Von dort wird sie sicher an die Gemini Developer API oder die Agent Platform Gemini API weitergeleitet.

  • Wir kümmern uns also im Grunde um das gesamte benutzerdefinierte Backend, das Sie heute erstellen.

  • Der Vorteil für uns ist, dass wir die Produkteinführungszeit ohne zusätzliche Kosten verkürzen.

Demo der FriendlyMeals-App

  • Jetzt kommt der Teil, der Spaß macht.

  • In dieser Demo wird die FriendlyMeals-App vorgestellt.

  • Übrigens verwenden wir dieselbe App für die restlichen Demos in dieser Sitzung. Sie können sie also gerne herunterladen.

  • Du kannst ihn mit dem QR-Code hier scannen.

  • Sehen wir uns die Demo an.

  • Die FriendlyMeals-App hilft Ihnen im Grunde, Rezepte basierend auf den von Ihnen eingegebenen Zutaten zu finden.

  • In diesem Workflow sehen Sie also die beiden Möglichkeiten, diese Zutaten zu erfassen.

  • Erstens: Sie geben die Zutaten ein, die Sie haben.

  • Als Nächstes machen Sie ein Foto der Zutaten.

  • Ich verwende den ersten Workflow, also die Eingabe der Zutaten.

  • Das ist alles, was ich in meinem Kühlschrank finden konnte.

  • Während das Rezept generiert wird, möchte ich auf ein paar Dinge hinweisen.

  • Im Hintergrund werden hier also die Gemini-Modelle aufgerufen.

  • Für diesen speziellen Anwendungsfall rufen wir drei Gemini 3.8 Flash-Modelle auf.

  • Das Bild oben wurde mit dem Gemini Nano Banana-Modell erstellt, genauer gesagt mit der aktuellen Version 2.1 Nano Banana.

  • Bevor wir uns den Code ansehen, möchte ich die Vorteile von Firebase AI Logic hervorheben.

  • Der erste sind die serverlosen SDKs.

  • Sie möchten eine KI-Funktion hinzufügen, aber kein Backend einrichten.

  • Hier kommen unsere clientseitigen SDKs ins Spiel.

  • Sie rufen Gemini direkt über Ihre Android-App auf.

  • Der zweite Punkt sind die robusten integrierten Sicherheitsfunktionen.

  • Für Ihre Aufrufe an Gemini können Sie also Funktionen wie Firebase App Check und Server-Prompt-Vorlagen nutzen. Auf diese Sicherheitsfunktionen gehen wir später noch genauer ein.

  • Drittens werden erweiterte Funktionen wie multimodale Eingaben und Streaming unterstützt.

  • Angenommen, Sie möchten eine App entwickeln, die eine einfache KI-Funktion zum Generieren einer Geschichte über einen Zauberrucksack enthält.

    import com.google.firebase.Firebase
    import com.google.firebase.ai.ai
    
    @Composable
    fun MagicBackpackGenerator() {
        var output by remember { mutableStateOf("") }
    
        LaunchedEffect(Unit) {
    
           val model=Firebase.ai.generativeModel("gemini-4-argon")
    
            val response = model.generateContent("Write a story about a magic backpack")
    
            output = response.text.toString()
    
        }
        MagicBackpackUI(output)
    }
  • In nur drei einfachen Schritten können Sie diese KI-Funktion hinzufügen und für die Produktion vorbereiten.

  • Da es mit Firebase AI Logic so einfach ist, Ihrer App KI-Funktionen hinzuzufügen, sollten Sie sich als Erstes fragen, wie Sie diese Funktion schützen können.

Sicherheit und Prompt-Verwaltung

  • Sehen wir uns also die Sicherheitsdetails an, beginnend mit Firebase App Check.

  • Mit Firebase App Check können Sie Ihre Daten schützen, Ihre Nutzer schützen und steuern, wer Zugriff auf Ihre API-Ressourcen hat, indem Sie bestätigen, dass Anfragen von Ihrer App stammen.

  • So wird Ihre App noch besser vor Missbrauch geschützt.

  • Bevor Sie sich mit dem Code befassen, müssen Sie in der Firebase Console einige Schritte ausführen.

  • In der Firebase Console registrieren Sie Ihre Android-App unter „App Check“ und fügen die entsprechenden Attestierungsanbieter hinzu.

  • Dazu gehören beispielsweise Play Integrity oder reCAPTCHA Enterprise.

  • Wenn Sie App Check einrichten, sollten Sie mit dem nicht erzwungenen Modus beginnen.

  • So kann Ihre App Telemetriedaten bereitstellen, um sicherzustellen, dass alle Ihre Apps erfolgreiche API-Aufrufe an Ihr Backend senden, bevor Sie die Erzwingung aktivieren.

  • Sobald Sie sehen, dass die Telemetriedaten korrekt übertragen werden, können Sie App Check erzwingen. Ab diesem Zeitpunkt werden alle Anfragen ohne gültiges, hardwarebestätigtes Token abgelehnt.

  • So sieht der Code für die Implementierung von App Check aus.

    class FireTravelApp : Application() {
       lateinit var appContainer: AppContainer
           private set
       override fun onCreate() {
           super.onCreate()
           if (BuildConfig.DEBUG) {
               Firebase.appCheck.installAppCheckProviderFactory(
                   DebugAppCheckProviderFactory.getInstance()
               )
           } else {
               Firebase.appCheck.installAppCheckProviderFactory(
                   PlayIntegrityAppCheckProviderFactory.getInstance()
               )
           }
           appContainer = AppContainer(this)
       }
    }
  • In Ihrer Anwendungsklasse installieren Sie den App Check-Anbieter.

  • In der Entwicklungsphase sollten Sie den Debug-Anbieter verwenden. Wenn Sie bereit für die Produktion sind, wechseln Sie entweder zu Play Integrity oder reCAPTCHA Enterprise.

  • Denken Sie jedoch daran, dass Sie App Check konfigurieren müssen, bevor Sie andere Firebase-Aufrufe ausführen.

  • Beim Erstellen von KI-Funktionen hartcodieren Entwickler Prompts oft direkt in den Code ihrer Apps. Das bringt jedoch zwei große Herausforderungen mit sich.

  • Erstens: Wenn der Prompt angepasst werden muss, müssen Sie das vollständige Update übertragen.

  • Zweitens hat jeder, der Ihre App entpackt, Zugriff auf Ihr proprietäres Prompt Engineering.

  • Um dieses Problem zu beheben, verwendet Firebase AI Logic Server-Promptvorlagen.

  • Anstatt deine Prompts auf dem Gerät zu speichern, werden sie in der Cloud gespeichert.

  • So sieht die Ansicht der Server-Prompt-Vorlagen in der Firebase Console aus.

  • Sie erstellen die Vorlagen im .prompt-Format.

    ---
    model: 'gemini-3-flash'
    input:
      schema:...
    tools:...
    ---
    {{role "system"}}
    You're a storyteller that tells nice and joyful stories with happy endings.
    
    {{role "user"}}
    Create a story about {{topic}} with the length of {{length}} words in the {{language}} language.
  • Sie können den Modellnamen direkt hier festlegen.

  • Sie können sie jederzeit aktualisieren.

  • Sie müssen nicht das vollständige App-Update veröffentlichen.

  • Sie können auch die Systemanweisungen aktualisieren. Außerdem wird ein striktes JSON-Schema für die Ein- und Ausgabe verwendet.

  • Auch hier ist kein App-Release erforderlich.

  • Da sie in der Cloud gespeichert sind, können Sie einen Prompt sofort optimieren oder ein Modell austauschen.

  • Und so sieht der Code in Kotlin aus.

    val generativeModel = Firebase.ai.templateGenerativeModel()
    
    val response = generativeModel.generateContent("storyteller-v1",
        mapOf(
            "topic" to topic,
            "length" to length,
            "language" to language
        )
    )
    
    output.value = response.text
  • An dieser Stelle sei erwähnt, dass sich Server-Prompt-Vorlagen in der öffentlichen Vorschau befinden.

  • Du kannst auch den Modus „Nur Authentifizierung“ implementieren.

  • Dabei werden Firebase Auth-Nutzertokens verwendet, um Anfragen zu autorisieren.

  • Um die Sicherheitsfunktionen abzurunden und Ihre Anwendung vollständig zu schützen, können Sie den Modus „Nur Vorlage“ auch direkt über die Firebase Console verwenden.

Dashboard für KI-Monitoring und ‑Telemetrie

  • Sobald Ihre Anwendung live ist, möchten Sie vielleicht Einblick in ihr Verhalten erhalten.

  • Auf dem Tab „KI-Monitoring“ können Sie mit nur einem Klick das KI-Monitoring aktivieren und die Abtastrate konfigurieren.

  • Firebase erfasst automatisch Messwerte, Latenzen und Tokenanzahlen, ohne dass Sie dafür benutzerdefinierten Analysecode schreiben müssen.

  • Die beiden Modi, die wir gerade gesehen haben, sind alle im selben Fenster verfügbar.

  • Sobald Sie KI-Monitoring in der Firebase Console aktiviert haben, werden die Daten direkt in das KI-Monitoring-Dashboard eingespeist.

  • Sie können die 95. Perzentil-Latenz beobachten, plötzliche Fehlerspitzen erkennen und den Tokenverbrauch für verschiedene Modalitäten wie Text, Bilder und Audio verfolgen.

  • Sie können auch den Trace-Viewer verwenden, um bestimmte Traces zu prüfen.

  • In diesem Fall wird das von uns verwendete Modell angezeigt und Sie können die Latenz und die Erfolgsquote sehen.

Hybride Inferenz mit Gemini Nano

  • In der Firebase Console erhalten Sie alle Telemetriedaten und Einblicke in die Funktionsweise Ihrer KI-Funktion.

  • Wenn Sie also einen plötzlichen Anstieg der Tokennutzung oder der Latenz feststellen, ist ein Hybridansatz eine Möglichkeit, diese Kosten oder die Latenz zu senken.

  • Und da generative KI-Funktionen zu einem wichtigen Bestandteil unserer Apps werden, ist es wahrscheinlich nicht die richtige Wahl, sich zu 100 % auf die Cloud zu verlassen.

  • Durch die Nutzung von Nano 4, On-Device-Modellen auf Android, ergeben sich drei wesentliche Vorteile, die Sie vielleicht schon kennen.

  • Die erste ist der Offlinemodus.

  • Egal, ob Sie sich in einer großen Konferenz, in einem Flugzeug oder in einer U-Bahn befinden – Ihre KI-Funktion funktioniert weiterhin.

  • Die Kosten.

  • Da die Inferenz auf dem Gerät ausgeführt wird, können Sie diese Funktionen hinzufügen, ohne sich Gedanken über steigende Kosten für Ihre KI-Funktion machen zu müssen.

  • Und der dritte Punkt ist der Datenschutz.

  • Wenn es sich also um sensible Daten handelt, können Sie Ihren Nutzern garantieren, dass keine der Inferenzen das Gerät verlässt.

  • Mit Firebase AI Logic können Sie diese Inferenzmodi festlegen und klare Routingstrategien wie PREFER_ON_DEVICE, PREFER_IN_CLOUD oder ONLY_ON_DEVICE verwenden.

  • Wenn Sie ONLY_ON_DEVICE auswählen, greift das SDK direkt auf das On-Device-Modell zu und umgeht die Cloud vollständig.

  • Wechseln wir zum Smartphone.

  • Wir rufen also wieder FriendlyMeals auf und sehen uns einige der On-Device-Funktionen an.

  • Als Erstes erstellen wir ein Rezept mit Zutaten, die wir im Kühlschrank haben.

  • Ankita hat vorhin die manuelle Methode verwendet, indem sie die Zutaten eingegeben und dann das Rezept generiert hat.

  • Versuchen wir es also auf andere Weise.

  • Sehen wir uns diesen Kühlschrank an, der absolut echt und nicht generiert ist.

  • In diesem Kühlschrank gibt es viele Oliven. Mal sehen, was für ein Rezept wir hier generiert bekommen.

  • Ich möchte hier auf ein paar Dinge hinweisen.

  • Erstens: Das Bild hat das Gerät nie verlassen.

  • Das Bild wurde lokal von Nano by Gemma analysiert…

  • Nano 4.

  • Und zweitens die Geschwindigkeit, mit der die Antwort zurückkam.

  • Die Zutaten wurden also generiert.

  • Sie profitieren also von zwei Vorteilen.

  • Die Daten bleiben auf dem Gerät und die Latenz wird erheblich reduziert.

  • Mal sehen, welches Rezept wir für den Kühlschrank mit den Oliven erhalten.

  • Dieses Mal verwenden wir die Cloud.

  • Wir nehmen also die Zutaten, die im Kühlschrank erkannt wurden, und senden sie an die Cloud. Mit Firebase AI Logic wird dann ein Rezept generiert.

  • Ich habe keinen Lachs im Kühlschrank gesehen, aber im Rezept ist Lachs aufgeführt.

  • Aber das ist… Gehen wir bitte zurück zu den Folien.

  • Wie wir in der Demo gesehen haben, ist der Wechsel zwischen einem lokalen Modell und einem Cloud-Modell ziemlich einfach.

  • Heute ermöglicht Firebase AI Logic die Inferenz mithilfe von einfachem Routing basierend auf der Netzwerkverfügbarkeit.

  • Um diese Inferenz zu verwalten, können Sie sich das wie Leitplanken vorstellen.

  • Die Architektur bietet also integrierte Unterstützung für Funktionen wie multimodale Eingabe- und Ausgabeschemas sowie eine vollständige Integration mit Gemma, Entschuldigung, mit Gemini Nano 4.

  • Sehen wir uns also an, wie diese Schutzmaßnahmen in der Praxis umgesetzt werden.

  • Beim hybriden Routing müssen Sie also keine komplexe Middleware oder Fallback-Logik selbst erstellen.

  • Im Code ist es nur ein zusätzlicher Parameter.

  • Sie übergeben einen Parameter an onDeviceConfig, um den gewünschten Modus festzulegen.

    import com.google.firebase.Firebase
    import com.google.firebase.ai.ai
    
    @Composable
    fun MagicBackpackGenerator() {
        var output by remember { mutableStateOf("") }
    
        LaunchedEffect(Unit) {
    
            val model = Firebase.ai.generativeModel(modelName = "gemini-3.8-flash",
    onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE))
    
           val response = model.generateContent("Write a story about a magic backpack")
    
            output = response.text.toString()
    
        }
        MagicBackpackUI(output)
    }
  • In diesem Fall versucht das SDK zuerst, das lokale Modell zu verwenden. Wenn es nicht verfügbar ist, wird automatisch auf die Cloud zurückgegriffen.

Kostenoptimierung und AI Logic-Trigger

  • Nachdem wir nun besprochen haben, wie Sie sichere Apps erstellen und On-Device-Modelle nutzen können, kommen wir zur Kostenoptimierung.

  • Generative Funktionen können schnell skalieren und damit auch Ihre Cloud Billing.

  • Wir müssen also die richtigen Schutzmaßnahmen ergreifen, um die richtigen proaktiven Infrastrukturkontrollen und automatisierten Funktionen zu haben, die dazu beitragen können, Ihre Budgets vorhersehbar und Ihre Anwendungen finanziell effizient zu machen.

  • Arthur hat gerade betont, dass die On-Device-Inferenz völlig kostenlos ist. Es wird jedoch immer Szenarien geben, die komplexe Reasoning-Aufgaben erfordern und auch ein Fallback und Routing zur Cloud erfordern.

  • Wenn diese Cloud-Aufrufe erfolgen, benötigen Sie Schutzmaßnahmen, damit Ihr Budget vorhersehbar bleibt.

  • Genau hier kommen die Ausgabenobergrenzen in Firebase ins Spiel.

  • Mit Ausgabenobergrenzen haben Sie mehr Kontrolle über die Kosten für Ihre Apps.

  • Anstatt also eine allgemeine, projektweite Budgeteinstellung zu verwenden, bei der Sie nur eine E-Mail erhalten, können Sie ein bestimmtes Budgetlimit für einzelne Dienste wie Firebase AI Logic festlegen.

  • Wenn Ihre Ausgaben 100 % erreichen, pausiert Firebase den KI-Dienst automatisch, um unerwartet hohe Rechnungen zu vermeiden.

  • Neben einfachen Ausgabenobergrenzen gibt es mehrere erweiterte Strategien zur Kostenoptimierung.

  • Heute möchten wir uns die Firebase AI Logic-Trigger genauer ansehen.

  • Was ist, wenn Sie eine benutzerdefinierte Logik dazwischen benötigen?

  • Das sind Firebase AI Logic-Trigger.

  • Sie können eine Funktion vor oder nach der Generierung von Inhalten ausführen.

  • Damit können Sie den Nutzer prüfen, Eingaben filtern, Kontext hinzufügen und die Antwort anpassen.

Gemini Live API und Modellfunktionen

  • Nachdem wir uns mit Kostenoptimierung und Sicherheit befasst haben, sehen wir uns nun die Modellfunktionen an und was Firebase AI Logic bietet.

  • Für diese multimodalen Funktionen bietet Firebase AI Logic einen umfassenden Katalog mit produktionsreifen Modellen und Tools.

  • Für schnelle Schlussfolgerungen, Text, Code und Medien können Sie Gemini 4 Argon, Gemini 3.1 Pro, Gemini 3.8 Flash und andere Modelle verwenden.

  • Sie können diese Modelle auch über die Fundierung mit der Google Suche und Google Maps mit realen Daten verbinden.

  • Und für die Sprachausgabe bieten wir eine natürliche Text-zu-Sprache-Funktion und die Audiogenerierung von Gemini Live.

  • Wechseln wir noch einmal zum Smartphone.

  • Hier haben wir also unsere süßen und herzhaften Gerichte.

  • Oh, tut mir leid, nicht das.

  • Hier haben wir unseren schnellen Käse-Ketchup-Toast für unser Rezept.

  • Klingt lecker.

  • Als Erstes sehen wir uns die Live API an.

  • In diesem Fall können wir das Video verwenden, das zurückgegeben wird, und ich kann sagen: „Hey Gemini, kannst du mir sagen, welche Zutaten auf dem Tisch liegen?“

  • Laut dem Bild auf Ihrem Laptop-Bildschirm haben Sie Brot, Cheddar-Käse und Ketchup.

  • Okay.

  • Kann ich mit dem ersten Schritt des Rezepts beginnen?

  • Ja.

  • Der erste Schritt besteht darin, den Toaster oder Grill auf mittlere bis hohe Hitze vorzuheizen.

  • Vielen Dank.

  • Okay.

  • In diesem Fall war es die Live API und die Unterhaltung blieb so lange offen, bis ich sie beendet habe.

  • Die andere Funktion, die ich Ihnen zeigen möchte, ist die Sprache-zu-Text-Funktion, oder besser gesagt, die Text-zu-Sprache-Funktion.

  • Und bei Text-zu-Sprache haben wir in diesem Beispiel die Rezeptanleitung.

  • Anstatt sie also lesen zu müssen, kann ich auf „Generieren“ oder „Sprechen“ klicken und der Text der Anleitung wird an das Text-zu-Sprache-Modell gesendet.

  • Die Audioausgabe wird generiert und an das Gerät zurückgesendet.

  • Ich kann es abspielen, für später im Cache speichern und es wird wie hier gezeigt abgespielt.

  • 1.

  • Heize den Toaster oder Grill auf mittlere bis hohe Hitze vor.

  • 2.

  • Lege zwei Scheiben Brot auf ein Backblech oder einen Toasteraufsatz.

  • Schön.

  • Cool, oder?

  • Mit Firebase AI Logic können wir solche coolen Funktionen mit nur wenigen Codezeilen implementieren.

  • Kehren wir zu den Folien zurück.

  • Nachdem wir in der Demonstration gesehen haben, wie die Gemini Live API funktioniert, fragen Sie sich vielleicht, wie Sie selbst eine Konversationsanwendung per Sprachbefehl erstellen können.

  • Hier kommt die Gemini Live API ins Spiel, mit der Sie bidirektionale Sprachunterhaltungen erstellen können.

  • Ihre Android-App kann Live-Mikrofonaudio und Kameraframes streamen und in Echtzeit natürliche, latenzarme und gesprochene Sprache empfangen.

  • In Kotlin ist die Einrichtung ziemlich ähnlich.

    val model = Firebase.ai.liveModel(
        modelName = "gemini-3.1-flash-live-preview",
        generationConfig = liveGenerationConfig {
            responseModality = ResponseModality.AUDIO
       },
       systemInstruction = "Your main job is to change the color...",
       tools = listOf(Tool.functionDeclarations(listOf(changeColorFunction)))
    )
    
    val session = model.connect(::handler)
    
    session.startAudioConversation(::handler)
    
    session.stopAudioConversation()
  • Sie instanziieren ein Live-Modell, das für Audioantworten konfiguriert ist, und stellen mit einem Stream-Handler eine Verbindung zur Sitzung her.

  • Der wichtigste Punkt, den wir hier hervorheben möchten, ist, dass das SDK die gesamte WebSocket-Verarbeitung und die Streamingprotokolle im Hintergrund übernimmt.

  • Sie müssen also keinen Code schreiben, oder?

  • Schreiben Sie weiter.

Firebase-Agenten-Skills und wichtige Erkenntnisse

  • Zum Abschluss unserer Demos und mit Blick auf die Zukunft der App-Entwicklung möchten wir Ihnen ein leistungsstarkes Tool für Ihren Workflow vorstellen: Firebase-Agenten-Skills.

    # Execute to add agent capabilities to your workspace
    npx skills add firebase/agent-skills
  • Wenn Sie Antigravity und Android Studio verwenden, ist Firebase AI Logic bereits direkt in den Onboarding-Prozess eingebunden.

  • Drei wichtige Punkte zum Mitnehmen: Fangen Sie an, bauen Sie frühzeitig auf die Produktionstools, wie die Sicherheitstools, die wir heute behandelt haben, und nutzen Sie Agenten-Skills, wo immer Sie können.

  • Vielen Dank.

Code

Code-Snippets

Kotlin-Snippet bei 05:14 in „FriendlyMeals app demo“
import com.google.firebase.Firebase
import com.google.firebase.ai.ai

@Composable
fun MagicBackpackGenerator() {
    var output by remember { mutableStateOf("") }

    LaunchedEffect(Unit) {

       val model=Firebase.ai.generativeModel("gemini-4-argon")

        val response = model.generateContent("Write a story about a magic backpack")

        output = response.text.toString()

    }
    MagicBackpackUI(output)
}
Kotlin-Snippet bei 07:07 in „Sicherheit und Prompt-Verwaltung“
class FireTravelApp : Application() {
   lateinit var appContainer: AppContainer
       private set
   override fun onCreate() {
       super.onCreate()
       if (BuildConfig.DEBUG) {
           Firebase.appCheck.installAppCheckProviderFactory(
               DebugAppCheckProviderFactory.getInstance()
           )
       } else {
           Firebase.appCheck.installAppCheckProviderFactory(
               PlayIntegrityAppCheckProviderFactory.getInstance()
           )
       }
       appContainer = AppContainer(this)
   }
}
YAML-Snippet bei 08:18 in „Sicherheit und Prompt-Management“
---
model: 'gemini-3-flash'
input:
  schema:...
tools:...
---
{{role "system"}}
You're a storyteller that tells nice and joyful stories with happy endings.

{{role "user"}}
Create a story about {{topic}} with the length of {{length}} words in the {{language}} language.
Kotlin-Snippet bei 08:54 in „Sicherheit und Prompt-Verwaltung“
val generativeModel = Firebase.ai.templateGenerativeModel()

val response = generativeModel.generateContent("storyteller-v1",
    mapOf(
        "topic" to topic,
        "length" to length,
        "language" to language
    )
)

output.value = response.text
Kotlin-Snippet bei 15:09 in „Hybrid Inference mit Gemini Nano“
import com.google.firebase.Firebase
import com.google.firebase.ai.ai

@Composable
fun MagicBackpackGenerator() {
    var output by remember { mutableStateOf("") }

    LaunchedEffect(Unit) {

        val model = Firebase.ai.generativeModel(modelName = "gemini-3.8-flash",
onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE))

       val response = model.generateContent("Write a story about a magic backpack")

        output = response.text.toString()

    }
    MagicBackpackUI(output)
}
Kotlin-Snippet bei 21:02 in „Gemini Live API and model capabilities“
val model = Firebase.ai.liveModel(
    modelName = "gemini-3.1-flash-live-preview",
    generationConfig = liveGenerationConfig {
        responseModality = ResponseModality.AUDIO
   },
   systemInstruction = "Your main job is to change the color...",
   tools = listOf(Tool.functionDeclarations(listOf(changeColorFunction)))
)

val session = model.connect(::handler)

session.startAudioConversation(::handler)

session.stopAudioConversation()
Shell-Snippet bei 21:30 in „Firebase-Agenten-Skills und wichtige Erkenntnisse“
# Execute to add agent capabilities to your workspace
npx skills add firebase/agent-skills