Przejście z pakietów SDK klienta Google AI na pakiety SDK Firebase AI Logic


Przejdź bezpośrednio do instrukcji migracji

Dlaczego warto przeprowadzić migrację na pakiety SDK w wersji Firebase AI Logic?

Być może wypróbowano alternatywny zestaw pakietów SDK klienta mobilnego lub internetowego, który zapewnił dostęp do Gemini Developer API.

Te pakiety SDK klienta nie były zintegrowane z solidnym ekosystemem Firebase, który oferuje kluczowe usługi dla aplikacji mobilnych i internetowych. Zostały one wycofane na rzecz pakietów SDK klienta Firebase AI Logic, które zapewniają dostęp do Gemini Developer API.

Funkcje zabezpieczeń aplikacji mobilnych i internetowych

W przypadku aplikacji mobilnych i internetowych bezpieczeństwo ma kluczowe znaczenie i wymaga szczególnej uwagi, ponieważ Twój kod, w tym wywołania Gemini API, jest uruchamiany w niechronionym środowisku. Możesz użyć Firebase App Check, aby chronić interfejsy API przed nadużyciami ze strony nieautoryzowanych klientów.

Gdy używasz Firebase App CheckFirebase AI Logic, nigdy nie dodajesz klucza interfejsu API Gemini dla Gemini Developer API bezpośrednio do bazy kodu aplikacji mobilnej lub internetowej. Zamiast tego klucz interfejsu APIGemini pozostaje na serwerze i nie jest widoczny dla złośliwych podmiotów.

Ekosystem stworzony z myślą o aplikacjach mobilnych i internetowych

Firebase to platforma Google do tworzenia aplikacji mobilnych i internetowych. Korzystanie z Firebase AI Logic oznacza, że Twoje aplikacje znajdują się w ekosystemie, który koncentruje się na potrzebach aplikacji i deweloperów full-stack. Przykład:

  • Dynamicznie ustawiaj konfiguracje czasu działania lub zamieniaj wartości w aplikacji (np. nazwę i wersję modelu) bez publikowania nowej wersji aplikacji za pomocą Firebase Remote Config.

  • Używaj Cloud Storage for Firebase, aby uwzględniać duże pliki w żądaniach multimodalnych (jeśli używasz Vertex AI Gemini API). Klienckie pakiety SDK Cloud Storage pomagają w przesyłaniu i pobieraniu plików (nawet w przypadku słabego połączenia sieciowego) oraz zapewniają większe bezpieczeństwo danych użytkowników. Więcej informacji znajdziesz w naszym przewodniku po rozwiązaniach dotyczącym korzystania z Cloud Storage for Firebase.

  • zarządzać danymi strukturalnymi za pomocą pakietów SDK do baz danych przeznaczonych dla aplikacji mobilnych i internetowych (np. Cloud Firestore);

Migracja do pakietów SDK Firebase AI Logic

Omówienie kroków migracji do pakietów SDK Firebase AI Logic:

  • Krok 1. Skonfiguruj nowy lub istniejący projekt Firebase i połącz aplikację z Firebase.

  • Krok 2: dodaj do aplikacji pakiety SDK Firebase AI Logic.

  • Krok 3. Zaktualizuj importy i inicjalizację w aplikacji.

  • Krok 4. Zaktualizuj kod w zależności od używanych funkcji.

Krok 1. Skonfiguruj projekt Firebase i połącz aplikację

  1. Zaloguj się w Firebasekonsoli, a potem wybierz projekt Firebase.

  2. W konsoli Firebase otwórz stronę Firebase AI Logic.

  3. Kliknij Rozpocznij, aby uruchomić procedurę, która pomoże Ci skonfigurować wymagane interfejsy API i zasoby w projekcie.

  4. Wybierz Gemini Developer API. W każdej chwili możesz skonfigurować i używać innego dostawcę interfejsu API.

    Konsola włączy wymagane interfejsy API i utworzy w projekcie nowy, dedykowany klucz interfejsu APIGemini.
    Nie dodawaj tego nowego klucza interfejsu API Gemini do kodu aplikacji. Więcej informacji

  5. Jeśli w procesie w konsoli pojawi się odpowiedni monit, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby zarejestrować aplikację i połączyć ją z Firebase.

  6. Aby zaktualizować bibliotekę i inicjowanie w aplikacji, postępuj zgodnie z instrukcjami w tym przewodniku migracji.

Krok 2. Dodaj do aplikacji pakiet SDK Firebase AI Logic

Po skonfigurowaniu projektu Firebase i połączeniu aplikacji z Firebase (patrz poprzedni krok) możesz teraz dodać do aplikacji pakiet Firebase AI Logic SDK.

Swift

