Erste Schritte mit der Gemini API und den Firebase AI Logic SDKs

In diesem Leitfaden erfahren Sie, wie Sie mit den Firebase AI Logic-Client-SDKs für die von Ihnen ausgewählte Plattform direkt aus Ihrer App Aufrufe an die Gemini API senden.

Sie können diesen Leitfaden auch verwenden, um mit dem Zugriff auf Imagen-Modelle über die Firebase AI Logic-SDKs zu beginnen.

Vorbereitung

Swift

In diesem Leitfaden wird davon ausgegangen, dass Sie mit der Verwendung von Xcode zum Entwickeln von Apps für Apple-Plattformen (z. B. iOS) vertraut sind.

  • Ihre Entwicklungsumgebung und Ihre Apple-Plattform-App müssen die folgenden Anforderungen erfüllen:

    • Xcode 16.2 oder höher
    • Ihre App ist auf iOS 15 oder höher oder macOS 12 oder höher ausgerichtet.
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Kurzanleitung-App herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie keine eigene App für Apple-Plattformen haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie sie mit einem Firebase-Projekt verknüpfen.

Kotlin

In dieser Anleitung wird davon ausgegangen, dass Sie mit der Entwicklung von Android-Apps mit Android Studio vertraut sind.

  • Ihre Entwicklungsumgebung und Android-App müssen die folgenden Anforderungen erfüllen:

    • Android Studio (neueste Version)
    • Ihre App ist auf API‑Level 21 oder höher ausgerichtet.
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Beispielanwendung herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie keine eigene Android-App haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie sie mit einem Firebase-Projekt verknüpfen.

Java

In dieser Anleitung wird davon ausgegangen, dass Sie mit der Entwicklung von Android-Apps mit Android Studio vertraut sind.

  • Ihre Entwicklungsumgebung und Android-App müssen die folgenden Anforderungen erfüllen:

    • Android Studio (neueste Version)
    • Ihre App ist auf API‑Level 21 oder höher ausgerichtet.
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Beispielanwendung herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie keine eigene Android-App haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie sie mit einem Firebase-Projekt verknüpfen.

Web

In diesem Leitfaden wird davon ausgegangen, dass Sie mit der Entwicklung von Web-Apps mit JavaScript vertraut sind. Dieser Leitfaden ist frameworkunabhängig.

  • Ihre Entwicklungsumgebung und Web-App müssen die folgenden Anforderungen erfüllen:

    • (Optional) Node.js
    • Moderner Webbrowser
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Beispielanwendung herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie keine eigene Web-App haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie sie mit einem Firebase-Projekt verknüpfen.

Dart

In diesem Leitfaden wird davon ausgegangen, dass Sie mit der Entwicklung von Apps mit Flutter vertraut sind.

  • Ihre Entwicklungsumgebung und Flutter-App müssen die folgenden Anforderungen erfüllen:

    • Dart 3.2.0 und höher
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Beispielanwendung herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie keine eigene Flutter-App haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie sie mit einem Firebase-Projekt verknüpfen.

Einheit

In dieser Anleitung wird davon ausgegangen, dass Sie mit der Entwicklung von Spielen mit Unity vertraut sind.

  • Ihre Entwicklungsumgebung und Ihr Unity-Spiel müssen die folgenden Anforderungen erfüllen:

    • Unity Editor 2021 LTS oder höher
  • (Optional) Sehen Sie sich die Beispiel-App an.

    Beispielanwendung herunterladen

    Sie können das SDK schnell ausprobieren, eine vollständige Implementierung verschiedener Anwendungsfälle ansehen oder die Beispiel-App verwenden, wenn Sie kein eigenes Unity-Spiel haben. Wenn Sie die Beispiel-App verwenden möchten, müssen Sie eine Verbindung zu einem Firebase-Projekt herstellen.

