如果您刚开始接触 Gemini API,建议 Android 开发者使用 Gemini Developer API 作为API 提供方。不过,如果您有特定的数据位置要求,或者您已嵌入到 Vertex AI 或 Google Cloud 环境中,则可以使用 Vertex AI Gemini API。
从 Vertex AI in Firebase 迁移
如果您最初在 Firebase 中使用 Vertex AI 集成了 Gemini Flash 和 Pro 模型,则可以迁移到 Vertex AI,并继续将其用作 API 提供方。如需查看详细的迁移指南,请参阅 Firebase 文档。
使用入门
在直接从应用与 Vertex AI Gemini API 交互之前,您可以在 Vertex AI Studio 中试用提示。
设置 Firebase 项目并将您的应用连接到 Firebase
准备好从应用调用 Vertex AI Gemini API 后,请按照 Firebase AI Logic 入门指南中的“第 1 步”中的说明在应用中设置 Firebase 和 SDK。
添加 Gradle 依赖项
将以下 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")
}
初始化生成式模型
首先,实例化 GenerativeModel
并指定模型名称:
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);
在 Firebase 文档中,您可以详细了解可与 Gemini Developer API 搭配使用的可用模型。您还可以了解如何配置模型参数。
生成文本
如需生成文本回答,请使用您的问题调用 generateContent()
。
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);
与 Gemini Developer API 类似,您还可以通过文本提示传递图片、音频、视频和文件(请参阅“通过应用与 Gemini Developer API 交互”)。
如需详细了解 Firebase AI Logic SDK,请参阅 Firebase 文档。