使用 BigQuery 代理和 Antigravity IDE 与数据对话

1. 概览

我们先花点时间回顾一下在过去四个部分中构建的庞大架构:

第 1 部分:我们使用 BigQuery Knowledge Catalog 将原始 Froyo 配方 PDF 转换为结构化关系表。

第 2 部分:我们构建了一个零 ETL 事务桥,将 BigQuery 仓库直接联合到 AlloyDB 中。

**第 3 部分**:我们使用智能体开发套件和 MCP 工具箱编排了一个多智能体应用 (FroyoOS)。

**第 4 部分**:我们通过构建双轨评估流水线证明了我们的智能体可安全用于生产。

我们的运营完美无缺。但是,那些需要了解此系统生成的大量数据的开发者和业务分析师呢?

今天,我们将探索分析的未来。我们将从代码编辑器 Antigravity IDE 中的 Google Cloud Data Agent Kit 开始,然后转到 Google Cloud 控制台,使用 BigQuery 对话式分析直观呈现数据。

让我们开始构建吧!

学习内容

在本 Agentic Data Cloud 系列的最后一个 Codelab 中,您将把架构的所有部分整合在一起,以提供可据以采取行动的业务分析洞见。您将学习:

  • IDE 优先分析: 如何安装和配置 ANTIGRAVITY IDEGoogle Cloud Data Agent Kit ,以便直接从开发环境查询架构。
  • 对话式 BigQuery: 如何创建、配置和指示 BigQuery 数据智能体 ,以便使用自然语言自动执行复杂的 SQL 任务和预测。
  • 数据民主化: 如何将智能体发布到企业,使其可供组织中的分析师和业务用户访问。
  • 直观呈现分析洞见: 如何将智能体的对话式分析无缝集成到 数据洞察 中,以创建动态的、可用于预测的信息中心。
  • Agentic Data Cloud 生态系统: 如何阐述端到端架构的价值,从第 1 部分中的原始非结构化数据到第 5 部分中可供高管使用的信息中心。

要求

  • 浏览器,例如 ChromeFirefox
  • 启用了结算功能的 Google Cloud 项目。
  • 基本熟悉 SQL。

2. 准备工作

创建项目

  1. Google Cloud 控制台 的项目选择器页面上,选择或创建一个 Google Cloud 项目
  2. 确保您的 Cloud 项目已启用结算功能。了解如何 检查项目是否已启用结算功能
  1. 您将使用 Cloud Shell,它是在 Google Cloud 中运行的命令行环境。点击 Google Cloud 控制台顶部的激活 Cloud Shell 。

“激活 Cloud Shell”按钮图片

  1. 连接到 Cloud Shell 后,您可以使用以下命令检查自己是否已通过身份验证,以及项目是否已设置为您的项目 ID:
gcloud auth list
  1. 在 Cloud Shell 中运行以下命令,以确认 gcloud 命令了解您的项目。
gcloud config list project
  1. 如果您想进行身份验证
gcloud auth login
  1. 如果项目未设置,请使用以下命令进行设置:
export PROJECT_ID=<YOUR_PROJECT_ID>
gcloud config set project <YOUR_PROJECT_ID>
  1. 启用所需的 API:运行此命令以启用所有必需的 API:
gcloud services enable \
  alloydb.googleapis.com \
  bigquery.googleapis.com \
  run.googleapis.com \
  cloudbuild.googleapis.com \
  artifactregistry.googleapis.com \
  iam.googleapis.com \
  secretmanager.googleapis.com \
  compute.googleapis.com \
  servicenetworking.googleapis.com \ 
  aiplatform.googleapis.com
  1. 确保您已完成实验的 第 1 部分第 2 部分第 3 部分,以便为本实验做好准备:

3. 扩展数据仓库

还记得我们从非结构化数据创建的 BigQuery 表吗?

为了进行一些有意义的分析,我们需要历史交易数据。在 BigQuery 中,在 froyo_data 数据集下,我们创建三个新表来模拟多年的特许经营业务:

  1. froyo_data.orders:历史订单标头(日期、商店 ID、总计)
  2. froyo_data.order_items:行项详细信息(数量、价格)
  3. froyo_data.customer_allergen_data:一个 CRM 表,用于跟踪忠实客户的已知过敏原

让我们将这些销售和客户相关表添加到该数据集,以便为我们的分析用例做好准备。

  1. 从 Google Cloud 控制台前往 Cloud Shell 终端
  2. 前往工作区的根文件夹或 froyo-data 项目根文件夹(我们在本系列的前几个部分中一直在使用该文件夹)。
  3. 通过逐个运行以下命令,将 3 个历史数据文件(CSV 文件)下载到工作目录中:
