API Gemini da Vertex AI

Se você não conhece a API Gemini, a API Gemini Developer é o provedor de API recomendado para desenvolvedores Android. No entanto, se você tiver requisitos de localização de dados específicos ou já estiver integrado ao ambiente da Vertex AI ou do Google Cloud, use a API Vertex AI Gemini.

Migração da Vertex AI no Firebase

Se você integrou os modelos Gemini Flash e Pro usando a Vertex AI no Firebase, é possível migrar e continuar usando a Vertex AI como provedor de API. Leia a documentação do Firebase para conferir um guia de migração detalhado.

Primeiros passos

Antes de interagir com a API Vertex AI Gemini diretamente no seu app, teste os comandos no Vertex AI Studio.

Configurar um projeto do Firebase e conectar seu app a ele

Quando estiver tudo pronto para chamar a API Gemini da Vertex AI no seu app, siga as instruções na "Etapa 1" do guia de início da lógica da Firebase AI para configurar o Firebase e o SDK no seu app.

Adicionar a dependência do Gradle

Adicione a seguinte dependência do Gradle ao módulo do app:

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

Inicializar o modelo generativo

Comece instanciando um GenerativeModel e especifique o nome do modelo:

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);

Na documentação do Firebase, você pode saber mais sobre os modelos disponíveis para uso com a API Gemini Developer. Você também pode aprender sobre como configurar parâmetros de modelo.

Gerar texto

Para gerar uma resposta de texto, chame generateContent() com o comando.

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);

Assim como na API Gemini Developer, você também pode transmitir imagens, áudio, vídeo e arquivos com o comando de texto (consulte "Interagir com a API Gemini Developer no seu app").

Para saber mais sobre o SDK de lógica de IA do Firebase, leia a documentação do Firebase.