W tym przewodniku dowiesz się, jak zacząć korzystać z funkcji Vertex AI Gemini API bezpośrednio z aplikacji za pomocą pakietu SDK Vertex AI in Firebase na wybranej platformie.
Pamiętaj, że możesz też skorzystać z tego przewodnika, aby rozpocząć dostępowanie do modeli Imagen za pomocą pakietów SDK Vertex AI in Firebase.
Wymagania wstępne
W tym przewodniku zakładamy, że wiesz, jak używać Android Studio do tworzenia aplikacji na Androida.
Upewnij się, że środowisko programistyczne i aplikacja na Androida spełniają te wymagania:
- Android Studio (najnowsza wersja)
- Twoja aplikacja jest kierowana na interfejs API na poziomie 21 lub wyższym.
(Opcjonalnie) Wypróbuj przykładową aplikację.
Możesz szybko wypróbować pakiet SDK, zobaczyć pełne wdrożenie różnych przypadków użycia lub użyć przykładowej aplikacji, jeśli nie masz własnej aplikacji na Androida. Aby użyć przykładowej aplikacji, musisz połączyć ją z projektem Firebase.
Krok 1. Skonfiguruj projekt Firebase i połącz z nim aplikację.
Jeśli masz już projekt Firebase i aplikację połączoną z Firebase
W konsoli Firebase otwórz stronę Vertex AI.
Kliknij kartę Vertex AI in Firebase, aby uruchomić przepływ pracy, który pomoże Ci wykonać te czynności:
Przejdź w projekcie na abonament Blaze z taryfą płatności według wykorzystania.
Włącz wymagane interfejsy API w projekcie (interfejs API Vertex AI i interfejs API Vertex AI in Firebase).
Aby dodać pakiet SDK do aplikacji, przejdź do następnego kroku w tym przewodniku.
Jeśli nie masz jeszcze projektu Firebase i aplikacji połączonej z Firebase:
Krok 2. Dodaj pakiet SDK
Po skonfigurowaniu projektu Firebase i połączeniu aplikacji z Firebase (patrz poprzedni krok) możesz dodać do aplikacji pakiet SDK Vertex AI in Firebase.
Pakiet SDK Vertex AI in Firebase na Androida (firebase-vertexai
) zapewnia dostęp do interfejsów API umożliwiających interakcję z modelami Gemini i Imagen.
W pliku Gradle na poziomie modułu (aplikacji) (np. <project>/<app-module>/build.gradle.kts
)
dodaj zależność z biblioteką Vertex AI in Firebase na Androida.
Zalecamy używanie Firebase Android BoM do kontrolowania wersji biblioteki.
Kotlin
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.12.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }
Java
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.12.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") // 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") }
Dzięki użyciu Firebase Android BoM aplikacja będzie zawsze używać zgodnych wersji bibliotek Firebase na Androida.
Krok 3. Inicjuj usługę Vertex AI i utwórz instancję GenerativeModel
.
Zanim zaczniesz wykonywać wywołania interfejsu API i wysyłać prompt do modelu Gemini, musisz zainicjować usługę Vertex AI i utworzyć instancję GenerativeModel
.
Kotlin
W przypadku Kotlina metody w tym pakiecie SDK są funkcjami zawieszającymi i muszą być wywoływane z zakresu współbieżności.// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
Java
W przypadku Javy metody strumieniowania w tym pakiecie SDK zwracają typPublisher
z biblioteki Reaktywne strumienie.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Po przeczytaniu tego przewodnika dowiesz się, jak wybrać model i (opcjonalnie) lokalizację odpowiednią do Twojego przypadku użycia i aplikacji.
Krok 4. Wyślij prośbę o prompt do modelu
Po połączeniu aplikacji z Firebase, dodaniu pakietu SDK i inicjalizacji usługi Vertex AI oraz modelu generatywnego możesz wysłać prośbę o prompt do modelu Gemini.
Możesz użyć generateContent()
, aby wygenerować tekst z promptu tekstowego:
Kotlin
W przypadku Kotlina metody w tym pakiecie SDK są funkcjami zawieszającymi i muszą być wywoływane z zakresu współbieżności.// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
val generativeModel = Firebase.vertexAI.generativeModel("gemini-2.0-flash")
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
W przypadku Javy metody w tym pakiecie SDK zwracają wartośćListenableFuture
.
// Initialize the Vertex AI service and create a `GenerativeModel` instance
// Specify a model that supports your use case
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-2.0-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Co jeszcze możesz zrobić?
Więcej informacji o obsługiwanych modelach
Dowiedz się więcej o modelach dostępnych w różnych przypadkach użycia oraz o ich limitach i cenach.
Wypróbuj inne funkcje
- Dowiedz się więcej o generowaniu tekstu na podstawie promptów tekstowych, w tym o przesyłaniu odpowiedzi.
- generować tekst na podstawie promptów multimodalnych (w tym tekst, obrazy, pliki PDF, filmy i pliki audio).
- tworzyć rozmowy wieloetapowe (czat);
- generować dane wyjściowe w uporządkowanym formacie (np. JSON) na podstawie zarówno tekstowych, jak i wielomodalnych promptów;
- generować obrazy na podstawie promptów tekstowych;
- przesyłać dane wejściowe i wyjściowe (w tym dźwięk) za pomocą urządzenia Gemini Live API;
- Użyj funkcji wywoływania, aby połączyć modele generatywne z zewnętrznymi systemami i informacjami.
Dowiedz się, jak kontrolować generowanie treści
- Zrozumieć projektowanie promptów, w tym sprawdzone metody, strategie i przykładowe prompty.
- Skonfiguruj parametry modelu, takie jak temperatura i maksymalna liczba tokenów wyjściowych (w przypadku Gemini) lub format obrazu i generowanie osób (w przypadku Imagen).
- Używaj ustawień bezpieczeństwa, aby dostosować prawdopodobieństwo otrzymywania odpowiedzi, które mogą być uważane za szkodliwe.
Prześlij opinię o tym, jak oceniasz korzystanie z usługi Vertex AI in Firebase