Von der Vorschauversion des Vertex AI in Firebase SDK zu den Firebase AI Logic SDKs migrieren


Firebase AI Logic und die zugehörigen Client-SDKs wurden früher als Vertex AI in Firebase bezeichnet. Um unsere erweiterten Dienste und Funktionen besser widerzuspiegeln (wir unterstützen jetzt beispielsweise Gemini Developer API), haben wir unsere Dienste in Firebase AI Logic umbenannt und neu verpackt.

Wenn Sie sicher auf die generativen KI-Modelle von Google direkt über Ihre mobilen Apps oder Web-Apps zugreifen möchten, können Sie jetzt einen Gemini API-Anbieter auswählen – entweder das schon lange verfügbare Agent Platform Gemini API (formerly Vertex AI) oder das neue Gemini Developer API. Das bedeutet, dass Sie jetzt die Möglichkeit haben, die Gemini Developer API zu verwenden, die ein kostenloses Kontingent mit angemessenen Ratenbegrenzungen und Kontingenten bietet.

Übersicht über die Schritte zur Migration zu den Firebase AI Logic-SDKs

  • Schritt 1: Wählen Sie den besten „Gemini API“-Anbieter für Ihre App und Anwendungsfälle aus.

  • Schritt 2: Erforderliche APIs aktivieren

  • Schritt 3: In Ihrer App verwendete Bibliothek aktualisieren

  • Schritt 4: Initialisierung in Ihrer App aktualisieren

  • Schritt 5: Code je nach verwendeten Funktionen aktualisieren

Schritt 1: Wählen Sie den besten „Gemini API“-Anbieter für Ihre App aus.

Bei dieser Migration haben Sie die Wahl des „Gemini API“-Anbieters:

  • Mit den alten SDKs „Vertex AI in Firebase“ konnte nur die Agent Platform Gemini API (formerly Vertex AI) verwendet werden.

  • Mit den neuen Firebase AI Logic-SDKs können Sie auswählen, welchen Gemini API-Anbieter Sie direkt über Ihre mobile App oder Web-App aufrufen möchten – entweder Gemini Developer API oder Agent Platform Gemini API (formerly Vertex AI).

Sehen Sie sich die Unterschiede zwischen den beiden Gemini API-Anbietern an, insbesondere in Bezug auf unterstützte Funktionen, Preise und Ratenlimits. Ein Beispiel: Gemini Developer API unterstützt nicht die Bereitstellung von Dateien über Cloud Storage-URLs, ist aber möglicherweise eine gute Wahl, wenn Sie das kostenlose Kontingent und das angemessene Kontingent nutzen möchten.

Schritt 2: Erforderliche APIs aktivieren

Achten Sie darauf, dass alle erforderlichen APIs in Ihrem Firebase-Projekt aktiviert sind, damit Sie den ausgewählten Anbieter „Gemini API“ verwenden können.

Sie können beide API-Anbieter gleichzeitig in Ihrem Projekt aktivieren.

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

  2. Rufen Sie in der Firebase-Konsole AI Services > 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 Anbieter der Gemini API aus, den Sie mit den Firebase AI Logic-SDKs verwenden möchten. Sie können den anderen API-Anbieter später jederzeit einrichten und verwenden.

    • Gemini Developer API – Abrechnung optional (im kostenlosen Spark-Tarif verfügbar)
      Im Workflow der Konsole 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

    • Agent Platform Gemini API (formerly Vertex AI) – Abrechnung erforderlich (erfordert den „Pay as you go“-Tarif „Blaze“)
      Im Workflow der Konsole werden die erforderlichen APIs in Ihrem Projekt aktiviert.

  5. Fahren Sie mit dieser Migrationsanleitung fort, um die Bibliothek und Initialisierung in Ihrer App zu aktualisieren.

Schritt 3: In Ihrer App verwendete Bibliothek aktualisieren