wget https://raw.githubusercontent.com/AbiramiSukumaran/froyo-data/main/customer_allergen_data.csv
wget https://raw.githubusercontent.com/AbiramiSukumaran/froyo-data/main/order_items.csv
wget https://raw.githubusercontent.com/AbiramiSukumaran/froyo-data/main/orders.csv
  1. 在工作目录的根目录中看到这些文件后,切换到终端,前往 Cloud Shell 终端。
  2. 前往 Cloud Shell 终端中包含这 3 个文件的目录。
  3. 确保 BigQuery 包含本系列 第 1 部分 中的名为“froyo_data”的数据集(如果没有,请返回并创建数据集和表)。
  4. 从 Cloud Shell 终端运行以下命令:
bq load \
  --autodetect \
  --source_format=CSV \
  --skip_leading_rows=1 \
  --allow_quoted_newlines \
  --quote="" \
  froyo_data.orders \
  ./orders.csv
bq load \
  --autodetect \
  --source_format=CSV \
  --skip_leading_rows=1 \
  --allow_quoted_newlines \
  --quote="" \
  froyo_data.order_items \
  ./order_items.csv
bq load \
  --autodetect \
  --source_format=CSV \
  --skip_leading_rows=1 \
  --allow_quoted_newlines \
  --quote="" \
  froyo_data.customer_allergen_data \
  ./customer_allergen_data.csv

这应该会在 froyo_data 数据集中创建 3 个额外的表。

4. 开发者体验 - 了解“Data Agent Kit”

传统上,如果开发者想要分析数据或编写复杂的机器学习查询,则必须不断在 IDE、数据库控制台和文档之间切换上下文。

现在不需要了。借助新推出的 Google Cloud Data Agent Kit 扩展程序,您的 IDE 将成为数据强项。

ANTIGRAVITY IDE

ANTIGRAVITY IDE 是 Google 的下一代智能体优先开发环境,专为 AI 时代而设计。它将大量多模态上下文窗口和自主工具使用直接集成到编辑器中,使开发者无需离开代码即可编排云资源和编排复杂的数据流水线。

设置 ANTIGRAVITY IDE

  1. 下载 IDE:前往 antigravity.google,然后为您的操作系统(Windows、macOS 或 Linux)下载 Antigravity IDE。
  2. 安装并启动:运行安装程序并打开应用。

2cb621632f3992ab.png

  1. 点击“使用 Google 继续”,选择您的 Gmail 账号并授权。
  2. 登录后,创建一个工作文件夹(工作区/ 项目)。我们将其命名为“Agent Data Cloud”。

它应显示在左侧的“项目”列表中:

635402f8c739bb23.png

  1. 与智能体进行初步聊天 - “hi”。
  2. 请注意右上角的“打开 IDE”按钮!

但在点击该按钮之前, 您需要安装 Antigravity IDE。前往 antigravity.google/download 页面,向下滚动到 Antigravity IDE 部分,然后下载所需的变体。

下载完成后,返回打开的 Antigravity 实例,然后点击右上角的“打开 IDE”按钮。

479b4dc7a055f693.png

  1. 您应该会看到有关权限的弹出式窗口,请继续打开它!

3bd901c37a5ca432.png

在右侧,您会看到智能体窗格;在左侧,您会看到项目探索器;在中间,您会看到开发空间。

设置 Data Agent Kit 扩展程序

  1. 安装扩展程序:在 ANTIGRAVITY IDE 中打开扩展程序 Marketplace。搜索并安装 Google Cloud Data Agent Kit 扩展程序。
  2. 点击“安装”按钮,完成后,您应该能够在导航窗格中看到该扩展程序。

e941c4765bcb542d.png

  1. 点击该扩展程序,系统会打开 Google Cloud Data Agent Kit 探索器,前往“设置”部分,然后点击“设置”。在其中输入您的项目详细信息和区域,然后保存。

8bc41001ba5924e9.png

  1. 现在,点击导航窗格顶部的“项目探索器”。它应该会在探索器窗格中打开项目探索器。
  2. 右键点击探索器空间,然后创建一个名为“GEMINI.md”的新文件。

fe7ad89cc4d3ab07.png

  1. 将以下内容粘贴到 GEMINI.md 中(别忘了将 <<YOUR_PROJECT_ID>> 替换为您的值):