Schritt 1: Firebase-Projekt einrichten und App verbinden

  1. Melden Sie sich in der Firebase Console an und wählen Sie Ihr Firebase-Projekt aus.

  2. Rufen Sie in der Firebase Console die Seite Firebase AI Logic auf.

  3. Klicken Sie auf Jetzt starten, um einen geführten Workflow zu starten, der Sie beim Einrichten der erforderlichen APIs und Ressourcen für Ihr Projekt unterstützt.

  4. Wählen Sie den Gemini API-Anbieter aus, den Sie mit den Firebase AI Logic-SDKs verwenden möchten. Sie können den anderen API-Anbieter jederzeit später einrichten und verwenden.

    • Gemini Developer API – Abrechnung optional (verfügbar im kostenlosen Spark-Tarif. Sie können später ein Upgrade durchführen, wenn Sie möchten)
      In der Console werden die erforderlichen APIs aktiviert und ein Gemini-API-Schlüssel in Ihrem Projekt erstellt.
      Fügen Sie diesen Gemini-API-Schlüssel nicht in den Code Ihrer App ein. Weitere Informationen

    • Vertex AI Gemini API – Abrechnung erforderlich (erfordert den Blaze-Tarif mit nutzungsabhängiger Abrechnung)
      In der Console können Sie die Abrechnung einrichten und die erforderlichen APIs in Ihrem Projekt aktivieren.

  5. Folgen Sie der Anleitung auf dem Bildschirm, um Ihre App zu registrieren und mit Firebase zu verbinden.

  6. Fahren Sie mit dem nächsten Schritt in dieser Anleitung fort, um das SDK Ihrer App hinzuzufügen.

Schritt 2: SDK hinzufügen

Nachdem Sie Ihr Firebase-Projekt eingerichtet und Ihre App mit Firebase verbunden haben (siehe vorheriger Schritt), können Sie Ihrer App jetzt das Firebase AI Logic SDK hinzufügen.

Swift

Verwenden Sie Swift Package Manager, um Firebase-Abhängigkeiten zu installieren und zu verwalten.

Die Bibliothek Firebase AI Logic bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen. Die Bibliothek ist im Firebase SDK für Apple-Plattformen (firebase-ios-sdk) enthalten.

Wenn Sie Firebase bereits verwenden, muss Ihr Firebase-Paket Version 11.13.0 oder höher haben.

  1. Öffnen Sie Ihr App-Projekt und gehen Sie in Xcode zu File > Add Package Dependencies (Datei > Paketabhängigkeiten hinzufügen).

  2. Fügen Sie bei entsprechender Aufforderung das Firebase Apple Platforms SDK-Repository hinzu:

    https://github.com/firebase/firebase-ios-sdk
    
  3. Wählen Sie die aktuelle SDK-Version aus.

  4. Wählen Sie die FirebaseAI-Mediathek aus.

Wenn Sie fertig sind, beginnt Xcode automatisch, Ihre Abhängigkeiten im Hintergrund aufzulösen und herunterzuladen.

Kotlin

Das Firebase AI Logic SDK für Android (firebase-ai) bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen.

Fügen Sie in der Gradle-Datei Ihres Moduls (auf App-Ebene) (z. B. <project>/<app-module>/build.gradle.kts) die Abhängigkeit für die Firebase AI Logic-Bibliothek für Android hinzu. Wir empfehlen, die Firebase Android BoM zu verwenden, um die Versionsverwaltung der Bibliothek zu steuern.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.0"))

  // Add the dependency for the Firebase AI Logic library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
}

Mit der Firebase Android BoM haben Sie immer eine kompatible Version der Firebase Android-Bibliotheken in Ihrer App.

Java

Das Firebase AI Logic SDK für Android (firebase-ai) bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen.

Fügen Sie in der Gradle-Datei Ihres Moduls (auf App-Ebene) (z. B. <project>/<app-module>/build.gradle.kts) die Abhängigkeit für die Firebase AI Logic-Bibliothek für Android hinzu. Wir empfehlen, die Firebase Android BoM zu verwenden, um die Versionsverwaltung der Bibliothek zu steuern.

Für Java müssen Sie zwei zusätzliche Bibliotheken hinzufügen.

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.15.0"))

  // Add the dependency for the Firebase AI Logic library
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Mit der Firebase Android BoM haben Sie immer eine kompatible Version der Firebase Android-Bibliotheken in Ihrer App.

Web

Die Bibliothek Firebase AI Logic bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen. Die Bibliothek ist im Firebase JavaScript SDK für Web enthalten.

  1. Installieren Sie das Firebase JS SDK für Web mit npm:

    npm install firebase
    
  2. Firebase in Ihrer App initialisieren:

    import { initializeApp } from "firebase/app";
    
    // TODO(developer) Replace the following with your app's Firebase configuration
    // See: https://firebase.google.com/docs/web/learn-more#config-object
    const firebaseConfig = {
      // ...
    };
    
    // Initialize FirebaseApp
    const firebaseApp = initializeApp(firebaseConfig);
    

Dart