Aktualisieren Sie die Codebasis Ihrer App, damit die Firebase AI Logic-Bibliothek verwendet wird.

Swift

  1. Aktualisieren Sie in Xcode Ihr Firebase-Paket auf Version 12.5.0 oder höher. Gehen Sie dazu so vor:

    • Option 1: Alle Pakete aktualisieren: Klicken Sie auf File > Packages > Update to Latest Package Versions.

    • Option 2: Firebase einzeln aktualisieren: Rufen Sie das Firebase-Paket im Bereich Package Dependencies (Paketabhängigkeiten) auf. Klicken Sie mit der rechten Maustaste auf das Firebase-Paket und wählen Sie Paket aktualisieren aus.

  2. Prüfen Sie, ob das Firebase-Paket jetzt Version 12.5.0 oder höher anzeigt. Wenn nicht, prüfen Sie, ob die von Ihnen angegebenen Paketanforderungen ein Update auf Version 12.5.0 oder höher zulassen.

  3. Wählen Sie im Projekt-Editor das Ziel Ihrer App aus und rufen Sie dann den Bereich Frameworks, Libraries, and Embedded Content (Frameworks, Bibliotheken und eingebettete Inhalte) auf.

  4. Fügen Sie die neue Bibliothek hinzu: Klicken Sie auf das Pluszeichen + und fügen Sie dann FirebaseAILogic aus dem Firebase-Paket hinzu.

  5. Nachdem Sie die Migration Ihrer App abgeschlossen haben (siehe die verbleibenden Abschnitte in diesem Leitfaden), müssen Sie die alte Bibliothek entfernen:
    Wählen Sie FirebaseVertexAI-Preview aus und drücken Sie dann die Schaltfläche –.

Kotlin

  1. Ersetzen Sie in der Gradle-Datei Ihres Moduls (auf App-Ebene) (in der Regel <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) alte Abhängigkeiten (falls zutreffend) durch die folgenden.

    Es kann einfacher sein, den Code Ihrer App zu migrieren (siehe die verbleibenden Abschnitte in diesem Leitfaden), bevor Sie die alte Abhängigkeit löschen.

    // BEFORE
    dependencies {
      implementation("com.google.firebase:firebase-vertexai:16.0.0-betaXX")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.0.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")
    }
  2. Synchronisieren Sie Ihr Android-Projekt mit Gradle-Dateien.

Wenn Sie Firebase Android BoM nicht verwenden möchten, fügen Sie einfach die Abhängigkeit für die firebase-ai-Bibliothek hinzu und akzeptieren Sie die neueste Version, die von Android Studio vorgeschlagen wird.

Java

  1. Ersetzen Sie in der Gradle-Datei Ihres Moduls (auf App-Ebene) (in der Regel <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) alte Abhängigkeiten (falls zutreffend) durch die folgenden.

    Es kann einfacher sein, den Code Ihrer App zu migrieren (siehe die verbleibenden Abschnitte in diesem Leitfaden), bevor Sie die alte Abhängigkeit löschen.

    // BEFORE
    dependencies {
      implementation("com.google.firebase:firebase-vertexai:16.0.0-betaXX")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.0.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")
    }
  2. Synchronisieren Sie Ihr Android-Projekt mit Gradle-Dateien.

Wenn Sie Firebase Android BoM nicht verwenden möchten, fügen Sie einfach die Abhängigkeit für die firebase-ai-Bibliothek hinzu und akzeptieren Sie die neueste Version, die von Android Studio vorgeschlagen wird.