Do instalacji zależności Firebase i do zarządzania nimi możesz używać menedżera pakietów Swift.

Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen. Biblioteka jest częścią pakietu SDK Firebase na platformy Apple (firebase-ios-sdk).

Jeśli korzystasz już z Firebase, upewnij się, że pakiet Firebase ma wersję 11.13.0 lub nowszą.

  1. Po otwarciu projektu aplikacji wybierz w Xcode opcję File > Add Package Dependencies (Plik > Dodaj zależności pakietu).

  2. Gdy pojawi się prośba, dodaj repozytorium pakietu SDK Firebase na platformy Apple:

    https://github.com/firebase/firebase-ios-sdk
    
  3. Wybierz najnowszą wersję pakietu SDK.

  4. Wybierz FirebaseAI bibliotekę.

Gdy skończysz, Xcode zacznie automatycznie wyszukiwać i pobierać zależności w tle.

Kotlin

Firebase AI Logic Pakiet SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależność dla biblioteki Firebase AI Logic na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania wersji biblioteki.

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")
}

Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.

Java

Firebase AI Logic Pakiet SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

pliku Gradle modułu (na poziomie aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależność dla biblioteki Firebase AI Logic na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania wersji biblioteki.

W przypadku Javy musisz dodać 2 dodatkowe biblioteki.

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")
}

Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.

Web

Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen. Biblioteka jest częścią pakietu Firebase JavaScript SDK dla internetu.

  1. Zainstaluj pakiet Firebase JS SDK na potrzeby internetu za pomocą npm:

    npm install firebase
    
  2. Zainicjuj Firebase w aplikacji:

    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

Firebase AI LogicWtyczka do Fluttera (firebase_ai) zapewnia dostęp do interfejsów API do interakcji z modelami GeminiImagen.

  1. W katalogu projektu Flutter uruchom to polecenie, aby zainstalować wtyczkę podstawową i wtyczkę Firebase AI Logic:

    flutter pub add firebase_core && flutter pub add firebase_ai
    
  2. W pliku lib/main.dart zaimportuj podstawową wtyczkę Firebase, wtyczkę Firebase AI Logic i plik konfiguracji wygenerowany wcześniej:

    import 'package:firebase_core/firebase_core.dart';
    import 'package:firebase_ai/firebase_ai.dart';
    import 'firebase_options.dart';
    
  3. W pliku lib/main.dart zainicjuj Firebase za pomocą obiektu DefaultFirebaseOptions wyeksportowanego przez plik konfiguracji:

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Przebuduj aplikację Flutter:

    flutter run
    

Unity

Obsługa Unity nie była dostępna w pakietach SDK klienta Google AI.

Dowiedz się, jak zacząć korzystać z pakietu Firebase AI Logic SDK dla Unity.

Usuwanie starego pakietu SDK z aplikacji

Po zakończeniu migracji aplikacji (patrz pozostałe sekcje tego przewodnika) usuń starą bibliotekę.

Swift

Usuń starą bibliotekę:

  1. Po otwarciu projektu aplikacji w Xcode otwórz panel Packages Dependencies (Zależności pakietów).

  2. Wybierz pakiet generative-ai-swift z listy zależności pakietu.

  3. Kliknij przycisk - u dołu listy i kliknij Usuń, aby potwierdzić.

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

Usuń stary pakiet:
flutter pub remove google_generative_ai

Unity

Obsługa Unity nie była dostępna w pakietach SDK klienta Google AI.

Dowiedz się, jak zacząć korzystać z pakietu Firebase AI Logic SDK dla Unity.

Krok 3. Zaktualizuj importy i inicjalizację w aplikacji.

Zaktualizuj importy oraz sposób inicjowania usługi backendu Gemini Developer API i tworzenia instancji GenerativeModel.

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.5-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.5-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.5-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.5-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.5-flash');

Unity

Obsługa Unity nie była dostępna w pakietach SDK klienta Google AI.

Dowiedz się, jak zacząć korzystać z pakietu Firebase AI Logic SDK dla Unity.

Pamiętaj, że w zależności od używanej funkcji nie zawsze możesz utworzyć instancję GenerativeModel.

Krok 4. Zaktualizuj kod w zależności od używanych funkcji

W tym kroku opisujemy zmiany, które mogą być wymagane w zależności od używanych funkcji.

  • Pakiety SDK klienta Firebase AI Logic nie obsługują wykonywania kodu. Jeśli korzystasz z tej funkcji, musisz uwzględnić to w swojej aplikacji.

  • Zapoznaj się z tymi listami, aby sprawdzić, czy musisz wprowadzić w kodzie jakieś zmiany, aby dostosować go do migracji do pakietów SDK klienta Firebase AI Logic.

