构建使用 Gemini 模型发送聊天提示的应用
实验
15 分钟
universal_currency_alt
免费
show_chart
入门级
info
此实验可能会提供 AI 工具来支持您学习。

概览
- 实验是计时的,并且无法暂停。计时器在您点击开始实验后即开始计时。
- 随附的云终端已预先配置了 gcloud SDK。
- 使用终端执行命令,然后点击检查我的进度以验证您的实验成果。
目标
借助 Vertex AI 上的生成式 AI,您可以访问 Google 的大型生成式 AI 模型,对模型进行测试、调整并部署到 AI 赋能的应用中。在本实验中,您将执行以下操作:
-
连接到 Vertex AI(Google Cloud AI 平台):了解如何使用 Vertex AI SDK 建立与 Google AI 服务的连接。
-
加载预训练的生成式 AI 模型 - Gemini:了解如何使用强大的预训练 AI 模型,而无需从头构建。
-
向 AI 模型发送文本:了解如何为 AI 提供输入。
-
提取 AI 聊天回答:了解如何处理和解读 AI 模型生成的聊天回答。
-
了解构建 AI 应用的基础知识:深入了解将 AI 集成到软件项目中的核心概念。
使用生成式 AI
开始实验后,您将看到一个分屏视图,左侧是代码编辑器,右侧是实验说明。按照说明步骤使用 Vertex AI Python SDK 与生成式 AI API 进行交互。
不使用流式传输的聊天回答:
流式传输是指在提示响应生成时,即时接收这些响应。也就是说,只要模型生成输出 token,就会发送这些输出 token。只有在生成所有输出 token 后,才会发送对提示的非流式回答。
首先,我们来了解不使用流式传输的聊天响应。
创建一个新文件,以获取聊天回答,不使用流式传输:
- 点击文件 > 新建文件,在代码编辑器中打开一个新文件。
- 复制提供的代码段并将其粘贴到文件中。
from google import genai
from google.genai.types import HttpOptions, ModelContent, Part, UserContent
import logging
from google.cloud import logging as gcp_logging
# ------ Below cloud logging code is for Qwiklab's internal use, do not edit/remove it. --------
# Initialize GCP logging
gcp_logging_client = gcp_logging.Client()
gcp_logging_client.setup_logging()
client = genai.Client(
vertexai=True,
project='{{{ project_0.project_id | "project-id" }}}',
location='{{{ project_0.default_region | "REGION" }}}',
http_options=HttpOptions(api_version="v1")
)
chat = client.chats.create(
model="gemini-2.0-flash-001",
history=[
UserContent(parts=[Part(text="Hello")]),
ModelContent(
parts=[Part(text="Great to meet you. What would you like to know?")],
),
],
)
response = chat.send_message("What are all the colors in a rainbow?")
print(response.text)
response = chat.send_message("Why does it appear when it rains?")
print(response.text)
-
依次点击文件 > 保存,在“名称”字段中输入 SendChatwithoutStream.py
,然后点击保存。
-
在代码编辑器窗格内的终端中运行以下命令,执行 Python 文件并查看输出。
/usr/bin/python3 /SendChatwithoutStream.py
代码说明
- 此代码段会加载一个名为 Gemini (gemini-2.0-flash-001) on Vertex AI 的预训练 AI 模型。
- 该代码调用已加载的 Gemini 模型的
send_message
方法。
- 该代码使用 Gemini 的聊天功能。它使用提示中提供的文本进行聊天。
使用流式传输的聊天回答:
现在,我们将了解使用流式传输的聊天回答。
创建一个新文件,以使用流式传输获取聊天回答:
- 点击文件 > 新建文件,在代码编辑器中打开一个新文件。
- 复制提供的代码段并将其粘贴到文件中。
from google import genai
from google.genai.types import HttpOptions
import logging
from google.cloud import logging as gcp_logging
# ------ Below cloud logging code is for Qwiklab's internal use, do not edit/remove it. --------
# Initialize GCP logging
gcp_logging_client = gcp_logging.Client()
gcp_logging_client.setup_logging()
client = genai.Client(
vertexai=True,
project='{{{ project_0.project_id | "project-id" }}}',
location='{{{ project_0.default_region | "REGION" }}}',
http_options=HttpOptions(api_version="v1")
)
chat = client.chats.create(model="gemini-2.0-flash-001")
response_text = ""
for chunk in chat.send_message_stream("What are all the colors in a rainbow?"):
print(chunk.text, end="")
response_text += chunk.text
-
依次点击文件 > 保存,在“名称”字段中输入 SendChatwithStream.py
,然后点击保存。
-
在代码编辑器窗格内的终端中运行以下命令,执行 Python 文件并查看输出。
/usr/bin/python3 /SendChatwithStream.py
代码说明
- 此代码段会加载一个名为 Gemini (gemini-2.0-flash-001) on Vertex AI 的预训练 AI 模型。
- 该代码调用已加载的 Gemini 模型的
send_message_stream
方法。
- 该代码使用 Gemini 理解提示和进行有状态聊天对话的能力。
亲自尝试一下吧! 尝试使用不同的提示,探索 Gemini 的功能。
点击检查我的进度以验证是否完成了以下目标:
向生成式 AI 发送文本提示请求并接收聊天回答
恭喜!
您已完成本实验!恭喜!
版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。