Web

  1. So erhalten Sie die aktuelle Version des Firebase JS SDK für Web über npm:

    npm i firebase@latest

    ODER

    yarn add firebase@latest
  2. Aktualisieren Sie überall, wo Sie die Bibliothek importiert haben, die Importanweisungen, sodass stattdessen firebase/ai verwendet wird.

    Es kann einfacher sein, den Code Ihrer App zu migrieren (siehe die verbleibenden Abschnitte in diesem Leitfaden), bevor Sie die alten Importe löschen.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai-preview";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. Aktualisieren Sie die Datei pubspec.yaml, damit das Paket firebase_ai verwendet wird. Führen Sie dazu den folgenden Befehl in Ihrem Flutter-Projektverzeichnis aus:

    flutter pub add firebase_ai
  2. Erstellen Sie Ihr Flutter-Projekt neu:

    flutter run
  3. Nachdem Sie die Migration Ihrer App abgeschlossen haben (siehe die verbleibenden Abschnitte in diesem Leitfaden), müssen Sie das alte Paket löschen:

    flutter pub remove firebase_vertexai

Einheit

Support für Unity war ab „Vertex AI in Firebase“ nicht verfügbar.

Erste Schritte mit dem Firebase AI Logic SDK für Unity

Schritt 4: Initialisierung in Ihrer App aktualisieren

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

Aktualisieren Sie die Initialisierung des Dienstes für den ausgewählten API-Anbieter und erstellen Sie eine GenerativeModel-Instanz.

Swift


import FirebaseAILogic

// 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-3.8-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-3.8-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-3.8-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-3.8-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-3.8-flash');

Einheit

Support für Unity war ab „Vertex AI in Firebase“ nicht verfügbar.

Erste Schritte mit dem Firebase AI Logic SDK für Unity

Je nach verwendeter Funktion wird möglicherweise nicht immer eine GenerativeModel-Instanz erstellt. Wenn Sie Ein- und Ausgabe mit Gemini Live API streamen möchten, erstellen Sie eine LiveModel-Instanz.

Schritt 5: Code je nach verwendeten Funktionen aktualisieren

In diesem Schritt werden Änderungen beschrieben, die je nach den von Ihnen verwendeten Funktionen erforderlich sein können.

  • Wenn Sie Cloud Storage-URLs verwenden und Sie bei dieser Migration auf Gemini Developer API umgestellt haben, müssen Sie Ihre multimodalen Anfragen aktualisieren, um Dateien als Inline-Daten einzufügen (oder YouTube-URLs für Videos verwenden).

  • Für die GA-Versionen der SDKs „Vertex AI in Firebase“ wurden mehrere Änderungen eingeführt. Diese Änderungen sind auch erforderlich, um die Firebase AI Logic-SDKs zu verwenden. Sehen Sie sich die folgenden Listen an, um herauszufinden, ob Sie Änderungen an Ihrem Code vornehmen müssen, um das Firebase AI Logic-SDK zu verwenden.

Für alle Sprachen und Plattformen erforderlich

  • Funktionsaufrufe
    Wenn Sie diese Funktion vor der allgemeinen Verfügbarkeit implementiert haben, müssen Sie die Definition Ihres Schemas aktualisieren. Wir empfehlen Ihnen, die aktualisierte Anleitung zum Funktionsaufruf zu lesen, um zu erfahren, wie Sie Ihre Funktionsdeklarationen schreiben.

  • Strukturierte Ausgabe (z. B. JSON) mit responseSchema
    generieren: Wenn Sie diese Funktion vor der allgemeinen Verfügbarkeit implementiert haben, müssen Sie die Definition Ihres Schemas aktualisieren. Wir empfehlen, sich die neue Anleitung für strukturierte Ausgaben anzusehen, um zu erfahren, wie JSON-Schemas geschrieben werden.

  • Zeitlimit

    • Das Standardzeitlimit für Anfragen wurde auf 180 Sekunden geändert.

Je nach Plattform oder Sprache erforderlich