Wymagany w przypadku wszystkich języków i platform

  • Wywoływanie funkcji
    Jeśli ta funkcja została wdrożona, musisz wprowadzić zmiany w sposobie definiowania schematu. Aby dowiedzieć się, jak pisać deklaracje funkcji, zapoznaj się z aktualnym przewodnikiem po wywoływaniu funkcji.

  • Generowanie danych wyjściowych w formacie strukturalnym (np. JSON) za pomocą responseSchema
    Jeśli ta funkcja została wdrożona, musisz zaktualizować sposób definiowania schematu. Aby dowiedzieć się, jak pisać schematy JSON, zapoznaj się z nowym przewodnikiem po danych strukturalnych.

  • Limit czasu

    • Zmieniono domyślny limit czasu oczekiwania na żądania na 180 sekund.

Wymagane w zależności od platformy lub języka

Swift

  • Wyliczenia

    • Zastąpiliśmy większość typów enum typami struct ze zmiennymi statycznymi. Ta zmiana zapewnia większą elastyczność w zakresie rozwoju interfejsu API w sposób zgodny wstecznie. Podczas używania instrukcji switch musisz teraz uwzględnić default:, aby obejmować nieznane lub nieobsługiwane wartości, w tym nowe wartości, które zostaną dodane do pakietu SDK w przyszłości.

    • Zmieniono nazwę wyliczenia BlockThreshold na HarmBlockThreshold. Ten typ jest teraz struct.

    • Usunięto przypadki unknownunspecified z tych wyliczeń (obecnie struct): HarmCategory, HarmBlockThreshold, HarmProbability, BlockReasonFinishReason.

    • Zastąpiliśmy wyliczenie ModelContent.Part protokołem o nazwie Part, aby umożliwić dodawanie nowych typów w sposób zgodny wstecznie. Ta zmiana jest szczegółowo opisana w sekcji Części treści.

  • Elementy treści

    • Usunięto protokół ThrowingPartsRepresentable i uproszczono inicjatory dla ModelContent, aby uniknąć sporadycznych błędów kompilatora. Obrazy, które nie są prawidłowo zakodowane, nadal będą powodować błędy podczas używania w generateContent.

    • Zastąpiliśmy przypadki ModelContent.Part tymi typami struct zgodnymi z protokołem Part:

      • .text do TextPart
      • .data do InlineDataPart
      • .fileData do FileDataPart
      • .functionCall do FunctionCallPart
      • .functionResponse do FunctionResponsePart
  • Kategoria szkodliwości

    • Zmieniono element HarmCategory, aby nie był już zagnieżdżony w typie SafetySetting. Jeśli używasz nazwy SafetySetting.HarmCategory, możesz ją zastąpić nazwą HarmCategory.
  • Opinie dotyczące bezpieczeństwa

    • Usunięto typ SafetyFeedback, ponieważ nie był używany w żadnej z odpowiedzi.
  • Metadane cytowania

    • Zmieniliśmy nazwę właściwości citationSources na citationsCitationMetadata.
  • Łączna liczba znaków podlegających rozliczeniu

    • Zmieniono właściwość totalBillableCharactersCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
  • Odpowiedź kandydata

    • Nazwa CandidateResponse została zmieniona na Candidate, aby była zgodna z innymi platformami.
  • Konfiguracja generowania

    • Zmieniono właściwości publiczne GenerationConfig na internal. Wszystkie te ustawienia można nadal konfigurować w inicjatorze.

Kotlin

  • Wyliczenia

    • Zastąpiono zajęcia enumsealed zwykłymi zajęciami. Ta zmiana zapewnia większą elastyczność w zakresie rozwoju interfejsu API w sposób zgodny wstecznie.

    • Zmieniono nazwę wyliczenia BlockThreshold na HarmBlockThreshold.

    • Usunięto wartości z tych wyliczeń: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReasonFinishReason.

  • Metody obiektu blob

    • W nazwach wszystkich metod, które zawierały Blob, zamieniliśmy ten ciąg znaków na InlineData.
  • Ustawienia bezpieczeństwa

    • Pole method zostało zmienione na dopuszczające wartość null.
  • Klasa czasu trwania

    • Usunięto wszystkie użycia klasy Duration w Kotlinie i zastąpiono je klasą long. Ta zmiana zapewnia lepszą interoperacyjność z Javą.
  • Metadane cytowania

    • Wszystkie pola zadeklarowane wcześniej w CitationMetadata zostały umieszczone w nowej klasie o nazwie Citation. Cytaty znajdziesz na liście o nazwie citationsCitationMetadata. Ta zmiana pozwala lepiej dopasować typy na różnych platformach.
  • Licz tokeny

    • Pole totalBillableCharacters zostało zmienione na dopuszczające wartość null.
  • Łączna liczba znaków podlegających rozliczeniu

    • Zmieniono właściwość totalBillableCharactersCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
  • Tworzenie instancji modelu

    • Przeniesiono parametr requestOptions na koniec listy parametrów, aby był zgodny z innymi platformami.

