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 específicos de local de dados ou já estiver incorporado ao ambiente da Vertex AI ou do Google Cloud, poderá usar a API Gemini da Vertex AI.

Primeiros passos

Antes de interagir com a API Gemini da Vertex AI diretamente do seu app, você pode testar comandos no Vertex AI Studio.

Configurar um projeto do Firebase e conectar seu app a ele

Quando estiver tudo pronto para chamar a API do seu app, siga as instruções na "Etapa 1" do guia de primeiros passos do Firebase AI Logic para configurar o Firebase e ativar as APIs e os serviços necessários.

Adicionar as dependências do Gradle

Adicione as seguintes dependências do Gradle ao módulo do app:

Kotlin

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:34.15.0"))

  // Add the dependencies for the Firebase AI Logic and App Check libraries
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
  implementation("com.google.firebase:firebase-appcheck-debug")
}

Java

dependencies {
  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:34.15.0"))

  // Add the dependencies for the Firebase AI Logic and App Check libraries
  // When using the BoM, you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
  implementation("com.google.firebase:firebase-appcheck-debug")

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

Configurar o provedor de depuração do App Check para desenvolvimento local

A partir do início de julho de 2026, como parte do fluxo de trabalho de configuração guiada do AI Logic no console do Firebase, o Firebase App Check será aplicado automaticamente para proteger a API Gemini. Para o desenvolvimento local, é necessário configurar o provedor de depuração do App Check para ignorar a atestação, mantendo a aplicação do App Check.

  1. No seu build de depuração, configure o App Check para usar a fábrica do provedor de depuração:

    Kotlin

    Firebase.initialize(context = this)
    Firebase.appCheck.installAppCheckProviderFactory(
        DebugAppCheckProviderFactory.getInstance(),
    )
    

    Java

    FirebaseApp.initializeApp(/*context=*/ this);
    FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
    firebaseAppCheck.installAppCheckProviderFactory(
            DebugAppCheckProviderFactory.getInstance());
    
  2. Receba o token de depuração:

    1. Execute o app no emulador ou no dispositivo de teste.

    2. Procure o token de depuração do App Check nos registros. Exemplo:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. Copie o token (por exemplo, 123a4567-b89c-12d3-e456-789012345678).

  3. Registre o token de depuração no App Check:

    1. No console do Firebase, acesse a guia Segurança > App Check > Apps.

    2. Encontre seu app, clique no menu flutuante () e selecione Gerenciar tokens de depuração.

    3. Siga as instruções na tela para registrar o token de depuração.

Para mais detalhes sobre o provedor de depuração, incluindo como receber um novo token de depuração, consulte a documentação oficial do App Check.

Inicializar o modelo generativo

Comece instanciando um GenerativeModel e especificando o nome do modelo:

Kotlin

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

Java

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

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

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

Gerar texto

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

Kotlin

suspend fun generateText(model: GenerativeModel) {
    // Note: generateContent() is a suspend function, which integrates well
    // with existing Kotlin code.
    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. Para mais detalhes, consulte Interagir com a API Gemini Developer no seu app.

Para saber mais sobre o SDK do Firebase AI Logic, leia a documentação do Firebase.