Von den Google AI Client SDKs zu den Firebase AI Logic SDKs migrieren


Direkt zur Migrationsanleitung

Warum sollten Sie zu den Firebase AI Logic SDKs migrieren?

Möglicherweise haben Sie eine alternative Reihe von SDKs für mobile oder Webclients ausprobiert, die Ihnen Zugriff auf die Gemini Developer API gewährt haben.

Diese Client-SDKs wurden nicht in das robuste Firebase-System integriert, das wichtige Dienste für mobile und Webanwendungen bietet. Sie werden jetzt zugunsten der Firebase AI Logic-Client-SDKs eingestellt, über die du Zugriff auf die Gemini Developer API hast.

Sicherheitsfunktionen für mobile und Webanwendungen

Bei mobilen und Webanwendungen ist Sicherheit entscheidend und erfordert besondere Überlegungen, da Ihr Code – einschließlich Aufrufe der Gemini API – in einer ungeschützten Umgebung ausgeführt wird. Mit Firebase App Check können Sie APIs vor Missbrauch durch nicht autorisierte Clients schützen.

Wenn Sie Firebase App Check mit Firebase AI Logic verwenden, fügen Sie Ihren Gemini API-Schlüssel für die Gemini Developer API niemals direkt in die Codebasis Ihrer mobilen App oder Webanwendung ein. Stattdessen bleibt der Gemini API-Schlüssel auf dem Server und ist nicht für böswillige Akteure zugänglich.

Ein Ökosystem für mobile Apps und Webanwendungen

Firebase ist die Plattform von Google für die Entwicklung von mobilen Apps und Webanwendungen. Wenn Sie Firebase AI Logic verwenden, befinden sich Ihre Apps in einem Ökosystem, das auf die Anforderungen von Full-Stack-Apps und Entwicklern ausgerichtet ist. Beispiel:

  • Mit Firebase Remote Config können Sie Laufzeitkonfigurationen dynamisch festlegen oder Werte in Ihrer App (z. B. einen Modellnamen und eine Modellversion) austauschen, ohne eine neue App-Version zu veröffentlichen.

  • Verwenden Sie Cloud Storage for Firebase, um große Dateien in Ihre multimodalen Anfragen aufzunehmen (falls Sie die Vertex AI Gemini API verwenden). Die Cloud Storage-Client-SDKs unterstützen Sie beim Verwalten von Dateiuploads und ‑downloads (auch bei schlechten Netzwerkbedingungen) und bieten mehr Sicherheit für die Daten Ihrer Endnutzer. Weitere Informationen zur Verwendung von Cloud Storage for Firebase finden Sie in unserem Leitfaden zur Lösung.

  • Verwalten Sie strukturierte Daten mit Datenbank-SDKs, die für mobile und Webanwendungen entwickelt wurden (z. B. Cloud Firestore).

Zu den Firebase AI Logic SDKs migrieren

Schritte zur Migration zu den Firebase AI Logic SDKs:

  • Schritt 1: Richten Sie ein neues oder vorhandenes Firebase-Projekt ein und verknüpfen Sie Ihre App mit Firebase.

  • Schritt 2: Fügen Sie Ihrer App die Firebase AI Logic-SDKs hinzu.

  • Schritt 3: Aktualisieren Sie die Importe und die Initialisierung in Ihrer App.

  • Schritt 4: Aktualisieren Sie den Code je nach den verwendeten Funktionen.

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 interaktiven Workflow zu starten, mit dem Sie die erforderlichen APIs und Ressourcen für Ihr Projekt einrichten können.

  4. Wählen Sie den Gemini Developer API aus. Sie können den anderen API-Anbieter jederzeit einrichten und verwenden.

    In der Console werden die erforderlichen APIs aktiviert und ein neuer, spezieller Gemini API-Schlüssel in Ihrem Projekt erstellt.
    Fügen Sie diesen neuen Gemini API-Schlüssel nicht der Codebasis Ihrer App hinzu. Weitere Informationen

  5. Wenn Sie im Workflow der Console dazu aufgefordert werden, folgen Sie der Anleitung auf dem Bildschirm, um Ihre App zu registrieren und mit Firebase zu verbinden.

  6. Folgen Sie dieser Migrationsanleitung, um die Bibliothek und die Initialisierung in Ihrer App zu aktualisieren.

