読み込んでいます...
一致する結果は見つかりませんでした。

Google Cloud Skills Boost

Google Cloud コンソールでスキルを試す


700 以上のラボとコースにアクセス

Cloud Run で Gemini API を使用してチャット アプリケーションを構築する

ラボ 1時間 30分 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
700 以上のラボとコースにアクセス

GSP1201

Google Cloud セルフペース ラボのロゴ

概要

このラボでは、Google Cloud で Cloud Run を使用して、AI 搭載のチャット アプリケーションを作成してデプロイする方法について説明します。作成するのは、Gemini 大規模言語モデル(LLM)API を活用したチャット アプリケーションです。

ウェブ アプリケーションで API を活用し、Cloud Build とアーティファクト リポジトリを使用してアプリケーション ビルドのコンテナ イメージを保存することで、Cloud Run にデプロイします。このアプリケーションは、Gemini API を使用するウェブ インターフェースの出発点として使用できます。

このラボでは、Cloud Run で実行するウェブ アプリケーションを作成します。これは、Gemini 大規模言語モデル(LLM)による API を活用するもので、ラボにデプロイされたシンプルなウェブ インターフェースを通じた API の利用を可能にします。

このアプリケーションを作成することで、Gemini のような大規模言語モデルを活用して、エンドユーザーの興味を刺激する会話ベースのインタラクションを作成し、チャット アプリケーションを通じて質問に答えたり、洞察に富んだ回答を提供したりできるウェブ アプリケーションの構築方法を理解できます。

学習内容

このラボでは、次のことを行います。

  • Cloud Build を使用し、Docker イメージを構築してアプリケーションを実行する。
  • アプリケーションを実行するための Cloud Run サービスをデプロイする。
  • Python コードを確認して、アプリケーションがチャット セッションで gemini-2.0-flash モデルをどのように使用しているかを理解する。

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 左側の [ラボの詳細] ペインには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] ペインでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] ペインでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニュー アイコンと検索フィールド

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

  2. ウィンドウで次の操作を行います。

    • Cloud Shell 情報ウィンドウで操作を進めます。
    • Cloud Shell が認証情報を使用して Google Cloud API を呼び出すことを承認します。

接続した時点で認証が完了しており、プロジェクトに各自の Project_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

出力:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。

タスク 1. 環境のセットアップ

Cloud Run アプリケーションをデプロイするには、Cloud Storage バケットからソースをダウンロードします。

  1. Cloud Shell で次のコマンドを入力します。
gsutil cp -R gs://spls/gsp1201/chat-flask-cloudrun .
  1. 次に、プロジェクト フォルダに移動します。
cd chat-flask-cloudrun
  1. 後のコマンドで使用するために、リージョンとプロジェクトの環境変数を設定します。
export PROJECT_ID={{{ project_0.project_id | "Filled in at lab startup." }}} export REGION={{{ project_0.startup_script.region | "Filled in at lab startup." }}}

タスク 2. Docker イメージをビルドする

次に、アプリケーションの Docker イメージをビルドして、Artifact Registry に push します。コンテナ イメージがビルドされて保存されたら、そのイメージを参照してアプリケーションを Cloud Run にデプロイします。

  1. 後のコマンドで使用するために、環境変数を設定します。
export AR_REPO='chat-app-repo' export SERVICE_NAME='chat-flask-app'
  1. 次のコマンドを実行してアーティファクト リポジトリを作成します。
gcloud artifacts repositories create "$AR_REPO" --location="$REGION" --repository-format=Docker
  1. Docker の認証を構成し、コンテナ イメージのビルドジョブを Cloud Build に送信します。
gcloud builds submit --tag "$REGION-docker.pkg.dev/$PROJECT_ID/$AR_REPO/$SERVICE_NAME"
  1. イメージが Artifact Registry に push されたことを確認するには、Artifact Registry ページに移動します。
    • Google Cloud コンソールのタイトルバーにある [検索] フィールドに「Artifact Registry」と入力し、検索結果から [Artifact Registry] をクリックします。
    • chat-app-repo が利用可能であることを確認します。
注: 以下のチェックを実行して、Docker の認証が必要になった場合は、Cloud Shell で次のコマンドを実行してみてください。