Swift

  • Aufzählungen

    • Die meisten enum-Typen wurden durch struct-Typen mit statischen Variablen ersetzt. Diese Änderung ermöglicht mehr Flexibilität bei der Weiterentwicklung der API auf abwärtskompatible Weise. Wenn Sie switch-Anweisungen verwenden, müssen Sie jetzt einen default:-Fall für unbekannte oder nicht verarbeitete Werte einfügen, einschließlich neuer Werte, die dem SDK in Zukunft hinzugefügt werden.

    • Die BlockThreshold-Aufzählung wurde in HarmBlockThreshold umbenannt. Dieser Typ ist jetzt ein struct.

    • Die Fälle unknown und unspecified wurden aus den folgenden Aufzählungen (jetzt structs) entfernt: HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason und FinishReason.

    • Die Aufzählung ModelContent.Part wurde durch ein Protokoll namens Part ersetzt, damit neue Typen abwärtskompatibel hinzugefügt werden können. Diese Änderung wird im Abschnitt Inhaltsteile genauer beschrieben.

  • Inhaltsteile

    • Das ThrowingPartsRepresentable-Protokoll wurde entfernt und die Initialisierer für ModelContent wurden vereinfacht, um gelegentliche Compilerfehler zu vermeiden. Bilder, die nicht richtig codiert sind, führen weiterhin zu Fehlern, wenn sie in generateContent verwendet werden.

    • Die ModelContent.Part-Fälle wurden durch die folgenden struct-Typen ersetzt, die dem Part-Protokoll entsprechen:

      • .text bis TextPart
      • .data nach InlineDataPart
      • .fileData nach FileDataPart
      • .functionCall nach FunctionCallPart
      • .functionResponse bis FunctionResponsePart
  • Kategorie schädlicher Inhalte

    • Die HarmCategory ist nicht mehr im Typ SafetySetting verschachtelt. Wenn Sie sich darauf als SafetySetting.HarmCategory beziehen, kann das durch HarmCategory ersetzt werden.
  • Sicherheitsfeedback

    • Der Typ SafetyFeedback wurde entfernt, da er in keiner der Antworten verwendet wurde.
  • Zitat-Metadaten

    • Das Attribut citationSources wurde in CitationMetadata in citations umbenannt.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde als optional festgelegt, um Situationen zu berücksichtigen, in denen keine Zeichen gesendet werden.
  • Antwort des Kandidaten

    • CandidateResponse wurde in Candidate umbenannt, um anderen Plattformen zu entsprechen.
  • Konfiguration der Generierung

    • Die öffentlichen Attribute von GenerationConfig wurden in internal geändert. Sie können alle im Initialisierer konfiguriert werden.

Kotlin

  • Aufzählungen

    • Die Klassen enum und sealed wurden durch reguläre Klassen ersetzt. Diese Änderung ermöglicht mehr Flexibilität bei der Weiterentwicklung der API in einer abwärtskompatiblen Weise.

    • Die Aufzählung BlockThreshold wurde in HarmBlockThreshold umbenannt.

    • Entfernte Werte aus den folgenden Aufzählungen: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason und FinishReason.

  • Blob-Methoden

    • Alle Methoden, die Blob als Teil ihres Namens enthielten, wurden umbenannt, sodass stattdessen InlineData verwendet wird.
  • Sicherheits­einstellungen

    • Das Feld method wurde so geändert, dass Nullwerte zulässig sind.
  • Dauerklasse

    • Alle Verwendungen der Kotlin-Klasse Duration wurden entfernt und durch long ersetzt. Diese Änderung sorgt für eine bessere Interoperabilität mit Java.
  • Zitat-Metadaten

    • Alle Felder, die zuvor in CitationMetadata deklariert wurden, wurden in eine neue Klasse namens Citation eingeschlossen. Zitationen finden Sie in der Liste mit dem Namen citations in CitationMetadata. Durch diese Änderung können Typen besser plattformübergreifend angeglichen werden.
  • Tokens zählen

    • Das Feld totalBillableCharacters wurde so geändert, dass Nullwerte zulässig sind.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde als optional festgelegt, um Situationen zu berücksichtigen, in denen keine Zeichen gesendet werden.
  • Modell instanziieren

    • Der Parameter requestOptions wurde an das Ende der Parameterliste verschoben, um ihn an andere Plattformen anzugleichen.
  • Live API

    • Der Wert UNSPECIFIED wurde für die Enum-Klasse ResponseModality entfernt. Verwenden Sie stattdessen null.

    • LiveGenerationConfig.setResponseModalities wurde in LiveGenerationConfig.setResponseModality umbenannt.

    • Die Klasse LiveContentResponse.Status wurde entfernt. Stattdessen sind die Statusfelder als Attribute von LiveContentResponse verschachtelt.

    • Die Klasse LiveContentResponse wurde entfernt und stattdessen wurden Unterklassen von LiveServerMessage bereitgestellt, die den Antworten des Modells entsprechen.

    • LiveModelFutures.connect gibt jetzt ListenableFuture<LiveSessionFutures> anstelle von ListenableFuture<LiveSession> zurück.

