SociaLite サンプルアプリに生成 AI の回答を追加する

SociaLite チャットボットの動作を示すアニメーション スクリーンショット

SociaLite サンプルアプリは、ソーシャル ネットワーク アプリやコミュニケーション アプリで一般的に使用される機能を実装するために Android プラットフォーム API を使用する方法を示しています。Firebase AI Logic SDK を使用して Gemini API を統合し、チャットボット機能を独自の Android アプリに実装する方法をデモします。

このサンプルコードでは、高速で費用対効果の高い Gemini Flash を使用しています。Gemini モデルの詳細をご覧ください。SociaLite デモに AI 駆動型 chatbot を実装するために、Gemini API のシステム指示機能を使用して、モデルの動作を変更しました。この例では、「このチャットの会話に、友好的な猫のように返信してください」というプロンプトを使用します。この Gemini を搭載したバージョンの SociaLite では、モデルのマルチモーダル機能も使用して、chatbot が画像に反応できるようにしています。

Gemini API を実装する

チャットボットの実装は、主に ChatRepository クラスにあります。GenerativeModel クラスを使用すると、Gemini API を操作できます。このクラスは次のようにインスタンス化されます。

val generativeModel = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
  // Set the model name to the latest Gemini model.
  modelName = "gemini-3.5-flash-lite",
  // 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 AI Logic スタートガイドに沿って Firebase プロジェクトを設定し、アプリが Firebase AI Logic SDK を使用して Gemini Developer API にリクエストを送信できるようにします。

  3. Firebase の設定の一環として、google-services.json を独自のものに置き換え、app 構成を実行します。

  4. アプリを同期して実行します。

  5. SociaLite アプリで、[設定] をタップし、[AI チャットボット] をタップして、ボタンラベルが [AI チャットボット: 有効] になるようにします。

これでチャットを開始できます。

参考情報

Firebase AI Logic SDK の詳細をご覧ください。