将生成式 AI 响应添加到 SociaLite 示例应用

Animated screenshot showing the SociaLite chatbot in
action

SociaLite 示例应用演示了如何使用 Android 平台 API 来实现社交网络和通信应用中常用功能。我们已使用 Firebase AI Logic SDK 集成 Gemini API,以演示如何在您自己的 Android 应用中实现聊天机器人功能。

此示例代码使用 Gemini Flash,它速度快且经济高效。详细了解 Gemini 模型。为了在 SociaLite 演示中实现 AI 驱动的聊天机器人,我们使用了 Gemini API 的 系统指令 功能来修改模型的行为。在这种情况下,我们使用的提示是“请像一只友善的猫一样回复此聊天对话”。这个融入了 Gemini 的 SociaLite 版本还利用了模型的多模态能力,让聊天机器人能够对图像做出反应。

实现 Gemini API

聊天机器人主要在 ChatRepository 类中实现。GenerativeModel 类可让您与 Gemini API 交互,其实例化方式如下

val generativeModel = GenerativeModel(
  // Set the model name to the latest Gemini model.
  modelName = "gemini-2.0-flash-lite-001",
  // Set a system instruction to set the behavior of the model.
  systemInstruction = content {
    text("Please respond to this chat conversation like a friendly cat.")
  },
)

在协程作用域中,通过将 pastMessages 传递给 startChat() 来发起聊天,以确保模型可以访问对话历史记录。这使您的聊天机器人能够保持上下文并生成基于先前对话的连贯响应。

val pastMessages = getMessageHistory(chatId)
val chat = generativeModel.startChat(
  history = pastMessages,
)

使用 sendMessage() 方法向模型传递消息。

测试 AI 聊天机器人

您可以按照以下步骤自行测试

  1. 查看 SociaLite 示例应用的代码并在 Android Studio 中打开。
  2. 设置一个 Firebase 项目,然后按照这些步骤将您的应用连接到 Gemini Developer API
  3. 将 google-services.json 替换为您自己的文件,然后运行 app 配置,
  4. 同步并运行您的应用。
  5. 在 SociaLite 应用中,点按设置然后点按AI 聊天机器人,使按钮标签显示“AI 聊天机器人:已启用”。

您现在可以开始聊天了!

更多资源

详细了解 Firebase AI Logic SDK.