通过对话分析数据
本文档介绍了如何在 BigQuery 中创建、修改、导出和删除对话。对话是指与数据代理或您选择的数据源(例如表、视图或图表)进行的持久聊天。
对话是指与数据代理或数据源进行的持久化聊天。您可以向数据智能体提出包含多个部分的问题,这些问题可以使用“销售额”或“最受欢迎”等常见术语,而无需指定表字段名称或定义过滤数据的条件。您还可以询问有关 PDF 等对象中的数据的问题。代理可以执行以下操作:
- 确定要查询的数据源。
- 利用优化功能,例如表分区或搜索索引。
- 使用列值的现有嵌入,将您的问题与正确的数据进行匹配。例如,询问“Texas”会找到存储为“TX”的行。
- 考虑 Knowledge Catalog 中存储的数据源的所有上下文。
返回给您的对话回答提供以下功能:
- 以文本、代码或图片(多模态)形式回答您的问题。回答可以包含受支持的 BigQuery AI 和 ML 函数。
- 在适当情况下生成图表。
- 智能体得出结果背后的推理。
- 有关对话的元数据,例如所使用的智能体和数据源。
当您创建与数据源的直接对话时,Conversational Analytics API 会在没有数据代理提供的上下文和处理指令的情况下解读您的问题。因此,直接对话结果可能不太准确。对于需要更高准确性的情况,请使用数据代理。
您可以使用Google Cloud 控制台在 BigQuery 中创建和管理对话。如需了解详情,请参阅通过对话分析数据。
准备工作
-
启用 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) 角色。此角色会在您配置政策标记时分配给主账号。如需了解详情,请参阅用于列级访问权限控制的角色。 - 如果数据表使用行级访问权限控制,则您必须通过该表上的角色级访问权限政策获得访问权限。如需了解详情,请参阅创建或更新行级访问权限政策。
- 如果数据表使用数据遮盖,则您必须通过相应的数据政策获得遮盖读取者 (
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 会在没有数据代理提供的上下文和处理指令的情况下解读您的问题。
您可以与以下数据源创建对话:
- 表
- 视图
- 数据集
- 项目
- 图表
使用“代理”页面与数据源对话
如需在代理页面中创建与表、视图或图表的直接对话,请按以下步骤操作:
前往 BigQuery 代理页面。
在对话标签页上,点击发起新对话。
在与数据对话窗格中,点击知识来源标签页。如果您的数据源未显示在列表中,您可以搜索该数据源。
选择一个或多个数据源,然后点击对话。
如需创建与多个项目的直接对话,请按以下步骤操作:
前往 BigQuery 代理页面。
在提问字段中,输入问题。默认情况下,对话会引用当前项目中的所有数据源。
如需选择其他项目,请点击项目名称下拉菜单,然后选择一个或多个项目。对话会引用所选项目中的所有数据源。
点击 send_spark 发送。
系统会打开一个新对话,其中包含所选项目。
使用 BigQuery Studio 与数据源对话
如需使用 BigQuery Studio 与数据源创建直接对话,请选择以下选项之一。
与数据集、表、视图或图表对话
如需创建与数据集、表、视图或图表的直接对话,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery Studio 页面。
在左侧窗格中,点击 探索器。
在探索器窗格中,展开您的项目,点击数据集,然后选择一个数据集。数据集页面随即会打开。
点击相应数据集将其打开。
如需与数据集对话,请点击 chat_spark 对话。
如需与数据集中的表或视图对话,请按以下步骤操作:
在概览标签页上,点击表。
在表 ID 列中,点击指向表或视图的链接。
点击 chat_spark Chat。
如需与图表对话,请按以下步骤操作:
在概览标签页上,点击图表。
在图表 ID 列中,点击指向图表的链接。
点击 chat_spark Chat。
数据集
通过创建与数据集的对话,您可以提出有关数据的问题,而无需明确列出数据源。当您创建与数据集的对话时,数据代理可以访问该数据集中的所有表。当您提出问题时,数据代理会查找相关表,并在必要时将其联接起来以生成答案。
与查询结果对话
运行查询后,您可以根据结果发起新对话。 数据源是缓存结果的临时表,通常会保留 24 小时。缓存的结果过期后,您将无法提出有关数据的问题。
如需通过查询结果创建对话,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery Studio 页面。
切换到 search_insights 查询编辑器标签页,或依次点击 arrow_drop_down > SQL 查询。
输入 SQL 查询,然后点击 play_circle 运行。
在结果标签页中,点击 chat_spark 对话。
如何与数据源进行对话
点击数据源的对话选项后,即可开始对话。如需进行对话,请执行以下操作:
在提问字段中,输入您的问题并选择一种模式:
- 快速(默认):最适合处理大多数问题。
- 思考:详细推理。
点击 send_spark 发送。
Conversational Analytics API 会处理您的问题并返回结果。 如果数据适合,回答会提供图片、图表、表格和其他可视化内容。
如需查看数据智能体为回答您的问题而执行的每个步骤,请展开回答中的显示思考过程选项。
如需查看有关结果计算方式的信息,请点击 这是如何计算出来的?
摘要部分包含生成的查询,后跟查询结果。您可以选择在查询编辑器中打开查询。
通过对话创建数据代理
您可以通过与表或视图的对话创建数据代理。您无法通过与数据集的对话创建自定义代理。
如需通过对话创建数据代理,请按以下步骤操作:
在对话的详细信息窗格中,点击创建代理。
在编辑器部分的代理名称字段中,输入数据代理的描述性名称,例如
Q4 sales data或User activity logs。在代理说明字段中,输入数据代理的说明。好的说明会解释智能体的用途、使用的数据,并帮助您了解何时适合与此数据智能体对话,例如
Ask questions about customer orders and revenue。在知识来源部分中,验证知识来源中的条目。您可以自定义现有数据源,也可以点击添加来源以添加其他数据源。如果您的数据源未显示在列表中,您可以搜索该数据源。
完成更改后,点击保存草稿。
点击发布。
导出数据代理的回答
如需将数据代理提供的回答导出为 PDF 或 CSV 文件,请完成以下步骤:
找到要保存的代理回答。
点击 下载按钮。从以下选项中进行选择:
- PDF:每个表格最多包含 20 行。
- 详细 PDF:每个表格最多包含 1,000 行。
- CSV:每个表最多包含 5,000 行。
文件会通过浏览器下载。
管理会话
您可以在代理页面上打开、重命名或删除对话,并在 BigQuery Studio 探索器中管理对话。
打开现有对话
在 Google Cloud 控制台中,前往 BigQuery 代理页面。
在对话标签页的对话列表中,点击要打开的对话。
重命名对话
在 Google Cloud 控制台中,前往 BigQuery 代理页面。
在对话标签页的对话列表中,点击要重命名的对话。
点击 查看操作 > 重命名。
在重命名对话对话框中,在对话名称字段中输入对话的新名称。
点击重命名。
删除对话
即使底层数据源被删除,对话中问题的结果也会保留。如需删除对话及其包含的所有结果,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery 代理页面。
在对话标签页的对话列表中,点击要删除的对话。
点击 查看操作 > 删除。
在要删除对话吗?对话框中,点击删除。
如果您在 180 天内未更新对话,BigQuery 会自动将其删除。
使用 BigQuery Studio 探索器管理对话
使用 BigQuery Studio Explorer 管理对话。此对话列表提供了一个集中位置,供您搜索、打开或创建对话。您还可以复制对话 ID 或刷新对话列表。
如需管理对话,请按以下步骤操作:
前往 BigQuery Studio 探索器页面。
在探索器窗格中,展开项目名称。
点击对话。
- 如需过滤对话列表,请在过滤条件字段中输入属性名称或值。
- 如需打开对话,请依次点击 查看操作 > 打开。
- 如需复制对话 ID,请点击 查看操作 > 复制 ID。
- 如需创建对话,请在菜单栏中点击创建对话。
- 如需刷新列表,请点击菜单栏中的刷新。