Vertex AI Gemini API

Jeśli nie znasz jeszcze interfejsu Gemini API, Gemini Developer API to zalecany interfejs API dla deweloperów aplikacji na Androida. Jeśli jednak masz określone wymagania dotyczące lokalizacji danych lub jesteś już wbudowany w środowisko Vertex AI lub Google Cloud, możesz użyć interfejsu Gemini API Vertex AI.

Migracja z Vertex AI w Firebase

Jeśli modele Gemini Flash i Pro zostały pierwotnie zintegrowane z Vertex AI w Firebase, możesz je przenieść i nadal używać Vertex AI jako dostawcy interfejsu API. Szczegółowy przewodnik po migracji znajdziesz w dokumentacji Firebase.

Pierwsze kroki

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

Konfigurowanie projektu Firebase i łączenie z nim aplikacji

Gdy będziesz gotowy do wywołania interfejsu API Vertex AI Gemini z aplikacji, postępuj zgodnie z instrukcjami w części „Krok 1” w przewodniku Firebase AI Logic.

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")
}

Inicjalizacja modelu generatywnego

Zacznij od utworzenia instancji GenerativeModel i podania 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 możesz dowiedzieć się więcej o dostępnych modelach 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 generateContent() z promptem.

Kotlin

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, pliki audio, filmy i inne pliki za pomocą promptu tekstowego (patrz „Interakcja z interfejsem Gemini Developer API z aplikacji”).

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