
始める前に
- ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
- ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
- 画面左上の [ラボを開始] をクリックして開始します
Use cURL to test sample prompts with the API
/ 15
Write Streamlit framework code for the user interface
/ 25
Test the application in Cloud Shell
/ 20
Modify the Dockerfile and push the Docker image to the Artifact Registry
/ 20
Deploy the application to Cloud Run and test it
/ 20
チャレンジラボでは、シナリオと一連のタスクが提供されます。手順ガイドに沿って進める形式ではなく、コース内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。
チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。
100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。
このラボは、「Gemini と Streamlit を使用した生成 AI アプリの開発」コースに登録している受講者を対象としています。準備が整ったらチャレンジを開始しましょう。
こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。
このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
あなたは数か月前から Cymbal Health で働いています。Cymbal Health はミネソタ州中東部の定評のある医療ネットワークで、医療サービスの提供方法の見直しと変革に取り組んでいます。Cymbal Health は、1 つの健康保険プランで医療と保険適用とを結びつけ、患者が手頃な価格で質の高い医療を受けられるようにしています。
さらに付加価値サービスとして、アプリ内でのヒントやアドバイスを通じて、利用者の健康的な生活とウェルネスの向上を支援することを検討しています。特に注力したい分野の一つは、利用者の栄養状態の向上です。
Cymbal Health は、テキスト、音声、画像、動画を生成するマルチモーダル モデルである Gemini の機能を活用して、利用者向けに食事に関する推奨事項を生成するアプリケーションを構築したいと考えています。
一例として、あなたのチームは AI ベースの食事管理アプリを作成しようとしています。このアプリは、利用者の料理の好み、食事制限、食物アレルギー、家にある食材や食料品店で購入できる食材に基づいてレシピを生成します。あなたの仕事は、Gemini モデル、Streamlit フレームワーク、Cloud Run を使用して開発されるこのアプリの概念実証(PoC)の構築、テスト、デプロイを行うことです。この PoC の一環として、あなたは決められた時間内にサンドボックス環境で一連のタスクを行う必要があります。
実行するタスクは次のとおりです。
chef.py
を完成させるVertex AI で食事管理アプリの作成を開始する前に、Gemini API との接続をテストする必要があります。
Google Cloud コンソールのナビゲーション メニュー()で、[Vertex AI] > [ワークベンチ] の順にクリックします。
Workbench インスタンスの JupyterLab インターフェースが新しいブラウザタブで開きます。
1. JupyterLab のブラウザタブを閉じて、Workbench のホームページに戻ります。
2. インスタンス名の横にあるチェックボックスをオンにして、[リセット] をクリックします。
3. [JupyterLab を開く] ボタンが再度有効になったら、1 分待ってから [JupyterLab を開く] をクリックします。
左側のメニューから prompt.ipynb
に変更を加え、セル 3 にプロジェクト ID とリージョンを含めます。これらの値は、ラボの手順が表示される左のパネルで確認できます。
左側のメニューから prompt.ipynb
に変更を加え、セル 5 で cURL を使って次のプロンプトを使用します(既存のプロンプトを置き換えます)。
すべてのセルを実行して結果を確認します。
prompt.ipynb
を保存します。
適切な結果が得られたら、目標を確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
まず、GitHub リポジトリのクローンを作成し、chef.py
ファイルをダウンロードします。次に、chef.py
ファイルにワインの好みに関する Streamlit フレームワーク コードを追加して、アプリケーションのユーザー インターフェースを完成させます。カスタムの Gemini プロンプト(タスク 1 のものに似ています)も追加しますが、このプロンプトには変数が含まれます。
Cloud Shell を使用し、デフォルトのディレクトリで次のコマンドを実行してリポジトリのクローンを作成します。
gemini-streamlit-cloudrun
ディレクトリに移動します。
requirements.txt ファイルで依存関係を指定します。
chef.py
ファイルをダウンロードし、編集もここで行ってください。これは、chef.py が Streamlit フレームワークにアクセスできるようにするために、また、Cloud Shell でのテスト(タスク 3)、Docker コンテナのビルド(タスク 4)、Cloud Run へのデプロイとテスト(タスク 5)を行うために必要です。次のコマンドを使用して、chef.py
ファイルをダウンロードします。
Cloud Shell エディタで chef.py ファイルを開き、コードを確認します。
[Project ID](プロジェクト ID)に
wine 変数用の Streamlit フレームワーク ラジオボタン オプションを追加します。Red、White、None(赤、白、なし)のオプションを含めます。
chef.py
ファイルを保存します。
以下の新しい Gemini プロンプトを Python コードに追加します。
chef.py
ファイルを保存します。
chef.py
に追加した Gemini プロンプト コードに問題がなければ、Cloud Shell で次のコマンドを実行して、
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
chef.py
ファイルに変更を加えた後は、必ず上記のコマンドを実行してください。これにより、更新された chef.py
ファイルがバケットに送られます。このタスクでは、Cloud Shell のターミナルを使用してアプリケーションを実行し、テストします。
まだ generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun
のパスにいることを確認します。
Python 仮想環境を設定して依存関係をインストールします。
PROJECT(プロジェクト ID)と REGION(ラボ環境で使用しているリージョン)の環境変数を設定します。
chef.py
アプリケーションを実行してテストします。
Cloud Shell でアプリケーションをテストし、設計どおりにエラーなく動作することを確認したら、目標を確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、chef.py
ファイルを使用するようにサンプルの Dockerfile
を更新し、Artifact Registry に Docker イメージを push します。
Cloud Shell エディタを使用して、chef.py
を使用するように Dockerfile を更新し、ファイルを保存します。
Cloud Shell で、次の変数を設定します。
変数 | 値 |
---|---|
AR_REPO | chef-repo |
SERVICE_NAME | chef-streamlit-app |
gcloud artifacts repositories create
コマンドと次のパラメータを使用して、Artifact Registry リポジトリを作成します。
パラメータ | 値 |
---|---|
リポジトリの名前 | $AR_REPO |
ロケーション | $REGION |
リポジトリ形式 | Docker |
gcloud builds submit
コマンドと次のパラメータを使用してビルドを送信します。
パラメータ | 値 |
---|---|
タグ | "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME" |
コマンドが完了するまで待ちます。
コマンドが完了したら、目標を確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このタスクでは、アプリケーションを(Docker アーティファクトとして)Cloud Run にデプロイし、Cloud Run サービス エンドポイントから実行されるアプリケーションをテストします。
Cloud Shell で、glcoud run deploy
コマンドと次のパラメータ値を使用して、アプリケーションを(Docker アーティファクトとして)デプロイします。
パラメータ | 値 |
---|---|
ポート | 8080 |
イメージ | "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME" |
フラグ | --allow-unauthenticated |
リージョン | REGION |
プラットフォーム | managed |
プロジェクト | PROJECT |
set-env-vars | PROJECT=$PROJECT,REGION=$REGION |
デプロイが完了するまで数分かかります。完了すると、Cloud Run サービスの URL が提供されます。ブラウザでその URL にアクセスして、デプロイした Cloud Run アプリケーションを表示できます。
提供されたリンクを使用してアプリケーションをテストします。
Cloud Run で実行されるアプリケーションをテストし、正常に実行されたら、目標を確認します。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
このチャレンジラボを完了することで、Gemini を使用して生成 AI アプリを開発するスキルと、それを AI ベースの食事管理アプリに応用するスキルを証明しました。
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2025 年 5 月 28 日
ラボの最終テスト日: 2025 年 5 月 28 日
Copyright 2025 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。
このコンテンツは現在ご利用いただけません
利用可能になりましたら、メールでお知らせいたします
ありがとうございます。
利用可能になりましたら、メールでご連絡いたします
1 回に 1 つのラボ
既存のラボをすべて終了して、このラボを開始することを確認してください