API de Gemini de Vertex AI

Si es la primera vez que usas la API de Gemini, la API para desarrolladores de Gemini es el proveedor de API recomendado para desarrolladores de Android. Sin embargo, si tienes requisitos de ubicación de datos específicos o ya estás incorporado en el entorno de Vertex AI o Google Cloud, puedes usar la API de Gemini de Vertex AI.

Migración desde Vertex AI en Firebase

Si integraste originalmente los modelos Gemini Flash y Pro con Vertex AI en Firebase, puedes migrar a Vertex AI y seguir usándolo como proveedor de API. Lee la documentación de Firebase para obtener una guía de migración detallada.

Cómo comenzar

Antes de interactuar con la API de Vertex AI Gemini directamente desde tu app, puedes experimentar con instrucciones en Vertex AI Studio.

Configura un proyecto de Firebase y conecta tu app a Firebase

Cuando tengas todo listo para llamar a la API de Vertex AI Gemini desde tu app, sigue las instrucciones del "Paso 1" de la guía de introducción a la lógica de Firebase AI para configurar Firebase y el SDK en tu app.

Agrega la dependencia de Gradle

Agrega la siguiente dependencia de Gradle al módulo de tu 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")
}

Inicializa el modelo generativo

Para comenzar, crea una instancia de GenerativeModel y especifica el nombre del 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);

En la documentación de Firebase, puedes obtener más información sobre los modelos disponibles para usar con la API para desarrolladores de Gemini. También puedes obtener información para configurar los parámetros del modelo.

Generar texto

Para generar una respuesta de texto, llama a generateContent() con tu instrucción.

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

Al igual que con la API de Gemini Developer, también puedes pasar imágenes, audio, video y archivos con tu instrucción de texto (consulta "Interactúa con la API de Gemini Developer desde tu app").

Para obtener más información sobre el SDK de Firebase AI Logic, lee la documentación de Firebase.