Das Firebase AI Logic-Plug-in für Flutter (firebase_ai) bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen.

  1. Führen Sie im Verzeichnis Ihres Flutter-Projekts den folgenden Befehl aus, um das Core-Plug-in und das Firebase AI Logic-Plug-in zu installieren:

    flutter pub add firebase_core && flutter pub add firebase_ai
    
  2. Importieren Sie in Ihrer lib/main.dart-Datei das Firebase-Kern-Plug-in, das Firebase AI Logic-Plug-in und die Konfigurationsdatei, die Sie zuvor generiert haben:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_ai/firebase_ai.dart';
    import 'firebase_options.dart';
    
  3. Initialisieren Sie Firebase auch in Ihrer lib/main.dart-Datei mit dem Objekt DefaultFirebaseOptions, das von der Konfigurationsdatei exportiert wird:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Erstellen Sie Ihre Flutter-Anwendung neu:

    flutter run
    

Einheit

  1. Laden Sie das Firebase Unity SDK herunter und entpacken Sie es an einem geeigneten Ort.

    Das Firebase Unity SDK ist nicht plattformspezifisch.

  2. Rufen Sie in Ihrem geöffneten Unity-Projekt Assets > Import Package > Custom Package auf.

  3. Wählen Sie im extrahierten SDK das FirebaseAI-Paket aus.

  4. Klicken Sie im Fenster Import Unity Package (Unity-Paket importieren) auf Import (Importieren).

  5. Klicken Sie in der Firebase-Konsole im Einrichtungs-Workflow auf Weiter.

Schritt 3: Dienst initialisieren und Modellinstanz erstellen

Klicken Sie auf Ihren Gemini API-Anbieter, um anbieterspezifische Inhalte und Code auf dieser Seite aufzurufen.

Bevor Sie einen Prompt an ein Gemini-Modell senden, initialisieren Sie den Dienst für den von Ihnen ausgewählten API-Anbieter und erstellen Sie eine GenerativeModel-Instanz.

Swift


import FirebaseAI

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")

Kotlin


// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-2.5-flash")

Java


// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-2.5-flash');

Einheit


using Firebase;
using Firebase.AI;

// Initialize the Gemini Developer API backend service
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());

// Create a `GenerativeModel` instance with a model that supports your use case
var model = ai.GetGenerativeModel(modelName: "gemini-2.5-flash");

Je nach verwendeter Funktion wird möglicherweise nicht immer eine GenerativeModel-Instanz erstellt.

Nachdem Sie diese Kurzanleitung durchgearbeitet haben, können Sie sich auch ansehen, wie Sie ein Modell für Ihren Anwendungsfall und Ihre App auswählen.

Schritt 4: Prompt-Anfrage an ein Modell senden

Sie können jetzt eine Prompts-Anfrage an ein Gemini-Modell senden.

Mit generateContent() können Sie Text aus einem Prompt generieren, der Text enthält:

Swift


import FirebaseAI

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.5-flash")

// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")

Kotlin

Für Kotlin sind die Methoden in diesem SDK Suspend-Funktionen und müssen aus einem Coroutine-Bereich aufgerufen werden.

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-2.5-flash")

// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."

// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)

Java

Bei Java geben die Methoden in diesem SDK eine ListenableFuture zurück.

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.5-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

// Provide a prompt that contains text
Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        System.out.println(resultText);
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.5-flash" });

// Wrap in an async function so you can use await
async function run() {
  // Provide a prompt that contains text
  const prompt = "Write a story about a magic backpack."

  // To generate text output, call generateContent with the text input
  const result = await model.generateContent(prompt);

  const response = result.response;
  const text = response.text();
  console.log(text);
}

run();

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-2.5-flash');

// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];

// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);

Einheit


using Firebase;
using Firebase.AI;

// Initialize the Gemini Developer API backend service
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());

// Create a `GenerativeModel` instance with a model that supports your use case
var model = ai.GetGenerativeModel(modelName: "gemini-2.5-flash");

// Provide a prompt that contains text
var prompt = "Write a story about a magic backpack.";

// To generate text output, call GenerateContentAsync with the text input
var response = await model.GenerateContentAsync(prompt);
UnityEngine.Debug.Log(response.Text ?? "No text in response.");

Was kannst du sonst noch tun?

Weitere Informationen zu den unterstützten Modellen

Informationen zu den für verschiedene Anwendungsfälle verfügbaren Modellen sowie zu ihren Kontingenten und Preisen

Andere Funktionen ausprobieren

Informationen zum Steuern der Inhaltserstellung

Sie können auch mit Prompts und Modellkonfigurationen experimentieren und sogar ein generiertes Code-Snippet mit Google AI Studio abrufen.


Feedback zu Firebase AI Logic geben