通过对话分析数据
本文档介绍了如何在 BigQuery 中创建、修改和删除对话。对话是与您选择的数据 代理或数据源(例如表、视图 或图表)的持久聊天。
对话是与数据代理或数据源的持久聊天。您可以向数据代理提出多部分问题,这些问题使用“销售额”或“最受欢迎”等常用术语,而无需指定表字段名称或定义条件来过滤数据。您还可以提出有关 PDF 等对象中的数据的问题。智能体在构建回答时,可以确定要查询的数据源,并利用表分区或搜索索引等优化。智能体可以使用列值的现有嵌入,将您的问题与正确的数据进行匹配。例如,询问“Texas”会找到存储为“TX”的行。
返回给您的聊天回答提供以下功能:
- 以文本、代码或图片(多模态)形式回答您的问题。回答可以包含受支持的 BigQuery AI 和 ML 函数。
- 在适当情况下生成图表。
- 智能体得出结果的推理过程。
- 有关对话的元数据,例如使用的智能体和数据源。
当您创建与数据源的直接对话时, Conversational Analytics API 会在没有 数据代理提供的上下文和处理指令的情况下解读您的问题。因此,直接对话结果可能不太准确。对于需要更高准确性的情况,请使用数据代理。
您可以使用 Google Cloud 控制台在 BigQuery 中创建和管理对话。如需了解详情,请参阅通过对话 分析数据。
准备工作
-
验证是否已为您的 Google Cloud 项目启用结算功能。
-
启用 BigQuery、Gemini 数据分析和 Gemini for Google Cloud API(如果尚未启用)。
启用 API 所需的角色
如需启用 API,您需要拥有
serviceusage.services.enable权限。如果您 创建了项目,则可能已通过 Owner 角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。 了解如何授予角色。
所需的角色
如需创建对话,您必须拥有以下 Conversational Analytics API IAM 角色之一:
- 如需查看与您共享的任何数据代理并与之创建对话,您必须在项目级拥有 Gemini Data Analytics Data Agent User (
roles/geminidataanalytics.dataAgentUser) 角色和 Gemini for Google Cloud User (roles/cloudaicompanion.user) 角色。 - 如需创建直接对话,您必须拥有 Gemini 数据分析 Stateless Chat User (
roles/geminidataanalytics.dataAgentStatelessUser) 角色。
此外,在以下情况下,您必须拥有以下角色:
- 如果数据代理使用数据集作为知识来源,您需要拥有针对该数据集的
BigQuery Data Viewer
(
roles/bigquery.dataViewer) 角色。 - 如果数据代理为您运行 SQL 查询,您需要拥有针对该项目的
BigQuery Job User
(
roles/bigquery.jobUser) 角色。 - 如果数据代理使用表或视图作为知识来源,您需要拥有针对该表或视图的
BigQuery Data Viewer
(
roles/bigquery.dataViewer) 角色。 - 如果表使用列级访问权限控制,
您需要拥有
Fine-Grained Reader
(
roles/datacatalog.categoryFineGrainedReader)角色。此角色会在您配置政策标记时分配给主账号。如需了解详情,请参阅 用于列级访问权限控制的角色。 - 如果数据表使用行级访问权限控制, 您必须通过该表的角色级访问权限政策获得访问权限 。如需了解详情,请参阅 创建或更新行级访问权限政策。
- 如果数据表使用 数据遮盖,
您必须通过相应的数据
政策获得 Masked Reader
(
roles/bigquerydatapolicy.maskedReader) 角色。如需了解详情,请参阅用于查询遮盖 数据的角色。 - 如需与数据集对话,您需要拥有针对该项目的 Data Catalog Viewer
(
roles/datacatalog.viewer) 角色。
如果您没有数据代理使用的源数据表的相应角色,则在您与数据代理聊天时,系统会返回以下错误:
Schema_Resolution: Access Denied
最佳实践
对话式分析会自动代表您运行查询来回答您的问题。请考虑以下可能增加查询费用的因素:
- 表大小过大
- 在查询中使用数据联接
- 在查询中频繁调用 AI 函数
创建与数据代理的对话
如需创建与数据代理的对话,您首先需要 创建数据代理并发布它。您还可以与他人与您共享的代理发起对话。
如需在 Google Cloud 控制台中与现有数据代理创建对话, 请按以下步骤操作:
前往 BigQuery 代理 页面。
选择代理目录 标签页。
在我的代理 或组织中的其他人共享的代理 部分中,点击要与之对话的代理的代理卡片。
系统会打开一个新的聊天面板。
在提出问题 字段中,输入您的问题并选择一种模式:
- 快速 (默认):最适合大多数问题。
- 思考:详细推理。
您还可以点击 Gemini 建议的问题之一来开始。
点击 send_spark 发送 。
Conversational Analytics API 会处理您的问题并返回结果。
创建与数据源的直接对话
您可以与以下 BigQuery 数据源(也称为知识来源)创建直接对话。当您创建直接 对话时,Conversational Analytics API 会在没有数据代理提供的上下文和处理指令的情况下解读您的问题。
您可以与以下数据源创建对话:
- 表
- 视图
- 数据集(预览版)
- 图表
使用“代理”页面与数据源对话
如需使用代理页面在 Google Cloud 控制台中与数据源创建对话,请按以下步骤操作:
如需从代理 页面与数据源创建直接对话,请按以下步骤操作:
前往 BigQuery 代理 页面。
在对话 标签页中,点击发起新对话 。
在与数据对话 窗格中,点击知识来源 标签页。如果您的数据源未显示在列表中,您可以搜索它。
选择一个或多个数据源,然后点击对话 。
使用 BigQuery Studio 与数据源对话
如需使用 BigQuery Studio 与数据源创建直接对话,请选择以下选项之一。
与数据集、表、视图或图表对话
如需与数据集、表、视图或图表创建直接对话,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery Studio 页面。
在左侧窗格中,点击 探索器。
在探索器窗格中,展开您的项目,点击数据集,然后选择一个数据集。系统会打开数据集 页面。
点击某个数据集以将其打开。
如需与数据集对话,请点击 chat_spark 对话。
如需与数据集中的表或视图对话,请按以下步骤操作:
在概览 标签页中,点击表 。
在表 ID 列中,点击指向表或视图的链接。
点击 chat_spark 对话 。
如需与图表对话,请按以下步骤操作:
在概览 标签页中,点击图表 。
在图表 ID 列中,点击指向图表的链接。
点击 chat_spark 对话 。
数据集
通过与数据集创建对话,您可以提出有关数据的问题,而无需明确列出数据源。当您与数据集创建对话时,数据代理可以访问该数据集中的所有表。当您提出问题时,数据代理会查找相关表,并在必要时联接这些表以生成回答。
与查询结果对话
运行查询后,您可以与结果创建新对话。 数据源是缓存结果 的临时表,通常会保留 24 小时。缓存结果过期后,您无法提出有关数据的问题。
如需根据查询结果创建对话,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery Studio 页面。
切换到 search_insights 查询 编辑器标签页,或依次点击 arrow_drop_down > SQL 查询 。
输入 SQL 查询,然后点击 play_circle 运行。
在结果 标签页中,点击 chat_spark 对话。
如何与数据源对话
点击数据源的对话 选项后,您就可以开始对话了。如需进行对话,请执行以下操作:
在提出问题 字段中,输入您的问题并选择一种模式:
- 快速 (默认):最适合大多数问题。
- 思考:详细推理。
点击 send_spark 发送 。
Conversational Analytics API 会处理您的问题并返回结果。 如果数据合适,回答会提供图片、图表、表格和其他可视化图表。
如需查看数据代理为回答您的问题而采取的每个步骤,请展开回答中的显示推理过程 选项。
如需查看有关结果计算方式的信息,请点击 这是如何计算出来的?
摘要 部分包含生成的查询,后跟查询结果。您可以选择在查询编辑器中打开查询。
根据对话创建数据代理
您可以根据与表或视图的对话创建数据代理。您无法根据与数据集的对话创建自定义代理。
如需根据对话创建数据代理,请按以下步骤操作:
在对话的详细信息 窗格中,点击创建代理 。
在 Editor 部分的 代理名称 字段中,为数据代理输入一个描述性 名称,例如
Q4 sales data或User activity logs。在代理说明 字段中,输入数据代理的说明。好的说明应解释代理的用途、使用的数据,并帮助您了解何时与此数据代理对话是正确的选择,例如
Ask questions about customer orders and revenue。在知识来源 部分中,验证知识来源 中的条目。您可以自定义现有数据源,也可以点击添加来源 以添加其他数据源。如果您的数据源未显示在列表中,您可以搜索它。
做出更改后,点击保存草稿 。
点击发布 。
管理对话
您可以在代理 页面上打开、重命名或删除对话,并在 BigQuery Studio 探索器中管理对话。
打开现有对话
在 Google Cloud 控制台中,前往 BigQuery 代理 页面。
在对话 标签页的对话列表中,点击要打开的对话。
重命名对话
在 Google Cloud 控制台中,前往 BigQuery 代理 页面。
在对话 标签页的对话列表中,点击要重命名的对话。
依次点击 查看操作 > 重命名。
在重命名对话 对话框的对话名称 字段中,输入对话的新名称。
点击重命名 。
删除对话
即使底层数据源被删除,对话中问题的结果也会保留。如需删除对话及其包含的所有结果,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery 代理 页面。
在对话 标签页的对话列表中,点击要删除的对话。
点击 查看操作 > 删除。
在删除对话? 对话框中,点击删除 。
如果您在 180 天内未更新对话,BigQuery 会自动将其删除。
使用 BigQuery Studio 探索器管理对话
使用 BigQuery Studio 探索器管理对话。此对话列表提供了一个集中位置,用于搜索、打开或创建对话。您还可以复制对话 ID 或刷新对话列表。
如需管理对话,请按以下步骤操作:
前往 BigQuery Studio 探索器页面。
在探索器 窗格中,展开项目名称。
点击对话 。
- 如需过滤对话列表,请在过滤条件字段中输入属性名称或值。
- 如需打开对话,请依次点击 查看操作 > 打开。
- 如需复制对话 ID,请依次点击 查看操作 > 复制 ID。
- 如需创建对话,请在菜单栏中点击创建对话 。
- 如需刷新列表,请在菜单栏中点击刷新 。