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 hießen früher „Vertex AI in Firebase“. Um unsere erweiterten Dienste und Funktionen besser widerzuspiegeln (wir unterstützen jetzt beispielsweise Gemini Developer API!), haben wir unsere Dienste umbenannt und in Firebase AI Logic neu verpackt.

Wenn Sie direkt über Ihre mobilen Apps oder Web-Apps sicher auf die generativen KI-Modelle von Google zugreifen möchten, können Sie jetzt einen „Gemini API“-Anbieter auswählen – entweder den seit Langem verfügbaren Agent Platform Gemini API (formerly Vertex AI) oder jetzt den 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: Aktivieren Sie die erforderlichen APIs.

  • 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 den Gemini Developer API oder den 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 Ratenbegrenzungen. Ein Beispiel: Die Gemini Developer API unterstützt nicht die Bereitstellung von Dateien über Cloud Storage-URLs, ist aber möglicherweise eine gute Wahl, wenn Sie die kostenlose Stufe 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, um den ausgewählten „Gemini API“-Anbieter zu verwenden.

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 Console 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 (verfügbar im kostenlosen Spark-Preismodell)
      Im Workflow 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

    • 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 die Initialisierung in Ihrer App zu aktualisieren.

Schritt 3: In der App verwendete Bibliothek aktualisieren

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

Swift

  1. Öffnen Sie Ihr App-Projekt in Xcode und aktualisieren Sie Ihr Firebase-Paket auf Version 12.5.0 oder höher. Verwenden Sie dazu eine der folgenden Optionen:

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

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

  2. Achten Sie darauf, dass für das Firebase-Paket jetzt Version 12.5.0 oder höher angezeigt wird. 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 Projekteditor das Ziel Ihrer App aus und rufen Sie dann den Bereich Frameworks, Libraries, and Embedded Content 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), entfernen Sie die alte Bibliothek:
    Wählen Sie FirebaseVertexAI-Preview aus und drücken Sie dann die Taste —.

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 die 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 aktuelle Version, die von Android Studio vorgeschlagen wird.

Java

  1. Ersetzen Sie in der Gradle-Datei Ihres Moduls (auf App-Ebene) (normalerweise <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle) die alten 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. Rufen Sie die aktuelle Version des Firebase JS SDK für das Web mit npm ab:

    npm i firebase@latest

    ODER

    yarn add firebase@latest
  2. Aktualisieren Sie überall dort, wo Sie die Bibliothek importiert haben, Ihre Importanweisungen, um stattdessen firebase/ai zu verwenden.

    Es ist möglicherweise einfacher, die Codebasis 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

Der Support für Unity war nicht über „Vertex AI in Firebase“ 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 von „Vertex AI in Firebase“ nicht verfügbar.

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

Beachten Sie, dass Sie je nach verwendeter Funktion nicht immer eine GenerativeModel-Instanz erstellen. 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 „Vertex AI in Firebase“-SDKs 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, den aktualisierten Leitfaden für Funktionsaufrufe 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 einfügen, um unbekannte oder nicht verarbeitete Werte abzudecken, 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 entfernt (jetzt structs): 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 ausführlicher 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
  • Schadenskategorie

    • HarmCategory wurde so geändert, dass es nicht mehr im Typ SafetySetting verschachtelt ist. Wenn Sie sich darauf als SafetySetting.HarmCategory beziehen, kann das durch HarmCategory ersetzt werden.
  • Feedback zur Sicherheit

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

    • Das Attribut citationSources wurde in CitationMetadata in citations umbenannt.
  • Abrechenbare Zeichen insgesamt

    • Das Attribut totalBillableCharacters in CountTokensResponse wurde in „optional“ geändert, 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 auf abwärtskompatible Weise.

    • Die Aufzählung BlockThreshold wurde in HarmBlockThreshold umbenannt.

    • Werte aus den folgenden Aufzählungen entfernt: 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 zuvor in CitationMetadata deklarierten Felder wurden in einer neuen Klasse namens Citation zusammengefasst. Zitationen finden Sie in der Liste mit dem Namen citations in CitationMetadata. Diese Änderung ermöglicht eine bessere Abstimmung der Typen auf allen Plattformen.
  • Tokens zählen

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

    • Das Attribut totalBillableCharacters in CountTokensResponse wurde geändert und ist jetzt optional, 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 anzupassen.
  • Live API

    • Der Wert UNSPECIFIED für die Enum-Klasse ResponseModality wurde 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. 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 auf abwärtskompatible Weise.

    • Die Aufzählung BlockThreshold wurde in HarmBlockThreshold umbenannt.

    • Werte aus den folgenden Aufzählungen entfernt: 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 zuvor in CitationMetadata deklarierten Felder wurden in einer neuen Klasse namens Citation zusammengefasst. Zitationen finden Sie in der Liste mit dem Namen citations in CitationMetadata. Diese Änderung ermöglicht eine bessere Abstimmung der Typen auf allen Plattformen.
  • Tokens zählen

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

    • Das Attribut totalBillableCharacters in CountTokensResponse wurde geändert und ist jetzt optional, 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 anzupassen.
  • Live API

    • Der Wert UNSPECIFIED für die Enum-Klasse ResponseModality wurde 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. 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.
  • Inline-Daten

    • 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 wurde in „optional“ geändert und ist standardmäßig auf null statt auf ein leeres Array 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 Properties

    • 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.
  • Einbettungsfunktion

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

Einheit

Der Support für Unity war nicht über „Vertex AI in Firebase“ 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 enthält, 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 Ihrer Erfahrung mit Firebase AI Logic geben