Java

  • Aufzählungen

    • Die Klassen enum und sealed wurden durch reguläre Klassen ersetzt. Diese Änderung ermöglicht mehr Flexibilität bei der Weiterentwicklung der API in einer abwärtskompatiblen Weise.

    • Die Aufzählung BlockThreshold wurde in HarmBlockThreshold umbenannt.

    • Entfernte Werte aus den folgenden Aufzählungen: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason und FinishReason.

  • Blob-Methoden

    • Alle Methoden, die Blob als Teil ihres Namens enthielten, wurden umbenannt, sodass stattdessen InlineData verwendet wird.
  • Sicherheits­einstellungen

    • Das Feld method wurde so geändert, dass Nullwerte zulässig sind.
  • Dauerklasse

    • Alle Verwendungen der Kotlin-Klasse Duration wurden entfernt und durch long ersetzt. Diese Änderung sorgt für eine bessere Interoperabilität mit Java.
  • Zitat-Metadaten

    • Alle Felder, die zuvor in CitationMetadata deklariert wurden, wurden in eine neue Klasse namens Citation eingeschlossen. Zitationen finden Sie in der Liste mit dem Namen citations in CitationMetadata. Durch diese Änderung können Typen besser plattformübergreifend angeglichen werden.
  • Tokens zählen

    • Das Feld totalBillableCharacters wurde so geändert, dass Nullwerte zulässig sind.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde als optional festgelegt, um Situationen zu berücksichtigen, in denen keine Zeichen gesendet werden.
  • Modell instanziieren

    • Der Parameter requestOptions wurde an das Ende der Parameterliste verschoben, um ihn an andere Plattformen anzugleichen.
  • Live API

    • Der Wert UNSPECIFIED wurde für die Enum-Klasse ResponseModality entfernt. Verwenden Sie stattdessen null.

    • LiveGenerationConfig.setResponseModalities wurde in LiveGenerationConfig.setResponseModality umbenannt.

    • Die Klasse LiveContentResponse.Status wurde entfernt. Stattdessen sind die Statusfelder als Attribute von LiveContentResponse verschachtelt.

    • Die Klasse LiveContentResponse wurde entfernt und stattdessen wurden Unterklassen von LiveServerMessage bereitgestellt, die den Antworten des Modells entsprechen.

    • LiveModelFutures.connect gibt jetzt ListenableFuture<LiveSessionFutures> anstelle von ListenableFuture<LiveSession> zurück.

  • Verschiedene Java-Buildermethoden wurden geändert, sodass sie jetzt korrekt die Instanz ihrer Klasse anstelle von void zurückgeben.

Web

  • Aufzählungen

    • Entfernte Werte aus den folgenden Aufzählungen: HarmCategory, BlockThreshold, HarmProbability, HarmSeverity, BlockReason und FinishReason.
  • Grund für die Blockierung

    • blockReason in PromptFeedback wurde als optional gekennzeichnet.

