Z tego przewodnika dowiesz się, jak zacząć dzwonić pod numery Vertex AI Gemini API bezpośrednio z aplikacji za pomocą pakiety SDK Vertex AI dla Firebase.
Wymagania wstępne
W tym przewodniku przyjęto założenie, że wiesz już, jak używać Android Studio do tworzenia na Androida.
Upewnij się, że Twoje środowisko programistyczne i aplikacja na Androida spełniają wymagania następujące wymagania:
- Android Studio (najnowsza wersja)
- Aplikacja na Androida musi być kierowana na interfejs API na poziomie 21 lub wyższym.
(Opcjonalnie) Zobacz przykładową aplikację.
Pobieranie przykładowej aplikacji
Możesz szybko wypróbować pakiet SDK, zobaczyć pełną implementację różnych zastosowań w przypadkach, a jeśli nie masz własnej aplikacji na Androida, skorzystaj z aplikacji próbnej. Aby użyć przykładowej aplikacji, musisz wykonać połączyć je z projektem Firebase.
Krok 1. Skonfiguruj projekt Firebase i połącz z nią swoją aplikację
Jeśli masz już projekt Firebase i aplikację połączoną z Firebase
W konsoli Firebase otwórz Strona Build with Gemini, a potem kliknij drugą kartę, aby uruchomić przepływ pracy, następujących zadań. Jeśli w konsoli wyświetli się karta Vertex AI, Te zadania są wykonane.
Przenieś projekt na wyższy abonament, aby używać Abonament Blaze z płatnością według wykorzystania
Włącz w projekcie te 2 interfejsy API:
aiplatform.googleapis.com
. orazfirebaseml.googleapis.com
Przejdź do następnego kroku tego przewodnika, aby dodać pakiet SDK do aplikacji.
Jeśli nie masz jeszcze projektu Firebase ani aplikacji połączonej z Firebase
Krok 2. Dodaj pakiet SDK
Po skonfigurowaniu projektu Firebase i połączeniu aplikacji z Firebase (zobacz poprzedni krok), możesz teraz dodać pakiet SDK Vertex AI dla Firebase do swojej aplikacji.
Pakiet SDK Vertex AI dla Firebase na Androida (firebase-vertexai
) zapewnia
dostęp do interfejsu Vertex AI Gemini API.
w pliku konfiguracji Gradle modułu (na poziomie aplikacji);
(np. <project>/<app-module>/build.gradle.kts
), dodaj zależność dla parametru
Pakiet SDK Vertex AI dla Firebase na Androida:
Kotlin+KTX
dependencies {
// ... other androidx dependencies
// add the dependency for the Vertex AI for Firebase SDK for Android
implementation("com.google.firebase:firebase-vertexai:16.0.0-beta03")
}
Java
W przypadku języka Java musisz dodać 2 dodatkowe biblioteki.
dependencies {
// ... other androidx dependencies
// add the dependency for the Vertex AI for Firebase SDK for Android
implementation("com.google.firebase:firebase-vertexai:16.0.0-beta03")
// 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")
}
Krok 3. Zainicjuj usługę Vertex AI i model generatywny
Zanim będzie można wykonywać wywołania interfejsu API, musisz zainicjować Vertex AI i modelu generatywnego.
Kotlin+KTX
W przypadku Kotlin metody zawarte w tym pakiecie SDK są funkcjami zawieszania i muszą być wywoływane z zakresu Coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
Java
W przypadku Javy metody strumieniowego przesyłania danych w tym pakiecie SDK zwracają błądPublisher
z biblioteki strumieni reaktywnych.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Po przeczytaniu przewodnika dla początkujących dowiedz się, jak wybrać model Gemini i (opcjonalnie) lokalizacja odpowiednią do przypadku użycia i aplikacji.
Krok 4. Wywołaj interfejs Vertex AI Gemini API
Po połączeniu aplikacji z Firebase, dodaniu pakietu SDK i zainicjowaniu jej usługę Vertex AI i model generatywny, możesz już wywołać interfejs Vertex AI Gemini API.
Możesz użyć narzędzia generateContent()
, aby wygenerować tekst na podstawie prompta tekstowego
żądanie:
Kotlin+KTX
W przypadku Kotlin metody zawarte w tym pakiecie SDK są funkcjami zawieszania i muszą być wywoływane z zakresu Coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-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ą błądListenableFuture
.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-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 modelach Gemini
Dowiedz się więcej o dostępne modele do różnych zastosowań oraz ich poniższych limitów i cen.
Wypróbuj inne możliwości interfejsu Gemini API
- Więcej informacji o generowaniu tekstu z: prompty tekstowe, w tym instrukcje przesyłać odpowiedź strumieniowo.
- Generuj tekst z prompty multimodalne (w tym tekst, obrazy, pliki PDF, filmy i dźwięk).
- tworzyć rozmowy wieloetapowe (czat),
- nawiązać połączenie, korzystając z wywołania funkcji; modeli generatywnych w zewnętrznych systemach i informacjach.
Dowiedz się, jak kontrolować generowanie treści
- Omówienie projektowania promptów, w tym: sprawdzone metody, strategie i przykładowe prompty.
- Skonfiguruj parametry modelu, takie jak oraz maksymalną liczbę tokenów wyjściowych.
- Użyj ustawień bezpieczeństwa, by dostosować prawdopodobieństwo uzyskania odpowiedzi, które mogą zostać uznane za szkodliwe.
Przesyłanie opinii o swoich doświadczeniach z Vertex AI dla Firebase,