0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【初心者向け】Google Chat × Vertex AIで始めるLLMチャットボット開発入門

Last updated at Posted at 2025-06-07

Google ChatとVertex AIを組み合わせて、簡単にLLMチャットボットを構築する方法を紹介します。
本記事を読むことで、GCPの各種サービスを活用したチャットボットの開発手順を理解し、実際に動作するデモを作成できるようになります。

image.png

アーキテクチャ概要

こちらの Google Workspace ドキュメントにあるアーキテクチャ図をそのまま参考にさせて頂きました。
image.png

環境構築手順

API の有効化

事前に以下のAPIを有効化しておきます。

  • Cloud Build API(Cloud Run 関数を使用するために必要)
  • Cloud Run Admin API
  • Firestore API
  • Vertex AI API

GCP サービスアカウント作成

  • 以下のロールを付与した「vertexai-demo」サービスアカウント作成
    • Cloud Datastore ユーザー
    • Vertex AI ユーザー
      スクリーンショット 2024-05-26 111133.png

Firestore データベースを作成

メニューの [Firestore] から [FIRESTORE データベースを作成] を選択します。

  • [データベース ID] は 「(default)」 のまま
  • [Standard Edition] を選択
  • [構成オプション] は 「Firestore ネイティブ」 のまま
  • [場所] は 「リージョン」 で 「asia-northeast1」 を指定

スクリーンショット_2025-05-05 join2.png

Firestore には、ネイティブモードとDatastoreモードの2つの動作モードがあります。
Datastore モードは、古いGoogle Datastoreと互換性を保つためのモードであり、Firestore API は使用できません

Cloud Run 関数を作成してデプロイ

  • メニューから [Cloud Run Functions] を選択します
  • こちらの GitHub からコードを zip ファイルとしてダウンロードします
  • ダウンロードした ZIP ファイルを展開します
  • Google Cloud コンソールで、[Cloud Run functions] ページに移動します
  • [関数を作成] をクリックします
    • [インライン エディタで関数を作成する] を選択します
    • [サービスの名前] に[vertexai-chat-demo] と入力します
    • [リージョン] で [asia-northeast1] を選択します
    • [ランタイム] で [Python 3.12] を選択します
    • [認証] で、[Allow unauthenticated invocations] (未認証の呼び出しを許可) を選択します
    • [セキュリティ] で先述で作成したサービスアカウント(vertexai-demo)を設定します
    • [作成] をクリックし、Cloud Run がサービスを作成するのを待ちます。コンソールの [ソース] タブにリダイレクトされ、関数のソースコードが表示されます
    • [エントリ ポイント] で、 [hello_chat] と入力します
    • main.py と requirements.txt をダウンロードしたコードに差し替えます
    • [保存して再デプロイ] をクリックします
    • デプロイが完了すると、「URL」というテキストの横にコンテナの URL が表示されます。[クリップボードにコピー] をクリックして URL をコピーします。これは、次のセクションで Chat アプリを構成するときに必要になります

Google Chat API 設定

Google Chat API の有効化

  • メニューから [APIとサービス] を選択します
  • 画面上部にある [APIとサービスを有効にする] をクリックします
  • 検索窓に [google chat] と入力し、[Google Chat API] を選択します
  • [有効にする] をクリックします

スクリーンショット 2024-05-26 104717.png

  • [Google Chat API] > [構成] をクリックします
  • [アプリ名] を入力します
  • [アバターの URL] に [https://developers.google.com/chat/images/quickstart-app-avatar.png] を入力します
  • [説明] を入力します
  • [インタラクティブ機能を有効にする] をオンにします
  • [機能] で、[1:1 のメッセージを受信する] と [スペースとグループの会話に参加する] を選択します
  • [接続設定] で [HTTP エンドポイント URL] を選択します
  • [HTTP エンドポイント URL] に、Cloud Run 関数のデプロイからコピーしたトリガー URL を貼り付けます
  • [公開設定] で [このチャットアプリを ・・・ 使用できるようにします] を選択し、Google Chat を使用するメンバーのメールアドレスを入力します
  • [ログ] で [Logging にエラーをログに記録] を選択します
  • [保存] をクリックします

image.png

image.png

スクリーンショット 2025-05-26 23.37.15.png

スクリーンショット 2025-05-26 23.41.12.png

デモの実行

チャットボットの準備

  • Google Workspace アカウントを使用して Google Chat を開きます
  • [新しいチャット] をクリックします。
  • [1 人以上を追加] フィールドに、Chat アプリの名前を入力します。
  • 検索結果から Chat アプリを選択するとダイレクト メッセージが開きます。
    スクリーンショット 2025-05-27 chat.png

  • [モデルを選択] (もしくは [はじめから])と入力して enter を押します
  • モデルの選択ボタンが出てくるので、使用したいモデルのボタンをクリックします

image.png

プロンプトの入力

  • プロンプトを入力して enter を押すと回答が返ってきます

image.png

参考)
https://developers.google.com/workspace/chat/tutorial-project-management?hl=ja
https://developers.google.com/workspace/chat/quickstart/apps-script-app?hl=ja
https://blog.g-gen.co.jp/entry/vertex-ai-search-with-gemini

まとめと今後の展望

本記事では、Google Chat アプリと Cloud Functions を連携させて、Vertex AI の LLM を活用した簡易チャットボットを構築する手順を紹介しました。
Google Workspace アカウントを活用することで、社内利用を想定したプロトタイプを素早く構築できる点も、本構成の大きな利点です。

今後は、以下のような拡張・応用も考えられます。

  • セキュリティ強化: ユーザーごとの認証情報を活用し、発言者のロールによって応答を制御する。
  • 応答精度の向上: Vertex AI の出力に対してルールベースの後処理や文脈保持の工夫を加える。
  • Google Workspace 連携: Gmail や Google Calendar API と連携させ、業務効率化チャットボットとして発展させる。
  • ログ保存と分析: Firestore や BigQuery を使って会話ログを蓄積し、UX改善やFAQ自動抽出に活用する。

PoC段階ではシンプルな構成から始め、徐々にスケーラブルなマイクロサービスアーキテクチャへの発展も可能です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?