Änderungen sind nur erforderlich, wenn Sie die Gemini Developer API (anstelle der Agent Platform Gemini API (formerly Vertex AI)) verwenden:

  • Sicherheits­einstellungen

    • Die Verwendung von SafetySetting.method wurde entfernt.
  • Inlinedaten

    • Die Verwendung von InlineDataPart.videoMetadata wurde entfernt.

Dart

  • Aufzählungen

    • Entfernte Werte aus den folgenden Aufzählungen: HarmCategory, HarmProbability, BlockReason und FinishReason.
  • Datenteil

    • DataPart wurde in InlineDataPart umbenannt und die Funktion static data in inlineData, um sie an andere Plattformen anzugleichen.
  • Anfrageoptionen

    • RequestOptions wurde entfernt, da timeout nicht funktionsfähig war. Die Funktion wird in naher Zukunft wieder hinzugefügt, aber zur Anpassung an andere Plattformen in den Typ GenerativeModel verschoben.
  • Stoppsequenzen

    • Der Parameter stopSequences in GenerationConfig ist jetzt optional und wird standardmäßig auf null anstelle eines leeren Arrays festgelegt.
  • Zitationen

    • Das Attribut citationSources wurde in CitationMetadata in citations umbenannt. Der Typ CitationSource wurde in Citation umbenannt, um ihn an andere Plattformen anzupassen.
  • Unnötige öffentliche Typen, Methoden und Eigenschaften

    • Die folgenden Typen, Methoden und Eigenschaften, die unbeabsichtigt verfügbar gemacht wurden, wurden entfernt: defaultTimeout, CountTokensResponseFields, parseCountTokensResponse, parseEmbedContentResponse, parseGenerateContentResponse, parseContent, BatchEmbedContentsResponse, ContentEmbedding, EmbedContentRequest und EmbedContentResponse.
  • Tokens zählen

    • Zusätzliche Felder aus der Funktion countTokens entfernt, die nicht mehr erforderlich sind. Nur contents ist erforderlich.
  • Modell instanziieren

    • Der Parameter systemInstruction wurde an das Ende der Parameterliste verschoben, um ihn an andere Plattformen anzugleichen.
  • Einbettungsfunktionen

    • Nicht unterstützte Einbettungsfunktionen (embedContent und batchEmbedContents) wurden aus dem Modell entfernt.

Einheit

Support für Unity war ab „Vertex AI in Firebase“ nicht verfügbar.

Erste Schritte mit dem Firebase AI Logic SDK für Unity

Mögliche Fehler bei der Migration

Bei der Migration zur GA-Version von Firebase AI Logic können Fehler auftreten, wenn Sie nicht alle erforderlichen Änderungen vorgenommen haben, die in diesem Migrationsleitfaden beschrieben sind.

Fehler 403: Requests to this API firebasevertexai.googleapis.com ... are blocked.

Wenn Sie den Fehler 403 mit der Meldung Requests to this API firebasevertexai.googleapis.com ... are blocked. erhalten, bedeutet das in der Regel, dass der Firebase-API-Schlüssel in Ihrer Firebase-Konfigurationsdatei oder Ihrem Firebase-Konfigurationsobjekt keine erforderliche API in der Zulassungsliste für das Produkt hat, das Sie verwenden möchten.

Achten Sie darauf, dass der von Ihrer App verwendete Firebase-API-Schlüssel alle erforderlichen APIs in der Zulassungsliste „API-Einschränkungen“ des Schlüssels enthält. Für Firebase AI Logic muss der Firebase-API-Schlüssel mindestens die Firebase AI Logic-API auf der Zulassungsliste haben. Diese API sollte automatisch der Zulassungsliste Ihres API-Schlüssels hinzugefügt worden sein, als Sie die erforderlichen APIs in der Firebase Console aktiviert haben.

Alle Ihre API-Schlüssel finden Sie in der Google Cloud Console im Bereich APIs & Dienste > Anmeldedaten.


Feedback zu Firebase AI Logic geben