Java

  • Wyliczenia

    • Zastąpiono zajęcia enumsealed zwykłymi zajęciami. Ta zmiana zapewnia większą elastyczność w zakresie rozwoju interfejsu API w sposób zgodny wstecznie.

    • Zmieniono nazwę wyliczenia BlockThreshold na HarmBlockThreshold.

    • Usunięto wartości z tych wyliczeń: HarmBlockThreshold, HarmProbability, HarmSeverity, BlockReasonFinishReason.

  • Metody obiektu blob

    • W nazwach wszystkich metod, które zawierały Blob, zamieniliśmy ten ciąg znaków na InlineData.
  • Ustawienia bezpieczeństwa

    • Pole method zostało zmienione na dopuszczające wartość null.
  • Klasa czasu trwania

    • Usunięto wszystkie użycia klasy Duration w Kotlinie i zastąpiono je klasą long. Ta zmiana zapewnia lepszą interoperacyjność z Javą.
  • Metadane cytowania

    • Wszystkie pola zadeklarowane wcześniej w CitationMetadata zostały umieszczone w nowej klasie o nazwie Citation. Cytaty znajdziesz na liście o nazwie citationsCitationMetadata. Ta zmiana pozwala lepiej dopasować typy na różnych platformach.
  • Licz tokeny

    • Pole totalBillableCharacters zostało zmienione na dopuszczające wartość null.
  • Łączna liczba znaków podlegających rozliczeniu

    • Zmieniono właściwość totalBillableCharactersCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
  • Tworzenie instancji modelu

    • Przeniesiono parametr requestOptions na koniec listy parametrów, aby był zgodny z innymi platformami.

Web

Pamiętaj, że Google AIpakiet SDK klienta JavaScript uległ wielu zmianom od czasu, gdy od niego odłączono Google AIpakiety SDK klienta.Firebase AI Logic Poniżej znajdziesz listę potencjalnych zmian, które warto wziąć pod uwagę podczas migracji do pakietów SDK klienta Firebase AI Logic.

  • Wyliczenia

    • Usunięto wartości z tych wyliczeń: HarmCategory, BlockThreshold, HarmProbability, HarmSeverity, BlockReasonFinishReason.
  • Przyczyna blokady

    • Zmieniono blockReasonPromptFeedback na opcjonalne.
  • Grounding w wyszukiwarce

    • Usunęliśmy wszystkie przypadki użycia tej funkcji, ponieważ nie jest ona jeszcze obsługiwana w zestawach SDK Firebase AI Logic.
  • Błędy

    • Usunięcie wszystkich zastosowań GoogleGenerativeAIError i opcjonalne przejście na AIError.

Dart

  • Wyliczenia

    • Usunęliśmy wartości z tych wyliczeń: HarmCategory, HarmProbability, BlockReasonFinishReason.
  • Część danych

    • Zmieniliśmy nazwę funkcji DataPart na InlineDataPart, a funkcji static data na inlineData, aby była zgodna z innymi platformami.
  • Opcje żądania

    • Usunięto RequestOptions, ponieważ timeout nie działało. W najbliższej przyszłości zostanie ona ponownie dodana, ale zostanie przeniesiona do typu GenerativeModel, aby pasować do innych platform.
  • Sekwencje zatrzymania

    • Zmieniono parametr stopSequencesGenerationConfig tak, aby był opcjonalny i domyślnie przyjmował wartość null zamiast pustej tablicy.
  • Cytowania

    • Zmieniliśmy nazwę właściwości citationSources na citationsCitationMetadata. Typ CitationSource został zmieniony na Citation w celu zachowania zgodności z innymi platformami.
  • Niepotrzebne typy, metody i właściwości publiczne

    • Usunęliśmy te typy, metody i właściwości, które zostały udostępnione nieumyślnie: defaultTimeout, CountTokensResponseFields, parseCountTokensResponse, parseEmbedContentResponse, parseGenerateContentResponse, parseContent, BatchEmbedContentsResponse, ContentEmbedding, EmbedContentRequestEmbedContentResponse.
  • Licz tokeny

    • Usunięto dodatkowe pola z funkcji countTokens, które nie są już potrzebne. Wystarczy tylko contents.
  • Tworzenie instancji modelu

    • Przeniesiono parametr systemInstruction na koniec listy parametrów, aby był zgodny z innymi platformami.
  • Funkcja umieszczania

    • Usunięto z modelu nieobsługiwaną funkcję osadzania (embedContentbatchEmbedContents).

Unity

Obsługa Unity nie była dostępna w pakietach SDK klienta Google AI.

Dowiedz się, jak zacząć korzystać z pakietu Firebase AI Logic SDK dla Unity.


Prześlij opinię o korzystaniu z usługi Firebase AI Logic