本文介绍如何设置和管理 Genie 空间,这是业务用户的聊天界面,用于询问其数据的自然语言问题。
技术要求和限制
使用 Genie 空格时,需要满足以下要求和限制:
- Unity 目录: Genie 空间的数据必须注册到 Unity 目录。 最多可以向 Genie 空间添加 25 个表或视图。
- 计算:Genie 空间需要专业版或无服务器 SQL 仓库。 在所选仓库中,您必须至少获得 CAN USE 权限。 如果缺少此权限,则空间创建将失败。
- 吞吐量: 每个工作区可在所有 Genie 空间中每分钟处理最多 20 个问题。
- 能力: 每个 Genie 空间最多可以支持 10,000 个对话,每个对话最多可以包含 10,000 条消息。
所需权限
创建、编辑和使用 Genie 空格需要以下权限:
- 计算权限: Genie 空间创建者、编辑器和用户至少需要对为空间指定的默认 SQL 仓库具有 CAN USE 访问权限。
-
数据访问权限: Unity 目录授予的权限控制哪些用户可以访问特定数据对象。 任何与该空间交互的用户至少需要该空间中数据使用的
SELECT
权限。 - Genie 空间权限: 用户需要 Genie 空间上的 CAN RUN 权限才能与 Genie 交互。 请参阅 Genie 空间 ACL,了解 Genie 空间的特权和能力的完整映射。
注意
配置数据和计算访问权限需要更高权限,而这些权限通常仅限管理员使用。 请参阅 创建 SQL 仓库 和 管理 Unity 目录中的特权。
管理 Genie 访问权限
Genie 使用 Azure AI 支持的 AI 辅助功能,这些功能必须在帐户级别启用。 若要了解如何管理帐户的这些功能,请参阅 “启用并试用 Databricks 助手”。
注意
你必须是帐户管理员才能管理对此功能的访问权限。 如果禁用 Azure AI 支持的辅助 AI 功能,则具有 Databricks SQL 权利的用户仍然可以单击侧栏中的 Genie 图标,但无法访问任何 Genie 空间。
创建 Genie 空间
创建一个“Genie”空间:
- 单击边栏中的Genie。
- 单击屏幕右上角的“新建”。
- 选择要包含在 Genie 空间中的数据源。 然后,单击“ 创建”。
注意
- 如果工作区启用了 Genie 数据采样,可以通过选择或清除 “连接您的数据” 对话框中的复选框来管理数值字典是否添加到 Genie 空间的上下文中。 有关详细信息,请参阅 使用值采样来提高 Genie 的准确性。
- Genie 空间可以包含多个指标视图。 但是,如果它包含指标视图,则不能同时包含其他类型的表或视图。 若要了解有关指标视图的详细信息,请参阅 Unity 目录指标视图。
查看查询建议
向空间添加数据资产时,Genie 会自动搜索与这些资产相关联的工作区查询。 您的用户凭据被用于查找您至少具有 CAN VIEW 权限的相关查询。 请参阅查询 ACL。 如果搜索返回查询,则上下文面板的“数据”选项卡中会显示一条通知。 单击“ 查看” 以查看建议的查询。
使用“ 审阅建议的查询 ”对话框可以查看、编辑、接受或拒绝建议的查询。 在 Genie 空间上具有至少 CAN EDIT 访问权限的其他用户可以查看查询,前提是他们至少对查询本身具有 CAN VIEW 访问权限。
- 标题文本已预先填充并包含一个问题。 通过在 “标题 ”字段中键入内容来修改或编辑问题。
- “代码”字段包含建议的 SQL 查询的完整文本。 此字段不可编辑。 若要查看完整查询,请单击 ...更多行。
- 如果对查询具有足够的权限,可以单击 SQL 查询 以在 查询历史记录 UI 中打开查询。 请参阅查看查询历史记录。
- 确定查询是否与空间相关后,单击“ 接受 ”或 “拒绝 ”将其添加到空间或相应地关闭建议。
- 单击其他建议以展开并查看。
接受的查询显示在空间的 SQL 查询 上下文中。 将查询添加到空间后,建议的查询和关联的问题是完全可编辑的。 请参阅 “添加示例 SQL 查询和函数”。
如果未返回建议的查询:
- 你可能没有足够的权限来访问相关查询。
- 可能没有任何相关数据。 如果查询尚未在包含的表中运行,则搜索可能不会返回结果。
- 不考虑与 Genie 空间无关的查询。 例如,仅对包含的资产执行基本写入操作的查询,Genie 不将其视为相关示例。
- Genie 不会建议查询未添加到空间中的表。 如果已专门为 Genie 空间创建了联接表或视图,但相关的 Databricks SQL 查询通常针对不同的源表运行,Genie 不会在结果中返回这些查询。
管理数据
若要管理 Genie 空间中包含的数据,请单击“ 配置>上下文>数据 ”以查看 Genie 空间中的数据资产。 单击“ 添加 ”按钮可添加更多表。 单击表名称右侧的以从空间中删除表。
查看列
要查看详细的列视图,请单击表名称。 以下示例演示了名为 帐户的表的示例。
描述: Genie 使用元数据来了解数据并生成准确的响应。 此视图中的默认表说明显示与数据资产关联的 Unity 目录元数据。 可以编辑此说明,为 Genie 空间添加特定上下文。 此处所做的任何更改都限定于此空间,不会覆盖存储在 Unity 目录中的元数据。 单击 “重置” 以还原 Unity 目录说明。
列: 列名和说明包含在列列表中。 每列都标有标记,这些标记显示它是否包括 示例值 或 值字典 (公共预览版)。 请参阅 使用值采样来提高 Genie 的准确性 和 编辑列元数据。
启用或禁用值采样
如果在工作区中启用了 Genie 数据采样 (公共预览版),Genie 会自动从创建空间期间添加的表中采样值。 请参阅 使用值采样来提高 Genie 的准确性。 如果在创建空间时未启用值采样,则可以为空间中的每个表启用该值采样。
若要为所有列启用值采样,请执行:
- 单击
“列”标题中的“烤肉串”菜单。
- 单击“ 为所有列启用值采样”。
若要禁用所有列的值采样:
- 单击
“列”标题中的“烤肉串”菜单。
- 单击“ 禁用所有列的值采样”。
显示或隐藏列
不必要的数据可能会让 Genie 在解释时感到困惑。 若要从 Genie 的上下文中删除这些内容,请将鼠标悬停在列上方,然后单击列名称右侧的 。 这将使该列不包括在Genie空间的上下文中。 请再次单击该图标,将列添加回您的界面。
编辑列元数据
若要编辑列元数据、定义列同义词并访问高级设置,请将鼠标悬停在列上,然后单击 编辑图标。 在列对话框中,可以编辑以下内容:
描述: 输入 Genie 空间的列说明。 你的说明仅限于此 Genie 空间。 它不会改写存储在 Unity Catalog 中的元数据。 单击 “重置” 以还原 Unity 目录说明。
同义词: 添加同义词和关键字可以增强 Genie 将用户提示中使用的语言与相应列匹配的能力。 输入企业用户在想要引用此列时可能会在提示中使用的逗号分隔的字词列表。
高深: 使用高级设置来控制对示例值的访问并生成值字典。 Genie 数据采样 (公共预览版)控制对这些功能在工作区级别的访问。 请参阅 要求。 如果对所有列禁用值采样,则无法修改 高级 设置。
- 示例值:默认情况下,此设置允许 Genie 从列中采样几个值,以便更好地了解如何使用它。 禁用此设置以关闭示例值采样。
- 生成值字典:值字典可提高 Genie 对数据的理解。 请参阅 使用值采样来提高 Genie 的准确性。 使用此设置可控制哪些列具有值字典。
添加示例和说明
可以添加示例 SQL 查询、Unity 目录函数和纯文本说明,以帮助生成准确的响应。 单击“ 配置>上下文”。 使用 “SQL 查询 ”选项卡管理查询和 Unity 目录函数。 使用“ 说明 ”选项卡添加纯文本说明。
对于 Genie 空间,总共最多可以添加 100 条说明。 指令类型以下列方式参与计数:
- 每个示例 SQL 查询计为一个。
- 每个 SQL 函数计为一个。
- 整个 常规指令 文本块计为一个。
Genie 空间旨在基于清晰而精确的指导提供一致且可预测的响应。 由于 Genie 以不确定的方式运行,因此务必使指导不受冲突或模糊信息影响,以最大程度地降低不良响应的风险。 设置空间时,关键任务是查看并解决任何不一致问题。 这有助于实现可靠的结果。
添加示例 SQL 查询和函数
使用 “SQL 查询 ”选项卡添加以下内容:
示例查询(建议): 示例 SQL 查询可帮助 Genie 生成正确的 SQL 来回答用户问题。 查询可以静态或参数化。 对于每个示例 SQL 查询,提供一个示例问题和返回预期结果的匹配 SQL。 Genie 可以直接使用示例来匹配问题,也可以从中学习来回答相关问题。 当参数化查询用于生成响应时,它将标记为 “受信任”。 空间中具有 CAN EDIT 权限的用户可以查看用于生成响应的查询,这有助于进行故障排除和优化。
SQL 函数: 对于无法使用静态或参数化 SQL 查询回答的问题,可以将自定义函数注册到 Unity 目录。 可以在团队中共享函数,Genie 可以使用这些函数来回答特定问题。 使用 SQL 函数应答的响应被标记为 “受信任”。 若要详细了解如何在 Genie 空间中使用 SQL 函数,请参阅 在 AI/BI Genie 空间中使用受信任的资产。
Genie 如何使用示例查询
示例查询显示 Genie 如何使用可用数据回答问题。 在文本字段中输入示例问题,然后输入回答该问题的 SQL 查询。 当 Genie 收到匹配的问题时,它可以直接使用示例查询来提供答案。 当 Genie 收到类似的问题时,它会使用示例查询中的线索来学习和构建响应中提供的 SQL。 重点提供突出显示组织和数据特有的逻辑的示例,如以下示例所示:
-- Return our current total open pipeline by region.
-- Opportunities are only considered pipelines if they are tagged as such.
SELECT
a.region__c AS `Region`,
sum(o.amount) AS `Open Pipeline`
FROM
sales.crm.opportunity o
JOIN sales.crm.accounts a ON o.accountid = a.id
WHERE
o.forecastcategory = 'Pipeline' AND
o.stagename NOT ILIKE '%closed%'
GROUP BY ALL;
添加查询参数
参数化示例查询允许空间用户指定要在运行时插入查询中的特定值。 若要详细了解如何使用参数化查询,请参阅 在 SQL 查询中使用参数。
提供使用指南
可以提供 Genie 其他上下文来说明示例查询何时特别相关。
添加使用指南:
- 单击“ 配置>上下文>SQL 查询 ”以访问示例查询的列表。
- 单击示例查询。
- 单击屏幕底部附近的 使用情况指南 。
- 输入有关如何以及何时使用此示例查询的详细信息。
Genie 如何使用 SQL 函数?
当问题涉及无法通过静态或参数化查询捕获的复杂逻辑时,SQL 函数非常有用。 它们存储在 Unity 目录中,可以使用用户提供的参数由 Genie 调用。 Genie 无法查看或修改函数中使用的 SQL,这使得此方法非常适合不应显示或更改的逻辑。 有关在 Unity 目录中注册函数的指导,请参阅
提供说明
单击“ 说明 ”选项卡可编写纯文本说明,帮助 Genie 了解如何回答有关业务的特定问题。 可以将说明的格式格式化为单个综合说明,或按主题对它们进行分类,以便更好地组织。
说明有助于指导 Genie 的响应,以便它可以处理给定域中的唯一行话、逻辑和概念。 常规文本说明适用于所有提示。 如果指令仅与提示的子集相关,则应将其作为示例查询或函数包含在相关表中,或作为注释或元数据记录在相关表中。 文本说明 仅适用于 应全局应用且不适合其他格式的上下文。
以下示例包含一般说明中可以包含的信息:
- **Company-specific business information**:
- Fiscal year starts in February, for example fiscal year 26 or FY26 is February 1, 2026 through January 31, 2027
- **Formatting**:
- Always respond in Spanish
- If no other specification exists, round all decimals to two places
- Omit commas in results for any column including "Id" or "id" or "\_id"
配置参数
通过设置其他选项,您可以自定义您的 Genie 空间。 单击“ 配置>设置” 以访问以下设置:
- 标题:标题与其他工作区对象一起显示在工作区浏览器中。 选择一个标题,以帮助终端用户发现你的 Genie 空间。
- 默认仓库:此计算资源为 Genie 空间中生成的 SQL 语句提供支持。 最终用户需要访问此仓库才能与空间进行交互。 Genie 空间可以使用专业或无服务器 SQL 仓库。 为了获得最佳性能,Databricks 建议使用无服务器 SQL 仓库。
- 说明:用户在打开 Genie 空间时看到说明。 使用此文本区域描述空间的目的。 说明字段支持 Markdown 格式,以便您可以设置文本的样式,并提供指向有用上下文和引用的链接。 有关 Markdown 语法的详细信息,请参阅 Markdown 指南备忘单。
- Genie 文件上传:如果为 Genie 空间启用了文件上传(公共预览版),可以选择 “允许用户将文件上传到对话”。 请参阅 “上传文件”。
- 示例问题:示例问题是可选的。 他们在聊天中显示,提供用户可以提出的问题类型的示例。 可以在创建期间或以后从空间的 “设置”中添加它们。
应根据测试和使用情况对 Genie 空间进行迭代。 有关创建和迭代空间的最佳做法指导,请参阅策展有效的 Genie 空间。
测试 Genie 空间
大多数用户交互发生在聊天窗口中。 了解系统是否符合你的期望的最佳方式是用你期望业务用户询问的现实问题对其进行检验。
空间设置中配置的示例问题将显示在聊天窗口中。 Genie 还可以根据空间的上下文生成示例问题,以帮助用户开始浏览数据。 用户可以单击示例问题或在屏幕底部的文本字段中输入自己的问题。
响应显示在文本字段上方。 用户输入问题后,它将保存到聊天历史记录中。
启动新对话:
- 单击“ 新建聊天 ”以启动新聊天。 单击
打开上一个对话。
- 在“询问问题...”文本输入字段中键入你的问题。
查看响应
响应通常通过用自然语言进行回答,并包含显示相关结果集的表格。 当 Genie 检测到可视化效果可以提高响应清晰度时,它还返回可视化效果。 精确的响应结构因问题而异。 如果生成了 SQL 查询来回答问题,则会包含在响应中。
注意
与其他大型语言模型(LLM)一样,Genie 可以表现出不确定性行为。 这意味着,在多次提交同一提示时,有时可能会收到不同的输出。 提供 Genie 可以从中学习的示例 SQL 查询有助于使 Genie 更加一致。 请参阅 “添加示例 SQL 查询和函数”。
响应反馈
每个响应都会提示用户回答这是否正确? 用户可以通过以下方式之一做出响应:
- 是的: 确认响应显示准确。
-
修复此问题: 将响应标记为不正确。 用户可以从常见问题中进行选择,也可以输入自己的说明。 然后,他们可以:
- 单击“ 提交”,然后重试 ,使用提供的反馈重新生成响应。
- 单击“ 提交 ”以发送反馈,而无需重新生成响应。
- 请求评审: 将响应标记为需要手动评审。 用户可以添加可选注释,以便提供其他上下文。
作为编辑,您可以在 Genie 界面中查看反馈和标记的回复。 Genie 空间的行为不会仅仅因为用户反馈而发生改变。 应使用反馈来识别改进机会或直接响应用户问题。 Databricks 建议鼓励用户使用此机制提供有关空间的反馈。
业务用户可以在其 “监视 ”页面上查看已标记为审阅的问题的更新。 对 Genie 空间具有至少 CAN MANAGE 权限的用户可以查看特定交换、对请求发表评论以及确认或更正响应。 他们可以访问监视页上的反馈和评审请求。 然后,您可以使用这些反馈来调整响应,并对您的工作区域进行迭代改进。 请参阅监视空间。
建议的后续问题
Genie 使用空间说明和对话上下文来建议后续问题。 这些问题可帮助用户从不同角度浏览数据或收集新见解。
其他响应措施
对于包含生成的 SQL 的响应,可以使用其他选项与返回的数据进行交互。
- 下载所有行: 空间用户可以将最多 1GB 的结果数据下载为 CSV。 最终文件下载大小可能略高于或小于 1GB,因为 1GB 限制应用于比最终文件下载的更早步骤。 若要下载结果,请单击响应中的下载图标。
- 添加为说明: 对于可能可用于教学 Genie 如何回答类似问题的交互,请单击“ 添加为说明”。 这将打开一个用于保存样本 SQL 查询的用户界面,其中填写了问题和生成的 SQL。 可以将示例保留为写入状态,也可以编辑和保存以进行更改。 请参阅 “添加示例 SQL 查询和函数”。
- 显示代码: 单击“ 显示代码 ”以查看生成的查询。 这对于排查不可靠的响应非常有用。 请参阅 “编辑”并保存查询。
-
kebab 菜单:用户可以将响应 CSV 复制到其剪贴板,或者通过运行以前生成的查询来刷新数据。
若要编辑可视化效果,请单击可视化效果右上角的编辑图标。 还可以在获取查询结果后,通过用语言描述来生成可视化。 请参阅生成可视化效果。
格式化结果
若要在响应中格式化表的某一列,请单击列标题中的 ,然后单击 “格式” 以查看可用选项。 格式设置选项取决于列的数据类型。
编辑和保存查询
可以审核和必要时编辑 Genie 的 SQL 查询以确保准确性。 Genie 空间作者通常了解相关的领域和数据,这使他们能够辨别何时 Genie 会生成错误答案。 通常,可以通过少量手动优化来修复生成的 SQL 查询的错误。 单击“ 显示生成的代码 ”检查查询并查看生成的 SQL 以获取任何响应。
如果对 Genie 空间拥有 CAN EDIT 或更高权限,则可以编辑生成的 SQL 语句以更正它。 更正后,运行查询。 然后,你可以将其保存为说明,以教 Genie 如何在将来回答。 若要保存编辑的查询,请单击“ 添加为说明”。
生成可视化效果
可以要求将特定可视化效果包含在响应中。 对于许多问题,Genie 会自动生成可视化效果以及结果集。
若要隐藏自动生成的可视化效果,请单击 折叠图标。 若要再次显示它,请单击“ 显示可视化效果”。
可以在聊天窗口中编辑可视化效果。
支持以下图表类型:
- 面积
- 酒吧
- 行
- 馅饼
- 点图
- 散点图
要编辑可视化效果:
- 在可视化效果的右上角,单击
编辑图标。 此时会在页面右侧打开编辑窗格。
- 从 “可视化效果 ”下拉菜单中选择不同的图表类型。
- 对于大多数图表类型,请使用 X 轴 和 Y 轴 下拉菜单来选择每个轴上表示的值。 对于“饼图”,请使用“角度”下拉菜单选择要表示的列。
- (可选)若要自定义配色方案,请单击 + 类别中的 。
- (可选)若要在将鼠标悬停在可视化效果上时选择要显示在工具提示中的数据,请单击 + 部分中的 。
监视空间
可将 Genie 空间视为数据团队与业务用户之间的长期协作工具。 它随着时间的推移积累知识,而不是充当一次性部署。 当用户提出新问题时,可以优化空间以提高覆盖范围和准确性。
使用“ 监视 ”选项卡查看各个问题和回复,查看用户反馈,并确定标记为审阅的响应。
监视选项卡显示空间中已询问的所有问题及其回答。 可以按时间、分级、用户或状态筛选问题。 通过监视空间,Genie 空间编辑器可以主动了解业务用户提出的查询以及 Genie 空间的响应方式。
确定 Genie 难以解决的问题可以帮助你使用特定说明更新 Genie 空间,以改进其响应。 单击问题以打开问题和回复文本,并查看完整的聊天线程。
共享 Genie 空间
重要
Genie 空间用户必须使用自己的凭据来访问数据。 有关他们无法访问的数据的任何问题都生成空响应。
Genie 空间用户必须对附加到 Genie 空间的仓库拥有 CAN USE 权限,并且对空间中浮出水面的 Unity 目录对象具有访问权限。 请参阅 我应使用哪些数据?。
默认情况下,新建的 Genie 空间会保存到您的用户文件夹中。 与其他工作区对象一样,它们从其封闭文件夹中继承权限。 可以使用工作区文件夹结构与其他用户共享它们。 请参阅 将工作区对象组织到文件夹。
还可以指定要在给定权限级别共享的某些用户或组:CAN MANAGE、CAN EDIT、CAN RUN 和 CAN VIEW。
若要与特定用户或组共享,请执行以下操作:
- 单击“共享”。
- 输入要与之共享空间的用户或组。 然后,单击 添加 并设置适当的权限级别。 单个用户和小型组的成员会收到一封电子邮件通知,确认空间已共享。
- 使用“共享”对话框底部的“复制链接”按钮来获取指向 Genie 空间的可共享链接。 特权用户可以单击链接以在新选项卡中打开 Genie 空间并提出问题。
克隆 Genie 空间
克隆 Genie 空间会创建一个副本,其中包含所有设置背景信息和指令。 如果要测试单独空间中的更改或在新的空间中重复使用原始上下文,则克隆非常有用。 克隆空间后,新空间独立于原始空间。 可以进行编辑和调整,而不会影响原始内容。
将复制以下元素到副本 Genie 空间中:
- 表和设置
- 常规指示
- SQL 查询示例
- SQL 函数
现有聊天线程和 监视 数据不会复制到新空间。
若要克隆 Genie 空间,请执行以下操作:
- 打开要克隆的 Genie 空间。
- 单击
空间右上角的烤肉串菜单。
- 单击“克隆”。
- (可选)在“克隆”对话框中,指定克隆的 Genie 空间的新名称和工作区文件夹路径。
- 单击克隆以创建新空间。
空间准备的最佳做法
有关最佳实践和故障排除指导,请参阅策划高效运营的 Genie 空间。
监视使用情况
可以使用审核日志监视 Genie 空间的使用情况。 请参阅 AI/BI Genie 事件。
使用 Genie 对话 API
重要
此功能目前以公共预览版提供。
Genie 对话 API 公开现有 Genie 空间的终结点,可在其中提问、检索生成的 SQL 和查询结果,或获取与 Genie 空间关联的详细信息。 对话 API 的吞吐量速率是按照尽力而为的原则维持的,具体取决于系统容量。 在正常或低流量条件下,每个工作区的请求限制为每分钟 5 个查询。 在高峰使用期间,实际吞吐量可能会降低,因为根据可用容量处理请求。 若要开始使用 Genie 对话 API,请参阅 使用 Genie 对话 API 将 Genie 集成到应用程序中。
创建多代理系统
若要了解如何使用 Mosaic AI Agent Framework 创建多代理系统,请参阅 在多代理系统中使用 Genie。