正在加载…
未找到任何结果。

Google Cloud Skills Boost

在 Google Cloud 控制台中运用您的技能


访问 700 多个实验和课程

在 Cloud Run 上部署已集成 Gemini Pro 的 Streamlit 应用

实验 1 小时 universal_currency_alt 5 个积分 show_chart 中级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

GSP1229

Google Cloud 自学实验的徽标

概览

Gemini 是 Google DeepMind 开发的一系列生成式 AI 模型,专为多模态应用场景而设计。通过 Gemini API,您可以使用 Gemini Pro Vision 和 Gemini Pro 模型。在本实验中,您将了解如何将 Vertex AI Gemini API 与应用集成,以及如何在 Google Cloud Run 上构建和部署所开发的示例应用。

Vertex AI Gemini API

Vertex AI Gemini API 提供了与多种 Gemini 模型交互的统一界面。Gemini API 目前支持以下两种模型:

  1. Gemini Pro 模型 (gemini-pro):旨在处理自然语言任务、多轮文本和代码聊天以及代码生成。
  2. Gemini Pro Vision 模型 (gemini-pro-vision):为多模态提示提供支持。您可以在提示请求中包含文本、图片和视频,并获取文本或代码回答。

您可通过以下方式与 Gemini API 进行交互:

  • 使用 Vertex AI Studio 进行快速测试以及生成命令
  • 使用 cURL 命令
  • 使用 Vertex AI SDK

本实验重点介绍如何将 Gemini Pro 模型与 Streamlit 应用集成,以及如何将该应用部署到 Google Cloud Run 上。

如需了解详情,请参阅 Vertex AI 上的生成式 AI 文档。

目标

在本实验中,您将学习如何完成以下操作:

  • 将 Vertex AI Gemini API 与应用集成
  • 在 Google Cloud Run 上构建和部署所开发的示例应用
  • 使用 Streamlit 框架构建 Cloud Run 应用

设置和要求

点击“开始实验”按钮前的注意事项

请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。

此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。

为完成此实验,您需要:

  • 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
注意:请使用无痕模式(推荐)或无痕浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。
  • 完成实验的时间 - 请注意,实验开始后无法暂停。
注意:请仅使用学生账号完成本实验。如果您使用其他 Google Cloud 账号,则可能会向该账号收取费用。

如何开始实验并登录 Google Cloud 控制台

  1. 点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。左侧是“实验详细信息”窗格,其中包含以下各项:

    • “打开 Google Cloud 控制台”按钮
    • 剩余时间
    • 进行该实验时必须使用的临时凭据
    • 帮助您逐步完成本实验所需的其他信息(如果需要)
  2. 点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。

    该实验会启动资源并打开另一个标签页,显示“登录”页面。

    提示:将这些标签页安排在不同的窗口中,并排显示。

    注意:如果您看见选择账号对话框,请点击使用其他账号
  3. 如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。

    {{{user_0.username | "<用户名>"}}}

    您也可以在“实验详细信息”窗格中找到“用户名”。

  4. 点击下一步

  5. 复制下面的密码,然后将其粘贴到欢迎对话框中。

    {{{user_0.password | "<密码>"}}}

    您也可以在“实验详细信息”窗格中找到“密码”。

  6. 点击下一步

    重要提示:您必须使用实验提供的凭据。请勿使用您的 Google Cloud 账号凭据。 注意:在本实验中使用您自己的 Google Cloud 账号可能会产生额外费用。
  7. 继续在后续页面中点击以完成相应操作:

    • 接受条款及条件。
    • 由于这是临时账号,请勿添加账号恢复选项或双重验证。
    • 请勿注册免费试用。

片刻之后,系统会在此标签页中打开 Google Cloud 控制台。

注意:如需访问 Google Cloud 产品和服务,请点击导航菜单,或在搜索字段中输入服务或产品的名称。 “导航菜单”图标和“搜索”字段

任务 1. 在本地运行应用

在本部分中,您将在本地使用 Cloud Shell 运行 Streamlit 应用。

克隆代码库

  1. 点击 Cloud 控制台右上角的 Cloud Shell 图标,打开一个新的 Cloud Shell 终端。

  2. 运行下面的命令,先克隆代码库,然后前往 Cloud Shell 中的 gemini-streamlit-cloudrun 目录。

git clone https://github.com/GoogleCloudPlatform/generative-ai.git cd generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun

若要运行 Streamlit 应用,您需要执行一些额外的步骤。

运行应用

  1. 设置 Python 虚拟环境并安装依赖项:
python3 -m venv gemini-streamlit source gemini-streamlit/bin/activate pip install -r requirements.txt
  1. 您的应用需要访问两个环境变量:
  • GCP_PROJECT:这是 Google Cloud 项目 ID。
  • GCP_REGION:这是您部署 Cloud Run 应用的区域,例如 us-central1

这些变量是必需的,因为 Vertex AI 初始化需要用到 Google Cloud 项目 ID 和区域信息。app.py 函数对应的具体代码行如下所示:vertexai.init(project=PROJECT_ID, location=LOCATION)

在 Cloud Shell 中,执行以下命令:

GCP_PROJECT='{{{ project_0.project_id | Project ID}}}' GCP_REGION='{{{ project_0.default_region | Region }}}'
  1. 若要在本地运行应用,请执行以下命令。
streamlit run app.py \ --browser.serverAddress=localhost \ --server.enableCORS=false \ --server.enableXsrfProtection=false \ --server.port 8080

输出:

正在收集使用情况统计信息。若要停用此功能,请将 browser.gatherUsageStats 设置为“false”。 现在,您可以在浏览器中查看自己的 Streamlit 应用。 网址:http://localhost:8080
  1. 该应用即会启动,并向您提供一个用于访问该应用的网址。点击该链接即可在浏览器中查看此应用,或者您也可以使用 Cloud Shell 的网页预览功能启动预览页面。

  2. 调整故事生成参数,然后点击 Generate my story(生成我的故事)。

  3. 回到 Cloud Shell,授权应用访问 Gemini API。为应用提供授权后,您就可以返回应用查看收到的响应。

注意:应用将提示 Vertex AI Gemini API 并显示响应。为了使其正常运作,在选择 Generate my story(生成我的故事)后,您需要返回 Cloud Shell,授权应用访问 Gemini API。

Streamlit 应用页面

  1. 测试完应用后,您可以在 Cloud Shell 中输入 Ctrl + C 来停止应用运行。

任务 2. 构建应用并将其部署到 Cloud Run

在本部分中,您将在 Cloud Run 中部署 Streamlit 应用。

现在,您需要为应用构建 Docker 映像,并将其推送到 Artifact Registry。为此,您需要设置一个指向 Artifact Registry 名称的环境变量。以下命令将会为您创建此 Artifact Registry 代码库。

  1. 在 Cloud Shell 中,执行以下命令:
AR_REPO='gemini-repo' SERVICE_NAME='gemini-streamlit-app' gcloud artifacts repositories create "$AR_REPO" --location="$GCP_REGION" --repository-format=Docker gcloud builds submit --tag "$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME"

输出:

DONE -------------------------------------------------------------------------------- ID CREATE_TIME DURATION SOURCE IMAGES STATUS a601ffd1-c282-43d2-942c-53cc13f43bf2 2023-12-18T11:37:30+00:00 2M29S gs://qwiklabs-gcp-00-eb090e9513e8_cloudbuild/source/1702899440.87287-549e1a0cc5644b3c9535ff57f4a63d02.tgz us-central1-docker.pkg.dev/qwiklabs-gcp-00-eb090e9513e8/gemini-repo/gemini-streamlit-app (+1 more) SUCCESS
  1. 最后一步是使用我们在上一步中构建并推送到 Artifact Registry 的映像,在 Cloud Run 中部署服务。
gcloud run deploy "$SERVICE_NAME" \ --port=8080 \ --image="$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME" \ --allow-unauthenticated \ --region=$GCP_REGION \ --platform=managed \ --project=$GCP_PROJECT \ --set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION

成功部署后,您将获得一个用于访问 Cloud Run 服务的网址。您可以在浏览器中访问该网址,查看刚刚部署的 Cloud Run 应用。

输出:

⠼ Deploying new service... Done. ✓ Deploying new service... Done. Done. Service [gemini-streamlit-app] revision [gemini-streamlit-app-00001-srg] has been deployed and is serving 100 percent of traffic. Service URL: https://gemini-streamlit-app-hc2gb6hsia-uc.a.run.app

选择您想要检查的功能,应用将提示 Vertex AI Gemini API 并显示响应。

Vertex Gemini

点击检查我的进度以验证是否完成了以下目标:构建应用并将其部署到 Cloud Run

恭喜!

恭喜!在本实验中,您学习了如何将 Vertex AI Gemini API 与应用集成,以及如何在 Google Cloud Run 上构建和部署所开发的示例应用。

后续步骤/了解详情

Google Cloud 培训和认证

…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。

上次更新手册的时间:2024 年 3 月 7 日

上次测试实验的时间:2024 年 3 月 7 日

版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。