Vertex AI Gemini API

Jeśli dopiero zaczynasz korzystać z interfejsu Gemini API, Gemini Developer API jest zalecanym dostawcą interfejsu API dla deweloperów Androida. Jeśli jednak masz konkretne wymagania dotyczące lokalizacji danych lub korzystasz już ze środowiska Vertex AI lub Google Cloud, możesz użyć interfejsu Vertex AI Gemini API.

Migracja z Vertex AI w Firebase

Jeśli pierwotnie zintegrowano modele Gemini Flash i Pro za pomocą Vertex AI w Firebase, możesz przejść na Vertex AI jako dostawcę interfejsu API i dalej z niego korzystać. Szczegółowy przewodnik po migracji znajdziesz w dokumentacji Firebase.

Pierwsze kroki

Zanim zaczniesz korzystać z interfejsu Vertex AI Gemini API bezpośrednio w aplikacji, możesz eksperymentować z promptami w Vertex AI Studio.

Konfigurowanie projektu Firebase i łączenie aplikacji z Firebase

Gdy będziesz gotowy(-a) do wywoływania interfejsu Vertex AI Gemini API z poziomu aplikacji, postępuj zgodnie z instrukcjami w „Kroku 1” przewodnika wprowadzającego do Firebase AI Logic, aby skonfigurować Firebase i pakiet SDK w aplikacji.

Dodawanie zależności Gradle

Dodaj do modułu aplikacji tę zależność Gradle:

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:33.13.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")
}

Inicjowanie modelu generatywnego

Zacznij od utworzenia instancji GenerativeModel i określenia nazwy modelu:

Kotlin

val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
                        .generativeModel("gemini-2.0-flash")

Java

GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.0-flash");

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

W dokumentacji Firebase znajdziesz więcej informacji o modelach dostępnych do użycia z interfejsem Gemini Developer API. Możesz też dowiedzieć się więcej o konfigurowaniu parametrów modelu.

Generowanie tekstu

Aby wygenerować odpowiedź tekstową, wywołaj funkcję generateContent() z promptem.

Kotlin

// Note: generateContent() is a suspend function, which integrates well
// with existing Kotlin code.
scope.launch {
  val response = model.generateContent("Write a story about a magic backpack.")
}

Java

Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        [...]
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

Podobnie jak w przypadku interfejsu Gemini Developer API, możesz też przekazywać obrazy, dźwięk, filmy i pliki wraz z promptem tekstowym (patrz sekcja „Korzystanie z interfejsu Gemini Developer API w aplikacji”).

Więcej informacji o pakiecie SDK Firebase AI Logic znajdziesz w dokumentacji Firebase.