本快速入门介绍了如何使用您选择的 SDK 开始使用 Gemini API。
前提条件
本快速入门假定您熟悉如何使用 Android Studio 开发 Android 应用。
如需完成本快速入门,请确保您的开发环境和 Android 应用满足以下要求:
- Android Studio(最新版本)
- 您的 Android 应用必须以 API 级别 21 或更高级别为目标平台。
考虑在设备端访问 Gemini
借助本教程中介绍的 Android 版客户端 SDK,您可以访问在 Google 服务器上运行的 Gemini 模型。对于涉及处理敏感数据、离线可用性或为常用用户流节省费用的用例,您可能需要考虑访问在设备端运行的 Gemini Nano。如需了解详情,请参阅 Android(设备端)页面。
安装 Gemini API SDK
在模块(应用级)Gradle 配置文件(例如
<project>/<app-module>/build.gradle.kts
)中,添加 Google AI SDK for Android 的依赖项:Kotlin
dependencies { // add the dependency for the Google AI client SDK for Android implementation("com.google.ai.client.generativeai:generativeai:0.7.0") }
Java
对于 Java,您需要添加两个额外的库。
dependencies { // add the dependency for the Google AI client SDK for Android implementation("com.google.ai.client.generativeai:generativeai:0.7.0") // 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") }
将您的 Android 项目与 Gradle 文件同步。
设置身份验证
如本部分所述,向 Gemini API 进行身份验证最简单的方法是配置 API 密钥。如果您需要更严格的访问权限控制,可以改为使用 OAuth。
如果您还没有 API 密钥,请在 Google AI Studio 中创建一个。
然后,配置密钥。
强烈建议不要将 API 密钥签入版本控制系统。请改为将 API 密钥存储在 local.properties
文件中(该文件位于项目的根目录中,但从版本控制中排除),然后使用 Android 版 Secrets Gradle 插件以 build 配置变量的形式读取 API 密钥。
Kotlin
// Access your API key as a Build Configuration variable
val apiKey = BuildConfig.apiKey
Java
// Access your API key as a Build Configuration variable
String apiKey = BuildConfig.apiKey;
如果您想查看 Secrets Gradle 插件的实现,可以查看此 SDK 的示例应用,或使用 Android Studio Iguana 的最新预览版,该模板具有 Gemini API 入门版模板(包含 local.properties
文件以帮助您入门)。
导入库
导入 Google 生成式 AI 库。
Kotlin
// other imports...
import com.google.ai.client.generativeai.GenerativeModel
Java
// other imports...
import com.google.ai.client.generativeai.GenerativeModel;
import com.google.ai.client.generativeai.java.GenerativeModelFutures;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.type.GenerateContentResponse;
发出您的首个请求
使用 generateContent
方法生成文本。
Kotlin
generateContent()
是一个挂起函数,需要从协程作用域中调用。如果您不熟悉协程,请参阅 Android 上的 Kotlin 协程。
val generativeModel =
GenerativeModel(
// Specify a Gemini model appropriate for your use case
modelName = "gemini-1.5-flash",
// Access your API key as a Build Configuration variable (see "Set up your API key" above)
apiKey = BuildConfig.apiKey)
val prompt = "Write a story about a magic backpack."
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
generateContent()
会返回 ListenableFuture
。如果您不熟悉此 API,请参阅 Android 文档中有关使用 ListenableFuture
的部分。
// Specify a Gemini model appropriate for your use case
GenerativeModel gm =
new GenerativeModel(
/* modelName */ "gemini-1.5-flash",
// Access your API key as a Build Configuration variable (see "Set up your API key"
// above)
/* apiKey */ BuildConfig.apiKey);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Content content =
new Content.Builder().addText("Write a story about a magic backpack.").build();
// For illustrative purposes only. You should use an executor that fits your needs.
Executor executor = Executors.newSingleThreadExecutor();
ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
Futures.addCallback(
response,
new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
},
executor);
后续步骤
现在,您已设置好向 Gemini API 发出请求,接下来可以使用 Gemini API 的全部功能来构建应用和工作流。如需开始使用 Gemini API 功能,请参阅以下指南:
如需详细了解 Gemini API 方法和请求参数,请参阅 API 参考文档中的指南。