Schritt 2: Firebase AI Logic SDK zur App 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 Firebase AI Logic-Bibliothek bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen. Die Bibliothek ist Teil des Firebase SDK für Apple-Plattformen (firebase-ios-sdk).

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

  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 neueste SDK-Version aus.

  4. Wählen Sie die Bibliothek FirebaseAI aus.

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

Kotlin

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

Fügen Sie in der Gradle-Datei des 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, Firebase Android BoM zu verwenden, um die Versionierung 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 for Android (firebase-ai) bietet Zugriff auf die APIs zur Interaktion mit Gemini- und Imagen-Modellen.

Fügen Sie in der Gradle-Datei des 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, Firebase Android BoM zu verwenden, um die Versionierung 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 Firebase AI Logic-Bibliothek bietet Zugriff auf die APIs für die Interaktion mit Gemini- und Imagen-Modellen. Die Bibliothek ist Teil des Firebase JavaScript SDK for Web.

  1. So installieren Sie das Firebase JS SDK für das 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 zur Interaktion mit Gemini- und Imagen-Modellen.

  1. Führen Sie im Verzeichnis Ihres Flutter-Projekts den folgenden Befehl aus, um das Kern-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 die Datei lib/main.dart das Firebase-Kern-Plug-in, das Firebase AI Logic-Plug-in und die zuvor generierte Konfigurationsdatei:

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

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

    flutter run
    

Einheit

Die Google AI-Client-SDKs unterstützen Unity nicht.

Weitere Informationen zum Einstieg in das Firebase AI Logic SDK for Unity

Altes SDK aus Ihrer App entfernen

Nachdem Sie die Migration Ihrer App abgeschlossen haben (siehe die verbleibenden Abschnitte in diesem Leitfaden), löschen Sie die alte Bibliothek.

Swift

Entfernen Sie die alte Bibliothek:

  1. Öffnen Sie Ihr App-Projekt in Xcode und gehen Sie zum Bereich Paketabhängigkeiten.

  2. Wählen Sie das generative-ai-swift-Paket aus der Liste der Paketabhängigkeiten aus.

  3. Klicken Sie unten in der Liste auf die Schaltfläche - und dann zur Bestätigung auf Entfernen.

Kotlin

dependencies {
    implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
    implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Web

// BEFORE
import { initializeApp } from "firebase/app";
import { GoogleGenerativeAI } from "@google/generative-ai";

Dart

Löschen Sie das alte Paket:
flutter pub remove google_generative_ai

Einheit

Der Support für Unity war in den Google AI-Client-SDKs nicht verfügbar.

Weitere Informationen zum Einstieg in das Firebase AI Logic SDK for Unity

Schritt 3: Importe und Initialisierung in Ihrer App aktualisieren

Aktualisieren Sie Ihre Importe und die Initialisierung des Gemini Developer API-Backend-Dienstes und erstellen Sie eine GenerativeModel-Instanz.

Swift

// BEFORE
import GoogleGenerativeAI

let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)

// AFTER
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.0-flash")

Kotlin

// BEFORE
import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

...

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
  // Access your API key as a Build Configuration variable
  apiKey = BuildConfig.apiKey
)

// AFTER
import com.google.firebase.Firebase
import com.google.firebase.ai.ai
import com.google.firebase.ai.type.GenerativeBackend

...

// 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.0-flash")

Java

// BEFORE
import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

...

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
  // Access your API key as a Build Configuration variable
  BuildConfig.apiKey
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

// AFTER
import com.google.firebase.ai.FirebaseAI;
import com.google.firebase.ai.GenerativeModel;
import com.google.firebase.ai.java.GenerativeModelFutures;
import com.google.firebase.ai.type.GenerativeBackend;

...

// 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.0-flash");

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

Web

// BEFORE
import { GoogleGenerativeAI } from "@google/generative-ai";

// Fetch your API_KEY and access your API
const API_KEY = "...";
const genAI = new GoogleGenerativeAI(API_KEY);

...

const model = genAI.getGenerativeModel({ model: "MODEL_NAME"});

// AFTER
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.0-flash" });

Dart

// BEFORE
import 'package:google_generative_ai/google_generative_ai.dart';

