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.