Przejdź bezpośrednio do instrukcji migracji
Dlaczego warto przejść na pakiety SDK Firebase AI Logic?
Być może wypróbowano alternatywny zestaw pakietów SDK klienta mobilnego lub internetowego, który zapewniał 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 Firebase AI Logicpakietów SDK klienta, które mogą zapewnić Ci 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ż kod – w tym wywołania interfejsu Gemini API – jest wykonywany 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 Check z Firebase 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 jest skoncentrowany na potrzebach aplikacji i programistó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żyj Cloud Storage for Firebase, aby uwzględnić duże pliki w żądaniach multimodalnych (jeśli używasz Agent Platform Gemini API (formerly Vertex AI)). Pakiety SDK klienta 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ądzaj 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 w 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 w Firebase i połącz aplikację
Zaloguj się w Firebasekonsoli, a potem wybierz projekt w Firebase.
W konsoli Firebase otwórz Usługi AI > Logika AI.
Kliknij Rozpocznij, aby uruchomić przepływ pracy z instrukcjami, który pomoże Ci skonfigurować wymagane interfejsy API i zasoby w projekcie.
Wybierz Gemini Developer API. Jeśli chcesz, możesz później skonfigurować i używać innego dostawcę interfejsu API.
Konsola włączy wymagane interfejsy API i utworzy w Twoim projekcie nowy, dedykowany Geminiklucz API.
Nie dodawaj tego nowego klucza interfejsu API Gemini do kodu aplikacji. Więcej informacjiJeś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.
Aby zaktualizować bibliotekę i inicjowanie w aplikacji, postępuj zgodnie z instrukcjami w tym przewodniku po migracji.
Krok 2. Dodaj do aplikacji pakiet SDK Firebase AI Logic
Po skonfigurowaniu projektu w Firebase i połączeniu aplikacji z Firebase (patrz poprzedni krok) możesz teraz dodać Firebase AI Logicpakiet SDK do aplikacji.
Swift
Do instalowania zależności Firebase i zarządzania nimi używaj Swift Package Manager. W razie potrzeby dowiedz się więcej o innych opcjach instalacji.
Biblioteka Firebase AI Logic zapewnia dostęp do interfejsów API do interakcji z modelami Gemini. 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ę 12.5.0 lub nowszą.
W Xcode otwórz projekt aplikacji i kliknij File > Add Package Dependencies (Plik > Dodaj zależności pakietu).
Gdy pojawi się odpowiedni komunikat, dodaj repozytorium pakietu SDK Firebase na platformy Apple:
https://github.com/firebase/firebase-ios-sdkWybierz najnowszą wersję pakietu SDK.
Wybierz bibliotekę
FirebaseAILogici bibliotekęFirebaseAppCheck.
Po zakończeniu Xcode automatycznie zacznie przetwarzać i pobierać zależności w tle.
Kotlin
Pakiet Firebase AI Logic SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini.
W pliku Gradle na poziomie modułu (aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależności bibliotek Firebase AI Logic i App Check na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania obsługi wersji biblioteki.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:35.0.0")) // Add the dependencies for the Firebase AI Logic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") }
Gdy korzystamy z Firebase Android BoM, aplikacja zawsze używa zgodnych wersji bibliotek Firebase na Androida.
Java
Pakiet Firebase AI Logic SDK na Androida (firebase-ai) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini.
W pliku Gradle na poziomie modułu (aplikacji) (np. <project>/<app-module>/build.gradle.kts) dodaj zależności bibliotek Firebase AI Logic i App Check na Androida. Zalecamy używanie Firebase Android BoM do kontrolowania obsługi wersji biblioteki.
W przypadku języka Java musisz dodać 2 dodatkowe biblioteki.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:35.0.0")) // Add the dependencies for the Firebase AI Logic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") // 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 Gemini. Biblioteka jest częścią pakietu Firebase JavaScript SDK na potrzeby internetu.
Zainstaluj pakiet Firebase JS SDK na potrzeby internetu za pomocą npm:
npm install firebaseZainicjuj Firebase w aplikacji:
import { initializeApp } from "firebase/app"; import { initializeAppCheck, DebugProvider } from "firebase/app-check"; // 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
Wtyczka Firebase AI Logic do Fluttera (firebase_ai) zapewnia dostęp do interfejsów API do interakcji z modelami Gemini.
W katalogu projektu Flutter uruchom to polecenie, aby zainstalować wtyczki Firebase AI Logic i App Check:
flutter pub add firebase_ai firebase_app_checkW pliku
lib/main.dartzaimportuj wtyczki Firebase AI Logic i App Check:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_ai/firebase_ai.dart'; import 'package:firebase_app_check/firebase_app_check.dart'; import 'firebase_options.dart';W pliku
lib/main.dartupewnij się też, że Firebase został zainicjowany za pomocą obiektuDefaultFirebaseOptionswyeksportowanego przez plik konfiguracji:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );Ponownie skompiluj aplikację Flutter:
flutter run
Unity
Wsparcie dla Unity nie było dostępne w pakietach SDK klienta Google AI.
Dowiedz się, jak zacząć korzystać z pakietu Firebase AI Logic SDK na potrzeby Unity.
Usuń stary pakiet SDK z aplikacji.
Po zakończeniu migracji aplikacji (patrz pozostałe sekcje tego przewodnika) usuń starą bibliotekę.
Swift
Usuń starą bibliotekę:
W Xcode otwórz projekt aplikacji i przejdź do panelu Packages Dependencies (Zależności pakietów).
Wybierz pakiet
generative-ai-swiftz listy zależności pakietu.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 na potrzeby Unity.
Krok 3. Zaktualizuj importy i inicjowanie w aplikacji
Zaktualizuj importy oraz sposób inicjowania Gemini Developer APIusługi backendu i tworzenia instancji GenerativeModel.
Swift
// BEFOREimport GoogleGenerativeAI let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)// AFTER 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
// BEFOREimport 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-3.8-flash")
Java
// BEFOREimport 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-3.8-flash"); // Use the GenerativeModelFutures Java compatibility layer which offers // support for ListenableFuture and Publisher APIs GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
// BEFOREimport { 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-3.8-flash" });
Dart
// BEFOREimport '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-3.8-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 na potrzeby Unity.
Pamiętaj, że w zależności od używanej funkcji nie zawsze możesz utworzyć instancję GenerativeModel. Aby przesyłać strumieniowo dane wejściowe i wyjściowe za pomocą Gemini Live API, utwórz instancję LiveModel.
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 na pakiety 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 masz wdrożoną tę funkcję, musisz zaktualizować sposób definiowania schematu. Aby dowiedzieć się, jak pisać schematy JSON, zapoznaj się z nowym przewodnikiem po danych strukturalnych.Timeout
- Zmieniliśmy domyślny limit czasu dla żądań na 180 sekund.
Wymagane w zależności od platformy lub języka
Swift
Wyliczenia
Zastąpiono większość typów
enumtypamistructze zmiennymi statycznymi. Ta zmiana zapewnia większą elastyczność w rozwoju interfejsu API w sposób zgodny wstecznie. Gdy używasz instrukcjiswitch, musisz teraz uwzględnić klauzulędefault:, aby obejmowała 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
BlockThresholdnaHarmBlockThreshold. Ten typ jest terazstruct.Usunięto przypadki
unknowniunspecifiedz tych wyliczeń (obecniestruct):HarmCategory,HarmBlockThreshold,HarmProbability,BlockReasoniFinishReason.Zastąpiliśmy wyliczenie
ModelContent.Partprotokołem o nazwiePart, aby umożliwić dodawanie nowych typów w sposób zgodny wstecznie. Ta zmiana jest bardziej szczegółowo opisana w sekcji Części treści.
Elementy treści
Usunięto protokół
ThrowingPartsRepresentablei uproszczono inicjatory dlaModelContent, aby uniknąć sporadycznych błędów kompilatora. Obrazy, które nie są prawidłowo zakodowane, nadal będą powodować błędy podczas używania wgenerateContent.Zastąpiliśmy przypadki
ModelContent.Parttymistructtypami zgodnymi z protokołemPart:.textdoTextPart.datadoInlineDataPart.fileDatadoFileDataPart.functionCalldoFunctionCallPart.functionResponsedoFunctionResponsePart
Kategoria szkodliwości
- Zmieniliśmy element
HarmCategory, aby nie był już zagnieżdżony w typieSafetySetting. Jeśli odnosisz się do niego jakoSafetySetting.HarmCategory, możesz zastąpić to określenie słowemHarmCategory.
- Zmieniliśmy element
Opinie dotyczące bezpieczeństwa
- Usunęliśmy typ
SafetyFeedback, ponieważ nie był używany w żadnej z odpowiedzi.
- Usunęliśmy typ
Metadane cytowania
- Zmieniliśmy nazwę usługi
citationSourcesnacitationswCitationMetadata.
- Zmieniliśmy nazwę usługi
Łączna liczba znaków podlegających opłacie
- Zmieniono właściwość
totalBillableCharacterswCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
- Zmieniono właściwość
Odpowiedź kandydata
- Nazwa
CandidateResponsezostała zmieniona naCandidate, aby była zgodna z innymi platformami.
- Nazwa
Konfiguracja generowania
- Zmieniono publiczne właściwości
GenerationConfignainternal. Wszystkie te ustawienia można nadal konfigurować w inicjatorze.
- Zmieniono publiczne właściwości
Kotlin
Wyliczenia
Zastąpiliśmy zajęcia
enumisealedzwykłymi zajęciami. Ta zmiana zapewnia większą elastyczność w rozwijaniu interfejsu API w sposób zgodny wstecznie.Zmieniono nazwę wyliczenia
BlockThresholdnaHarmBlockThreshold.Usunięto wartości z tych wyliczeń:
HarmBlockThreshold,HarmProbability,HarmSeverity,BlockReasoniFinishReason.
Metody obiektu blob
- Zmieniliśmy nazwy wszystkich metod, które zawierały znak
Blob, tak aby zamiast niego używały znakuInlineData.
- Zmieniliśmy nazwy wszystkich metod, które zawierały znak
Ustawienia bezpieczeństwa
- Pole
methodzostało zmienione na dopuszczające wartość null.
- Pole
Klasa czasu trwania
- Usunęliśmy wszystkie przypadki użycia klasy
Durationw Kotlinie i zastąpiliśmy je klasąlong. Ta zmiana zapewnia lepszą interoperacyjność z Javą.
- Usunęliśmy wszystkie przypadki użycia klasy
Metadane cytowania
- Wszystkie pola zadeklarowane wcześniej w
CitationMetadatazostały umieszczone w nowej klasie o nazwieCitation. Cytaty znajdziesz na liście o nazwiecitationswCitationMetadata. Ta zmiana pozwala lepiej dopasować typy na różnych platformach.
- Wszystkie pola zadeklarowane wcześniej w
Licz tokeny
- Pole
totalBillableCharacterszostało zmienione na dopuszczające wartość null.
- Pole
Łączna liczba znaków podlegających opłacie
- Zmieniono właściwość
totalBillableCharacterswCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
- Zmieniono właściwość
Tworzenie instancji modelu
- Przeniesiono parametr
requestOptionsna koniec listy parametrów, aby był zgodny z innymi platformami.
- Przeniesiono parametr
Java
Wyliczenia
Zastąpiliśmy zajęcia
enumisealedzwykłymi zajęciami. Ta zmiana zapewnia większą elastyczność w rozwijaniu interfejsu API w sposób zgodny wstecznie.Zmieniono nazwę wyliczenia
BlockThresholdnaHarmBlockThreshold.Usunięto wartości z tych wyliczeń:
HarmBlockThreshold,HarmProbability,HarmSeverity,BlockReasoniFinishReason.
Metody obiektu blob
- Zmieniliśmy nazwy wszystkich metod, które zawierały znak
Blob, tak aby zamiast niego używały znakuInlineData.
- Zmieniliśmy nazwy wszystkich metod, które zawierały znak
Ustawienia bezpieczeństwa
- Pole
methodzostało zmienione na dopuszczające wartość null.
- Pole
Klasa czasu trwania
- Usunęliśmy wszystkie przypadki użycia klasy
Durationw Kotlinie i zastąpiliśmy je klasąlong. Ta zmiana zapewnia lepszą interoperacyjność z Javą.
- Usunęliśmy wszystkie przypadki użycia klasy
Metadane cytowania
- Wszystkie pola zadeklarowane wcześniej w
CitationMetadatazostały umieszczone w nowej klasie o nazwieCitation. Cytaty znajdziesz na liście o nazwiecitationswCitationMetadata. Ta zmiana pozwala lepiej dopasować typy na różnych platformach.
- Wszystkie pola zadeklarowane wcześniej w
Licz tokeny
- Pole
totalBillableCharacterszostało zmienione na dopuszczające wartość null.
- Pole
Łączna liczba znaków podlegających opłacie
- Zmieniono właściwość
totalBillableCharacterswCountTokensResponse, aby była opcjonalna, co odzwierciedla sytuacje, w których nie są wysyłane żadne znaki.
- Zmieniono właściwość
Tworzenie instancji modelu
- Przeniesiono parametr
requestOptionsna koniec listy parametrów, aby był zgodny z innymi platformami.
- Przeniesiono parametr
Web
Pamiętaj, że Google AIpakiet SDK klienta w JavaScript przeszedł wiele zmian od czasu, gdy od niego oddzieliły się Firebase AI Logicpakiety SDK klienta. Poniżej znajdziesz listę potencjalnych zmian, które warto wziąć pod uwagę podczas przechodzenia na Firebase AI Logicklientowe SDK
Wyliczenia
- Usunięto wartości z tych wyliczeń:
HarmCategory,BlockThreshold,HarmProbability,HarmSeverity,BlockReasoniFinishReason.
- Usunięto wartości z tych wyliczeń:
Przyczyna blokady
- Zmieniono pole
blockReasonwPromptFeedbackna opcjonalne.
- Zmieniono pole
Grounding w wyszukiwarce
- Usunięto wszystkie przypadki użycia tej funkcji, ponieważ nie jest ona jeszcze obsługiwana w zestawach SDKFirebase AI Logic.
Błędy
- Usunęliśmy wszystkie przypadki użycia
GoogleGenerativeAIErrori opcjonalnie przenieśliśmy się naAIError.
- Usunęliśmy wszystkie przypadki użycia
Dart
Wyliczenia
- Usunęliśmy wartości z tych wyliczeń:
HarmCategory,HarmProbability,BlockReasoniFinishReason.
- Usunęliśmy wartości z tych wyliczeń:
Część danych
- Zmieniliśmy nazwę funkcji
DataPartnaInlineDataPart, a funkcjistaticdatanainlineData, aby była zgodna z innymi platformami.
- Zmieniliśmy nazwę funkcji
Opcje żądania
- Usunięto
RequestOptions, ponieważtimeoutnie działało. W najbliższej przyszłości zostanie ona ponownie dodana, ale zostanie przeniesiona do typuGenerativeModel, aby pasować do innych platform.
- Usunięto
Sekwencje zatrzymania
- Zmieniono parametr
stopSequenceswGenerationConfigtak, aby był opcjonalny i domyślnie miał wartośćnullzamiast pustej tablicy.
- Zmieniono parametr
Cytowania
- Zmieniliśmy nazwę usługi
citationSourcesnacitationswCitationMetadata. TypCitationSourcezostał zmieniony naCitation, aby był zgodny z innymi platformami.
- Zmieniliśmy nazwę usługi
Niepotrzebne typy, metody i właściwości publiczne
- Usunięto te typy, metody i właściwości, które zostały udostępnione nieumyślnie:
defaultTimeout,CountTokensResponseFields,parseCountTokensResponse,parseEmbedContentResponse,parseGenerateContentResponse,parseContent,BatchEmbedContentsResponse,ContentEmbedding,EmbedContentRequestiEmbedContentResponse.
- Usunięto te typy, metody i właściwości, które zostały udostępnione nieumyślnie:
Licz tokeny
- Usunięto dodatkowe pola z funkcji
countTokens, które nie są już potrzebne. Wystarczy tylkocontents.
- Usunięto dodatkowe pola z funkcji
Tworzenie instancji modelu
- Przeniesiono parametr
systemInstructionna koniec listy parametrów, aby był zgodny z innymi platformami.
- Przeniesiono parametr
Funkcja osadzania
- Usunięto z modelu nieobsługiwaną funkcję osadzania (
embedContentibatchEmbedContents).
- Usunięto z modelu nieobsługiwaną funkcję osadzania (
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 na potrzeby Unity.
Prześlij opinię o korzystaniu z usługi Firebase AI Logic