
准备工作
- 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
- 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
- 在屏幕左上角,点击开始实验即可开始
Set up the notebook
/ 10
Interact with the model
/ 15
Configure and control the model
/ 15
Manage the model interaction
/ 20
Function calling
/ 10
Use context caching
/ 10
Retrieve batch prediction results
/ 10
Get text embeddings
/ 10
Google Gen AI SDK 提供了访问 Google 生成式 AI API 服务的统一接口。该 SDK 简化了将生成式 AI 功能集成到应用和服务中的过程,使开发者能够利用 Google 的先进 AI 模型处理各种任务。在本实验中,您将探索 Google Gen AI SDK,学习如何连接到 AI 服务、发送各种提示,以及对 Gemini 的回答进行微调。您还将动手练习更高级的技巧,为在自己的项目中利用生成式 AI 的强大功能做好准备。
在本实验中,您将学习如何使用 Google Gen AI SDK for Python 来与 Google 的生成式 AI 服务和模型(包括 Gemini)进行交互。具体活动包括:
在开始本实验之前,您应该先熟悉:
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。
为完成此实验,您需要:
点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。左侧是“实验详细信息”窗格,其中包含以下各项:
点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。
该实验会启动资源并打开另一个标签页,显示“登录”页面。
提示:将这些标签页安排在不同的窗口中,并排显示。
如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。
您也可以在“实验详细信息”窗格中找到“用户名”。
点击下一步。
复制下面的密码,然后将其粘贴到欢迎对话框中。
您也可以在“实验详细信息”窗格中找到“密码”。
点击下一步。
继续在后续页面中点击以完成相应操作:
片刻之后,系统会在此标签页中打开 Google Cloud 控制台。
在 Google Cloud 控制台的导航菜单 () 中依次点击 Vertex AI > Workbench。
找到
Workbench 实例的 JupyterLab 界面会在新浏览器标签页中打开。
打开笔记本文件,导入库,然后选择模型。
打开
在选择内核对话框中,从可用内核列表中选择 Python 3。
运行笔记本的以下部分:
对于项目 ID,请使用
点击检查我的进度以验证是否完成了以下目标:
如需详细了解 Vertex AI 上的所有 AI 模型和 API,请参阅 Google 模型和 Model Garden。
使用 generate_content
方法生成对提示的回答。您可以将文本传递给 generate_content
,并使用 .text
属性获取回答的文本内容。
您可以在提示请求中包含文本、PDF 文档、图片、音频和视频,并获取文本或代码形式的回答。
您还可以直接在请求中通过 Part.from_uri
将文件网址传递给模型。
系统指令可用于控制模型行为。设置系统指令可以为模型提供更多背景信息,以便其理解任务、提供更具个性化的回答,并在与用户交互的过程中遵循相关准则。
点击检查我的进度以验证是否完成了以下目标:
您可以在发送给模型的每个调用中包含参数值,以控制模型如何生成回答。如需了解详情,请参阅使用参数值进行实验。
Gemini API 提供了安全过滤器,您可以在多个过滤器类别中进行调整,以限制或允许某些类型的内容。您可以使用这些过滤器,针对您的应用场景进行适当的调整。如需了解详情,请参阅配置安全过滤器页面。
向模型发出请求时,系统会对内容进行分析并进行安全评级。您可以输出模型的回答,以检查所生成内容的安全评级,如以下示例所示:
Gemini API 可以实现多轮自由对话。
借助 Gemini API 中的受控生成功能,您可以将模型输出限制为结构化格式。您可以将架构作为 Pydantic 模型或 JSON 字符串提供。
您还可以在 Python 字典中定义回答架构。您只能使用以下字段。系统会忽略所有其他字段。
enum
items
maxItems
nullable
properties
required
在本例中,您将指示模型分析商品评价数据、提取关键实体、执行情感分类(选择题)、提供附加说明,并以 JSON 格式输出结果。
点击检查我的进度以验证是否完成了以下目标:
默认情况下,模型会在完成整个生成过程后返回回答。您也可以使用 generate_content_stream
方法,在生成回答的同时对其进行流式传输,这样,模型在生成一部分回答后便立即返回这部分回答。
您可以使用 client.aio
模块发送异步请求。该模块公开了 client
上提供的所有类似的异步方法。
例如,client.aio.models.generate_content
是 client.models.generate_content
的异步版本。
您可以使用 count_tokens
方法计算输入 token 的数量,然后再向 Gemini API 发送请求。如需了解详情,请参阅列出并统计 token 数量页面。
点击检查我的进度以验证是否完成了以下目标:
借助函数调用功能,您可以提供一组工具,让模型使用这些工具来回答用户的提示。您需要在代码中创建函数的说明,然后通过请求将说明传递给语言模型。模型的响应包括与说明匹配的函数名称以及用于调用该函数的参数。
如需查看更多函数调用示例,请参阅此笔记本。
点击检查我的进度以验证是否完成了以下目标:
借助上下文缓存功能,您可以将常用的输入 token 存储在专用缓存中,并在后续请求中引用这些 token,从而无需将同一组 token 反复传递给模型。
注意:上下文缓存仅适用于具有固定版本号(例如 gemini-2.0-flash-001
)的稳定模型。版本号必须包含版本后缀(例如 -001
)。
点击检查我的进度以验证是否完成了以下目标:
获取在线(同步)回答时,一次只能发送一个输入请求。但在 Vertex AI 中使用 Gemini API 执行批量预测时,您可以在单个批量请求中向 Gemini 发送大量请求。然后,模型回答会异步填充到 Cloud Storage 或 BigQuery 中的存储空间输出位置。
在处理对延迟不敏感的大量输入时,批量预测通常比在线预测更高效,也更具成本效益。
批量请求的输入指定要发送到模型进行预测的内容。
对 Gemini 的批量请求适用的输入来源包括 BigQuery 存储空间和 Cloud Storage。您可以访问批量文本生成页面,详细了解批量输入的格式。
本实验以 Cloud Storage 为例。Cloud Storage 输入需遵循以下要求:
us-central1
区域向模型发送的每个请求都可以包含参数,利用这些参数来控制模型如何生成回答。如需详细了解 Gemini 参数,请参阅使用参数值进行实验页面。
以下是 JSONL 输入文件 batch_requests_for_multimodal_input_2.jsonl
中的一个示例请求:
批量预测任务完成后,系统会将输出存储在您的请求中指定的位置。
位置信息的格式为 Cloud Storage 或 BigQuery URI 前缀,例如:
gs://path/to/output/data
或 bq://projectId.bqDatasetId
。
如果未指定输出位置,则在来源为 Cloud Storage 时使用 gs://STAGING_BUCKET/gen-ai-batch-prediction
,来源为 BigQuery 时使用 bq://PROJECT_ID.gen_ai_batch_prediction.predictions_TIMESTAMP
。
本实验使用一个 Cloud Storage 存储桶作为输出位置的示例。
您可以在 BUCKET_URI
中指定 Cloud Storage 存储桶的 URI;如果未指定,系统会为您创建一个新的 Cloud Storage 存储桶,格式为 gs://PROJECT_ID-TIMESTAMP
。
如需发送批量预测请求,请指定来源模型 ID、输入来源,以及 Vertex AI 用于存储批量预测结果的输出位置。
如需了解详情,请参阅批量预测 API 页面。您还可以在控制台 (https://console.cloud.google.com/vertex-ai/batch-predictions) 中查看状态。
批量预测任务完成后,其输出会存储在请求中指定的位置。此外,批量预测结果还会存储在 batch_job.dest.bigquery_uri
或 batch_job.dest.gcs_uri
中。
输出示例:
点击检查我的进度以验证是否完成了以下目标:
您可以使用 embed_content
方法获取一段文本的文本嵌入。默认情况下,所有模型都会生成具有 768 个维度的输出。不过,有些模型可让用户选择 1
到 768
之间的输出维数。如需了解详情,请参阅 Vertex AI 文本嵌入 API。
点击检查我的进度以验证是否完成了以下目标:
恭喜!您已成功探索 Google Gen AI SDK,了解了如何连接到 AI 服务、发送各种提示,以及对 Gemini 模型的回答进行微调。您还获得了更高级技巧的实践经验,包括管理交互、使用上下文缓存,甚至使用嵌入功能!现在,您已经做好准备,可以在自己的项目中利用生成式 AI 的强大功能了。
请参阅以下资源,详细了解 Gemini:
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。
本手册的最后更新时间:2025 年 5 月 5 日
本实验的最后测试时间:2025 年 5 月 5 日
版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。
此内容目前不可用
一旦可用,我们会通过电子邮件告知您
太好了!
一旦可用,我们会通过电子邮件告知您
一次一个实验
确认结束所有现有实验并开始此实验