Na tej stronie znajdziesz instrukcje migracji z pakietów SDK klienta Google AI na pakiety SDK klienta Vertex AI in Firebase w aplikacjach mobilnych lub internetowych. Pakiety SDK Vertex AI in Firebase są dostępne na platformy Apple (Swift), Android (Kotlin i Java), Web (JavaScript) i Flutter (Dart).
Przejdź bezpośrednio do instrukcji migracji
Dlaczego warto przejść na Vertex AI?
Być może wypróbowano alternatywną wersję pakietu Gemini API za pomocą pakietu Google AI Studio lub pakietów Google AI klienta SDK. Te pakiety SDK ułatwiają rozpoczęcie pracy z Gemini API i prototypowaniem. W przypadku wersji produkcyjnych lub aplikacji mobilnych i internetowych na potrzeby firm, które bezpośrednio wywołują funkcję Gemini API po stronie klienta, Firebase zdecydowanie zaleca wywoływanie funkcji Vertex AI Gemini API za pomocą pakietów SDK Firebase.
Funkcje zabezpieczeń w aplikacji mobilnej i internetowej
W przypadku aplikacji mobilnych i internetowych bezpieczeństwo jest kluczowe i wymaga szczególnej uwagi, ponieważ kod (w tym wywołania do Gemini API) działa w niechronionym środowisku.
Domyślnie Vertex AI Gemini API jest autoryzowany za pomocą uprawnień Google Cloud (a nie za pomocą klucza interfejsu API, takiego jak Google AI Gemini API). Pakiety SDK Vertex AI in Firebase są tworzone tak, aby wywoływać bezpieczniejsze Vertex AI Gemini API.
W przypadku aplikacji mobilnych i internetowych musisz chronić Gemini API oraz zasoby projektu (np. dostrojone modele) przed nadużyciami przez nieautoryzowanych klientów. Możesz użyć Firebase App Check, aby sprawdzić, czy wszystkie wywołania interfejsu API pochodzą z Twojej aplikacji. Ta funkcja jest dostępna tylko wtedy, gdy używasz pakietów SDK Vertex AI in Firebase.
Ekosystem stworzony z myślą o aplikacji mobilnej i internetowej
Firebase to platforma Google do tworzenia aplikacji mobilnych i internetowych. Korzystanie z pakietów SDK Vertex AI in Firebase oznacza, że Twoje aplikacje są częścią ekosystemu, który jest dostosowany do potrzeb aplikacji full-stack i ich deweloperów. Na przykład możesz wykonywać te czynności:
Użyj funkcji Cloud Storage for Firebase, aby uwzględnić duże pliki w żądaniach multimodalnych. Korzystaj też z pakietów SDK klienta, które obsługują przesyłanie i pobieranie plików (nawet w niekorzystnych warunkach sieciowych) oraz zapewniają większą ochronę danych użytkowników końcowych. Więcej informacji znajdziesz w naszym przewodniku po rozwiązaniach dotyczących Cloud Storage for Firebase.
zarządzać danymi strukturalnymi za pomocą pakietów SDK bazy danych przeznaczonych do aplikacji mobilnych i internetowych (np. Cloud Firestore);
Dynamicznie ustawiaj konfiguracje czasu wykonywania (np. lokalizację) lub zamieniaj wartości w aplikacji (np. nazwę modelu) bez publikowania nowej wersji aplikacji za pomocą Firebase Remote Config.
Dodatkowe korzyści płynące z użycia Vertex AI z poziomu Google Cloud
W miarę jak będziesz coraz częściej wykorzystywać generatywną AI w aplikacjach i przepływach pracy, możesz potrzebować platformy, która oferuje kompleksowe rozwiązania do tworzenia i wdrażania aplikacji opartych na generatywnej AI. Google Cloud udostępnia kompleksowy ekosystem narzędzi, które umożliwiają wykorzystanie potencjału generatywnej AI od początkowych etapów tworzenia aplikacji po jej wdrażanie, hosting i zarządzanie złożonymi danymi na dużą skalę.
Platforma Vertex AI od Google Cloud oferuje zestaw narzędzi MLOps, które usprawniają korzystanie z modeli AI, ich wdrażanie i monitorowanie, co zwiększa wydajność i bezpieczeństwo. Dodatkowo integracja z bazami danych, narzędziami DevOps, logowaniem, monitorowaniem i usługą IAM zapewnia holistyczne podejście do zarządzania całym cyklem życia generatywnej AI.
Więcej informacji o przypadkach użycia Vertex AI znajdziesz w dokumentacji Google Cloud.
Przejdź na pakiety SDK Vertex AI in Firebase
Migracja do pakietów SDK Vertex AI in Firebase wymaga wykonania 3 głównych kroków:
Skonfiguruj nowy lub istniejący projekt Firebase i połącz z nim aplikację.
Migracja bazy kodu, która wymaga tylko zmiany pakietu SDK i kodu inicjalizacji (w tym nazwy modelu). Nie musisz modyfikować żadnego kodu, który wywołuje interfejs Gemini API.
Usuń wszystkie nieużywane klucze interfejsu API i wyłącz nieużywane interfejsy API.
Krok 1. Skonfiguruj projekt Firebase i połącz z nim aplikację.
Nawet jeśli znasz już Firebase, przeczytaj tę sekcję, aby mieć pewność, że Twój projekt i aplikacja Firebase są skonfigurowane pod kątem korzystania z pakietów SDKVertex AI in Firebase.
Krok 2. Przenieś kod źródłowy
Wybierz platformę aplikacji, aby wyświetlić instrukcje dotyczące tej platformy.
Pakiety SDK Google AI i Vertex AI in Firebase zostały tak zaprojektowane, aby przejście z jednej platformy na drugą było jak najprostsze.
Aby przeprowadzić migrację, wystarczy zmienić pakiet SDK zintegrowany z bazą kodu aplikacji oraz zainicjować usługę i model generatywny. Nie musisz modyfikować kodu, który wywołuje funkcję Gemini API.
Zmień pakiet SDK
Google AI
Kotlin+KTX
dependencies {
// ... other androidx dependencies
// add the dependency for the Google AI client SDK for Android
implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}
Java
dependencies {
// ... other androidx dependencies
// add the dependency for the Google AI client SDK for Android
implementation("com.google.ai.client.generativeai:generativeai:VERSION")
// Required for one-shot operations (to use `ListenableFuture` from Reactive Streams)
implementation("com.google.guava:guava:31.0.1-android")
// Required for streaming operations (to use `Publisher` from Guava Android)
implementation("org.reactivestreams:reactive-streams:1.0.4")
}
Vertex AI in Firebase
Kotlin+KTX
dependencies {
// ... other androidx dependencies
// add the dependency for the Vertex AI in Firebase SDK for Android
implementation("com.google.firebase:firebase-vertexai:16.0.2")
}
Java
dependencies {
// ... other androidx dependencies
// add the dependency for the Vertex AI in Firebase SDK for Android
implementation("com.google.firebase:firebase-vertexai:16.0.2")
// 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")
}
Zmień inicjalizację
Google AI
Kotlin+KTX
val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
// Access your API key as a Build Configuration variable
apiKey = BuildConfig.apiKey
)
Java
GenerativeModel gm = new GenerativeModel("MODEL_NAME",
// Access your API key as a Build Configuration variable
BuildConfig.apiKey
);
// Use the GenerativeModelFutures Java compatibility layer which offers support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Vertex AI in Firebase
Kotlin+KTX
val generativeModel = Firebase.vertexAI.generativeModel("MODEL_NAME")
Java
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Aktualizowanie importów
W podanych niżej fragmentach kodu jako przykłady użyto klas Chat
, Content
i GenerativeModelFutures
, ale te same zasady powinny obowiązywać w przypadku innych klas w ramach tego samego pakietu.
Google AI
Kotlin+KTX
import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures
Java
import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;
Vertex AI in Firebase
Kotlin+KTX
import com.google.firebase.vertexai.Chat
import com.google.firebase.vertexai.type.Content
import com.google.firebase.vertexai.java.GenerativeModuleFutures
Java
import com.google.firebase.vertexai.Chat;
import com.google.firebase.vertexai.type.Content;
import com.google.firebase.vertexai.java.GenerativeModuleFutures;
Krok 3. Usuń wszystkie nieużywane klucze interfejsu API i wyłącz nieużywane interfejsy API.
Jeśli nie musisz już używać klucza API Google AI, zgodnie ze sprawdzonymi metodami zabezpieczeń usuń go. Klucze interfejsu API Google AI możesz wyświetlać i usuwać w sekcji Klucze API w Google AI Studio.
Jeśli nie korzystasz już z narzędzia Google AI Gemini API, wyłącz je w projekcie. Możesz to zrobić w konsoli Google Cloud na stronie Generative Language API (generativelanguage.googleapis.com
). („Generative Language API” to oficjalna nazwa interfejsu Google AI Gemini API).
Co jeszcze możesz zrobić?
- Zarówno Google AI, jak i Vertex AI udostępniają interfejs internetowy o nazwie „AI Studio”, który służy do eksperymentowania z promptami i parametrami modelu. Z dokumentacji Google Cloud dowiesz się, jak przenieść prompty z usługi Google AI Studio do usługi Vertex AI Studio.