final apiKey = Platform.environment['API_KEY'];
if (apiKey == null) {
print('No \$API_KEY environment variable');
exit(1);
}

final model = GenerativeModel(model: 'MODEL_NAME', apiKey: apiKey);

// AFTER
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.0-flash');

Einheit

Der Support für Unity war in den Google AI-Client-SDKs nicht verfügbar.

Weitere Informationen zum Einstieg in das Firebase AI Logic SDK for Unity

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

Schritt 4: Code je nach verwendeten Funktionen aktualisieren

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

  • Die Firebase AI Logic-Client-SDKs unterstützen keine Codeausführung. Wenn Sie diese Funktion verwenden, müssen Sie dies in Ihrer App berücksichtigen.

  • In den folgenden Listen finden Sie alle Änderungen, die Sie möglicherweise an Ihrem Code vornehmen müssen, um die Migration zu den Firebase AI Logic-Client-SDKs zu ermöglichen.

Für alle Sprachen und Plattformen erforderlich

  • Funktionsaufruf
    Wenn Sie diese Funktion implementiert haben, müssen Sie die Definition Ihres Schemas aktualisieren. Weitere Informationen zum Erstellen von Funktionsdeklarationen finden Sie im aktualisierten Leitfaden zu Funktionsaufrufen.

  • Strukturierte Ausgabe (z. B. JSON) mit responseSchema
    generieren Wenn Sie diese Funktion implementiert haben, müssen Sie die Definition Ihres Schemas aktualisieren. Weitere Informationen zum Erstellen von JSON-Schemas finden Sie im neuen Leitfaden für strukturierte Datenausgaben.

  • 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 eine größere Flexibilität bei der Weiterentwicklung der API auf rückwärtskompatible Weise. Wenn Sie switch-Anweisungen verwenden, müssen Sie jetzt einen default:-Fall für unbekannte oder nicht verarbeitete Werte angeben, einschließlich neuer Werte, die dem SDK in Zukunft hinzugefügt werden.

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

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

    • Die Aufzählung ModelContent.Part wurde durch ein Protokoll namens Part ersetzt, damit neue Typen auf rückwärtskompatible Weise hinzugefügt werden können. Diese Änderung wird im Abschnitt Inhaltselemente ausführlicher beschrieben.

  • Inhaltselemente

    • Das ThrowingPartsRepresentable-Protokoll wurde entfernt und die Initialisierer für ModelContent wurden vereinfacht, um gelegentliche Compilerfehler zu vermeiden. Bei Bildern, die nicht richtig codiert sind, treten weiterhin Fehler auf, 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

    • HarmCategory ist nicht mehr im Typ SafetySetting verschachtelt. Wenn Sie es als SafetySetting.HarmCategory bezeichnen, kann das durch HarmCategory ersetzt werden.
  • Feedback zur Sicherheit

    • Der Typ SafetyFeedback wurde entfernt, da er in keiner der Antworten verwendet wurde.
  • Zitatmetadaten

    • Die Property citationSources wurde in citations in CitationMetadata umbenannt.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde zu einer optionalen Eigenschaft, um Situationen widerzuspiegeln, in denen keine Zeichen gesendet werden.
  • Antwort des Kandidaten

    • CandidateResponse in Candidate umbenannt, um mit anderen Plattformen übereinzustimmen.
  • Konfiguration der Erzeugung

    • Die öffentlichen Eigenschaften von GenerationConfig wurden in internal geändert. Sie können weiterhin in der Initialisiererfunktion konfiguriert werden.

Kotlin

  • Aufzählungen

    • enum- und sealed-Klassen wurden durch reguläre Klassen ersetzt. Diese Änderung ermöglicht eine größere 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 wurden entfernt: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason und FinishReason.

  • Blob-Methoden

    • Alle Methoden, die Blob im Namen enthielten, wurden in InlineData umbenannt.
  • Sicherheitseinstellungen

    • Das Feld method wurde in ein Feld mit Nullwerten geändert.
  • Dauerklasse

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

    • Alle zuvor in CitationMetadata deklarierten Felder wurden in eine neue Klasse namens Citation verpackt. Verweise finden Sie in CitationMetadata in der Liste citations. Dadurch können die Typen plattformübergreifend besser abgeglichen werden.
  • Tokens zählen

    • Das Feld totalBillableCharacters wurde in ein Feld mit Nullwerten geändert.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde zu einer optionalen Eigenschaft, um Situationen widerzuspiegeln, in denen keine Zeichen gesendet werden.
  • Modell instanziieren

    • Der Parameter requestOptions wurde ans Ende der Parameterliste verschoben, um ihn mit anderen Plattformen in Einklang zu bringen.