## 1. Project Context
- **Project ID**: <<YOUR_PROJECT_ID>>
- **Domain**: This project is centralized around "Froyo", a brand of frozen yogurt offering multiple flavors.
- **Data**: All froyo, customer, order related information is processed and stored in BigQuery `froyo_data` dataset.

## 2. Execution & Data Processing Rules
- **CRITICAL RULE - Structured Specs**: The semantic and structured information extracted from the PDFs is available in a BigQuery dataset named `froyo_data`.
- **CRITICAL RULE - Customer Data**: Existing Froyo customer data resides in BigQuery in the tables `customers_allergen_data`. 
- ** CRITICAL RULE - Sales Data**: Sales data is present in tables `orders` and `order_items`.
- ** CRITICAL RULE - General: When you are referencing a dataset, ensure you are using it with the dataset ID (`froyo_data`) . For example, to query orders table in this dataset you should use `froyo_data.orders`.

现在,您的 IDE 中直接有一个功能强大的 AI 智能体,可以编写代码、生成 SQL 和分析架构。

我们现在面临一个有趣的分析挑战:我们能否将历史销售额与我们在第 1 部分中从 PDF 中提取的复杂推断过敏原数据相关联?

5. 通过 IDE 智能体推断智能

让我们让 IDE 智能体来完成繁重的工作。在 ANTIGRAVITY IDE 中打开 Agent Data Kit 聊天窗口,并向其提示以下内容:

Does Midnight Swirl contain any allergen?

它会要求您提供一系列权限,请根据需要允许。

最后,它会在分析结束时为您检索响应:

e80715f963651e.png

太棒了!它已正确识别出 Midnight Swirl 商品含有大豆。

现在,我们来问一个稍微复杂一点的问题。在 Antigravity IDE 中发送以下提示

I want to see the top 5 most popular products purchased by 
customers who have a registered 'Dairy' allergy.

响应

e7e51117558493d5.png

您可以继续。尝试使用如下提示

Forecast the sales volume of our top non-dairy products 
for the next 30 days based on historical data.

无需查找 BQML 语法,Agent Data Kit 即可将确切的 CREATE MODEL 和 ML.FORECAST 代码放入编辑器中。可以直接针对 BigQuery 环境执行此操作,而无需离开 ANTIGRAVITY IDE!

这太棒了!

6. BigQuery 中的对话式分析

虽然开发者喜欢 IDE,但业务用户和高管却喜欢云控制台。他们不想看到 SQL,他们只想获得答案。

下面我们开始吧:

  1. 为自己授予所需角色

前往项目的 IAM 页面,然后为自己授予 Gemini Data Analytics Data Agent Owner 角色:

7102a1501cb964bf.png

借助此角色,您可以创建、修改、共享和删除项目中的所有数据智能体。

  1. 启用所需的 API

在 Google Cloud 控制台中前往 BigQuery。使用侧边栏导航菜单或页面顶部的搜索菜单前往 BigQuery > 智能体。

点击“启用 Data Analytics API (with Gemini)”:

ccc412f1699163dc.png

同时启用 Gemini in BigQuery APIGemini for Google Cloud API

82a360fa44b12346.png

您现在应该会看到新的智能体页面:

95e69ad98e212fae.png

  1. 配置智能体信息

智能体名称:Froyo 智能体

智能体说明:帮助回答有关 Froyo 产品、过敏原、成分、配方、客户、订单、销售额的问题。

860e002e94cd75b6.png

  1. 前往“知识来源”部分,然后从数据集中选择以下所有表

d1b318ff3a5db864.png

a. 添加上图中的表,然后点击“添加来源”。

b. 对于每个来源,点击右侧的自定义 按钮。您将看到以下表单:

b395204823254009.png

c. 点击表的说明的“接受”。

d. 点击每个字段的说明的“接受”。

638f74954f348eb0.png

e. 点击“更新”。

您必须对来源中的所有表重复此操作。

  1. 配置说明

在此处输入我们在 Antigravity IDE GEMINI.md 中使用的相同说明:

1. Project Context
Project ID: <<YOUR_PROJECT_ID>>
Domain: This project is centralized around "Froyo", a brand of frozen yogurt offering multiple flavors.
Data: All froyo, customer, order related information is processed and stored in BigQuery froyo_data dataset. Use all the tables and data in the dataset for querying for user questions.
Context: Use Data Agent Kit skills wherever possible.
2. Execution & Data Processing Rules
CRITICAL RULE - Structured Specs: The semantic and structured information extracted from the PDFs is available in a BigQuery dataset named froyo_data.
CRITICAL RULE - Customer Data: Existing Froyo customer data resides in BigQuery in the tables customers_allergen_data. When you are referencing a dataset, ensure you are using it with the dataset ID (froyo_data) . For example, to query orders table in this dataset you should use froyo_data.orders.
  1. 保存智能体。

7. 与您的数据聊天!

  1. 在右侧的预览部分进行测试

91724a760430aa10.png

提出问题

Does midnight swirl contain any allergen?

9a8c4bca6014b7dc.png

响应如下

7e4dd3280eac9c98.png

现在,我们来问一个复杂的问题

I want to see the top 5 most popular products purchased by 
customers who have a registered 'Dairy' allergy.

响应

3a384adeb2737a39.png

74d682e2cb567153.png

现在,我们来尝试一个深入分析提示

Forecast the sales volume of our top non-dairy products 
for the next 30 days based on historical data.

您可以看到,它会向您显示它使用的查询,以及表结果和图表

de9b8d6711bed357.png

efe8e9cbc73bd188.png

1afdb5d8c9e1d0e6.png

哇!图表和分析洞见效果不错。现在是提出有关产品的终极问题的时候了。

8. 终极测试

提出问题

What will be the top most selling product of 2026

a9bb832d8d1758.png

cb4e226080e1853f.png

看看最终的分析洞见。BigQuery 数据智能体不仅给了我们一个数字,还明确地将销售预测与我们的库存和成分供应链联系起来,这正是我们在第 1 部分中从杂乱的 PDF 中提取的数据!

9. 将智能体发布到企业

点击预览智能体顶部的发布 按钮。

37418373df16d52.png

现在,我们已经构建、配置和测试了 Froyo 智能体,是时候将其发布给业务部门的其他人员了。

在“智能体配置”页面的右上角,点击“发布”按钮。

发布后,您的智能体将立即在三个强大的企业渠道中提供给您和您的共享对象:

  1. BigQuery:您的数据分析师现在可以直接从“智能体”中心或 BigQuery Studio SQL 工作区中与此智能体聊天。
  2. Conversational Analytics API:您的开发者可以通过 REST API 访问此智能体,从而将这些确切的对话式分析集成到您自己的自定义内部 Web 应用中。
  3. 数据洞察:您的高管可以直接在数据洞察中与此代理互动并创建动态对话式信息中心。

我们已成功将数据从信息孤岛中取出,并直接交给需要这些数据的人员,而且这些人员可以在他们已经工作的地方使用这些数据!

点击已发布的 BigQuery 智能体顶部的“共享”按钮的下拉菜单,然后从列表中选择“将链接复制到 Data Studio 中的智能体”选项:

31f8579e121ed6ec.png

将该链接粘贴到浏览器中,然后按 Enter 键。确认智能体互动访问权限提醒:

1503a3720be99733.png

您可以开始使用数据洞察中新发布的智能体进行互动对话和可视化,您的领导和其他需要此信息的团队也可以这样做!

10. 清理

完成此实验后,请务必移除您刚刚创建的 BigQuery 智能体的所有用户权限。

11. 恭喜!

您已正式构建 Agentic Data Cloud!

您构建的不仅仅是一个简单的聊天机器人。在这五个会话中,您成功地从头开始构建了一个完整、现代且经过评估的企业 AI 系统。您已经从“暗数据”发展到实时交易智能,最终发展到对话式业务预测。

12. 完整架构

让我们退后一步,看看我们在本系列中取得的成就。我们构建的不仅仅是一个简单的聊天机器人。我们构建了一个完整、现代的 Agentic Data Cloud:

第 1 部分:通过使用 Knowledge Catalog 将 PDF 转换为结构化关系表,解锁暗数据。

第 2 部分:通过将分析仓库直接联合到 AlloyDB 事务数据库中,打破数据孤岛。

第 3 部分:通过构建多智能体操作系统,使用户能够通过 MCP 协议无缝执行安全数据库工具,从而增强用户能力

第 4 部分:通过实施严格的评估流水线来捕获幻觉和越狱,确保安全性。

第 5 部分:使用 ANTIGRAVITY IDE 和 BigQuery 中的对话式分析实现分析洞见的民主化。

这就是企业软件的未来。AI 智能体不再仅仅是 LLM 的封装。它是一个完全集成、经过评估且安全的编排引擎,位于统一数据平台之上。