gcloud auth configure-docker us-central1-docker.pkg.dev

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 Docker イメージをビルドする

タスク 3. アプリケーションを Cloud Run にデプロイする

アプリケーションがダウンロードされ、Cloud Build でビルドされたら、次に、Cloud Run にデプロイしてテストします。

  1. Cloud Shell で、次のコマンドを実行します。
gcloud run deploy "$SERVICE_NAME" --port=8080 --image="$REGION-docker.pkg.dev/$PROJECT_ID/$AR_REPO/$SERVICE_NAME:latest" --allow-unauthenticated --region=$REGION --platform=managed --project=$PROJECT_ID --set-env-vars=GCP_PROJECT=$PROJECT_ID,GCP_REGION=$REGION 注: このステップは数分かかることがあります。
  1. アプリケーションを起動するには、最後のコマンドの出力に表示されているサービス URL をクリックします。出力は以下のように表示されます。
Deploying container to Cloud Run service [chat-flask-app] in project [qwiklabs-gcp-03-fda25c1691e3] region [us-central1] OK Deploying new service... Done. OK Creating Revision... OK Routing traffic... OK Setting IAM Policy... Done. Service [chat-flask-app] revision [chat-flask-app-00001-x9r] has been deployed and is serving 100 percent of traffic. Service URL: https://chat-flask-app-308034796843.us-central1.run.app
  1. 入力テキスト ボックスに次のクエリを入力し、[送信] をクリックします。
What is Google Cloud Platform?

gemini-2.0-flash API によって生成されたレスポンスが、プロンプト入力の下の出力テキスト ボックスに表示されます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 アプリケーションを Cloud Run にデプロイする

タスク 4. Python コードを調べる

アプリケーションによる Gemini Chat Bison API の利用方法について理解を深めるために、アプリで使用されているコードを簡単に確認します。

  1. Cloud Shell で [エディタを開く] をクリックすると、Cloud Shell エディタが開き、コードを参照できます。

  2. [Explore] ペインで、chat-flask-cloudrun フォルダを開き、app.py を選択してコードの確認を開始します。

  3. 以下の Python メソッドに注目してください。

  • create_session: このメソッドは、chat_model = GenerativeModel("gemini-2.0-flash") モデルを使用して Vertex AI で新しいセッションを作成します。これは、/gemini ルートで使用されます。以下で詳しく確認しますが、これによって新しいチャット セッションが確立されます。
def create_session(): chat_model = GenerativeModel("gemini-2.0-flash") chat = chat_model.start_chat() return chat
  • response: このメソッドはレスポンスを取得します。
def response(chat, message): result = chat.send_message(message) return result.text
  • indexgemini_chat: index メソッドと gemini_chat メソッドは、アプリケーションの API のルートを定義します。index メソッドは、ユーザーがアプリケーションを読み込むときに index.html ページを読み込み、gemini_chat メソッドは index.html ページから収集したユーザーのプロンプトを API に送信し、結果を JSON 形式で返します。
@app.route('/') def index(): ### return render_template('index.html') @app.route('/gemini', methods=['GET', 'POST']) def gemini_chat(): user_input = "" if request.method == 'GET': user_input = request.args.get('user_input') else: user_input = request.form['user_input'] logger.log(f"Starting chat session...") chat_model = create_session() logger.log(f"Chat Session created") content = response(chat_model,user_input) return jsonify(content=content)

index.html ファイルには、ユーザーが [送信] をクリックしたときにフォームから結果を読み取り、Gemini API 呼び出しのレスポンスで UI を更新するインライン JavaScript が含まれています。

お疲れさまでした

これでラボは完了です。このラボでは、Cloud Build と Artifact Registry を使用して、シンプルなウェブ アプリケーションを構築、デプロイする方法を学習しました。アプリケーションは Cloud Run にデプロイされ、Gemini を利用してエンドユーザーのクエリに応答します。これにより、エンドユーザーがウェブ UI を通じて質問し、回答を受け取ることができるチャットベースのアプリケーションが構築されます。

次のステップ

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 3 月 31 日

ラボの最終テスト日: 2025 年 3 月 13 日

Copyright 2025 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。