Java

  • Aufzählungen

    • enum- und sealed-Klassen wurden durch reguläre Klassen ersetzt. Diese Änderung ermöglicht eine größere 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 wurden entfernt: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReason und FinishReason.

  • Blob-Methoden

    • Alle Methoden, die Blob im Namen enthielten, wurden in InlineData umbenannt.
  • Sicherheitseinstellungen

    • Das Feld method wurde in ein Feld mit Nullwerten geändert.
  • Dauerklasse

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

    • Alle zuvor in CitationMetadata deklarierten Felder wurden in eine neue Klasse namens Citation verpackt. Verweise finden Sie in CitationMetadata in der Liste citations. Dadurch können die Typen plattformübergreifend besser abgeglichen werden.
  • Tokens zählen

    • Das Feld totalBillableCharacters wurde in ein Feld mit Nullwerten geändert.
  • Abrechnungsfähige Zeichen insgesamt

    • Die Eigenschaft totalBillableCharacters in CountTokensResponse wurde zu einer optionalen Eigenschaft, um Situationen widerzuspiegeln, in denen keine Zeichen gesendet werden.
  • Modell instanziieren

    • Der Parameter requestOptions wurde ans Ende der Parameterliste verschoben, um ihn mit anderen Plattformen in Einklang zu bringen.

Web

Das Google AI-Client-SDK für JavaScript hat sich seit der Abspaltung der Firebase AI Logic-Client-SDKs davon stark verändert. In der folgenden Liste finden Sie einige mögliche Änderungen, die Sie bei der Migration zu den Firebase AI Logic-Client-SDKs berücksichtigen sollten.

  • Aufzählungen

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

    • blockReason in PromptFeedback wurde als optional gekennzeichnet.
  • Suchgrundlagen

    • Alle Verwendungen dieser Funktion wurden entfernt, da sie in den Firebase AI Logic SDKs noch nicht unterstützt wird.
  • Fehler

    • Alle Verwendungen von GoogleGenerativeAIError wurden entfernt und optional zu AIError verschoben.

Dart

  • Aufzählungen

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

    • DataPart wurde in InlineDataPart und die Funktion static data in inlineData umbenannt, um sie mit anderen Plattformen in Einklang zu bringen.
  • Anfrageoptionen

    • RequestOptions wurde entfernt, da timeout nicht funktionierte. Er wird demnächst wieder hinzugefügt, aber auf den Typ GenerativeModel umgestellt, um mit anderen Plattformen übereinzustimmen.
  • Stoppsequenzen

    • Der Parameter stopSequences in GenerationConfig ist jetzt optional und hat standardmäßig den Wert null anstelle eines leeren Arrays.
  • Zitate

    • Die Property citationSources wurde in citations in CitationMetadata umbenannt. Der Typ CitationSource wurde in Citation umbenannt, um mit anderen Plattformen übereinzustimmen.
  • Unnötige öffentliche Typen, Methoden und Eigenschaften

    • Die folgenden Typen, Methoden und Eigenschaften wurden entfernt, da sie versehentlich freigegeben wurden: defaultTimeout, CountTokensResponseFields, parseCountTokensResponse, parseEmbedContentResponse, parseGenerateContentResponse, parseContent, BatchEmbedContentsResponse, ContentEmbedding, EmbedContentRequest und EmbedContentResponse.
  • Tokens zählen

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

    • Der Parameter systemInstruction wurde ans Ende der Parameterliste verschoben, um ihn mit anderen Plattformen in Einklang zu bringen.
  • Einbettungsfunktion

    • Nicht unterstützte Funktionen für das Einbetten (embedContent und batchEmbedContents) wurden aus dem Modell entfernt.

Einheit

Der Support für Unity war in den Google AI-Client-SDKs nicht verfügbar.

Weitere Informationen zum Einstieg in das Firebase AI Logic SDK for Unity


Feedback zu Firebase AI Logic geben