本教程演示了如何使用 Spanner 和 Vertex AI 构建生成式 AI 应用。
此应用可让您执行语义相似度搜索,从而找到与自然语言查询匹配的产品。为此,它会使用嵌入,即文本的数值表示,用于捕获字词的含义和上下文。您将使用 Vertex AI 模型生成这些嵌入,然后在 Spanner 中存储和搜索这些嵌入。这种方法对于产品搜索等应用场景特别有用,因为在这些应用场景中,用户可能会使用自然语言而非特定关键字来描述自己想要的内容。
以下主题可帮助您了解如何:
- 创建 Google Cloud 项目
- 创建 Spanner 实例
- 创建数据库
- 创建嵌入模型
- 将数据加载到 Spanner 中
- 为数据生成嵌入
- 执行 KNN 向量相似度搜索
- 使用向量索引扩缩向量搜索
- 清理资源
如需了解 Spanner 价格详情,请参阅 Spanner 价格。
如需试用 Codelab,请参阅 Spanner 向量搜索使用入门。
准备工作
您必须创建一个与结算账号相关联的 Google Cloud 项目。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Spanner API 应自动启用。如果未启用,请手动启用: 启用 Spanner API
- Vertex AI API 应自动启用。如果未启用,请手动启用: 启用 Vertex AI API
-
如需获得创建实例和数据库所需的权限,请让您的管理员为您授予项目的 Cloud Spanner Admin (
roles/spanner.admin) IAM 角色。 -
如需获得查询 Spanner Graph 所需的权限(如果您未获得 Cloud Spanner Admin 角色),请让您的管理员为您授予项目的 Cloud Spanner Database Reader (
roles/spanner.databaseReader) IAM 角色。 在 Google Cloud 控制台中,前往 Spanner 页面。
创建实例
在首次使用 Spanner 时,必须创建一个实例,该实例是 Spanner 数据库使用的资源分配单位。本部分介绍如何使用 Google Cloud 控制台创建实例。