什么是 AI/BI Genie 空间

本文介绍 AI/BI Genie,这是一项 Azure Databricks 功能,它允许业务团队使用自然语言与其数据进行交互。 它使用专为组织的术语和数据定制的生成 AI,并能够通过用户反馈监视和优化其性能。

概述

领域专家(例如数据分析师)使用数据集、示例查询和文本指南配置 Genie 空间,帮助 Genie 将业务问题转化为分析查询。 设置后,业务用户可以提出问题并生成可视化效果以了解运营数据。 随着数据的变化和用户提出新问题,你可以持续更新 Genie 的语义知识。 有关 Databricks AI 提供支持的功能的其他信息,请参阅 Databricks AI 提供支持的功能

AI/BI Genie 从带批注的表和列中选择相关名称和说明,以将自然语言问题转换为等效的 SQL 查询。 然后,如果可能,它会使用生成的查询和结果表做出响应。 如果 Genie 无法生成答案,可以在提供回复之前提出后续问题来澄清。

示例用例:

可以创建不同的 Genie 空间来服务各种非技术受众。 以下场景描述了两种可能的用例。

示例 1:可视化机会状态

销售经理希望了解其销售渠道中各个阶段开放和已关闭机会的当前状态。 他们可以使用自然语言与 Genie 空间进行交互,并自动生成可视化结果。

下面的 gif 显示了这种交互:

包含示例问题、回答和自动生成的可视化效果的 Gif

示例 2:跟踪物流

一家物流公司希望使用 Genie 空间帮助不同部门的业务用户跟踪运营和财务详细信息。 他们为货运设施经理设立了一个 Genie 空间来跟踪货运情况,并为财务主管设立了另一个空间来了解其财务状况。

Genie 如何生成响应

Genie 使用 复合 AI 系统 来解释业务问题和生成答案。 复合 AI 系统通过组合多个交互组件来处理 AI 应用程序中的任务,而不是使用单个大型语言模型。 复合 AI 系统是 AI 应用程序的越来越常见的设计模式,因为它们的性能和灵活性。 有关详细信息,请参阅 从模型转移到复合 AI 系统

当用户提交问题时,Genie 会分析请求、标识相关的数据源,并确定如何响应提示。 你提供的说明与 Unity 目录元数据相结合,允许 Genie 推断业务和技术逻辑。 Genie 智能地筛选示例 SQL 查询、表和列元数据以及聊天历史记录,以选择响应请求的最相关信息。

Genie 使用以下组件生成响应:

  • 表元数据:包括表名称、说明和定义的主键(PK)和外键(FK)关系。 Genie 使用此数据,因为它分析请求并将自然语言提示转换为 SQL。
  • 列名和描述:Genie 可智能筛选要包含的相关列名和描述。
  • 示例 SQL 查询:Genie 从 指令智能地选择相关的 SQL 示例。
  • SQL 函数:已添加到空间中的所有 SQL 函数。
  • 说明:作为“常规说明”提供的纯文本说明以上下文形式提供。
  • 提示和响应历史记录:当前聊天中的提示和响应作为上下文包含在内。 由于设置了令牌限制,将根据需要排除时间最早的聊天记录。

注意

默认情况下不包括某些表详细信息,例如所有者和表大小。 若要访问此信息,请使用可用于所有 Unity 目录的信息架构中的视图。 默认视图可能包含不必要的详细信息,因此,基于该视图创建自定义视图有助于专注于所需的特定信息。 有关信息架构中可用内容的详细信息,请参阅 信息架构

在许多情况下,Genie 会生成在空间的 SQL 仓库上运行的 SQL 查询。 生成的查询始终为只读。 重试处理自动化,SQL 仓库负责并发性和扩展性。 结果集作为响应的一部分显示。

应使用什么数据?

Genie 空间基于注册到 Unity Catalog 的数据,包括托管表、外部表、外部数据库表、视图、度量视图和物化视图。 AI/BI Genie 使用附加到 Unity Catalog 对象的元数据来生成回复。 带有明确批注的数据集以及你提供的具体指令,是为最终用户创造积极体验的关键。

Databricks 建议如下:

  • 整理数据以供分析使用:分层视图以减少列数并添加特定于用例的信息以提高回复质量。
  • 最小化 Genie 空间中的表和列数:仅包含回答给定域问题所需的表和列。 不必要的表或列可能会导致 Genie 提供令人困惑或不正确的答案或显示错误消息。
  • 定义主键(PK)/外键(FK)关系:使用 Unity 目录定义 PK/FK 关系,以便 Genie 了解数据的连接方式。

文件上传

重要

此功能目前以公共预览版提供。

用户还可以将自己的小型数据文件上传到 Genie 空间。 若要启用文件上传,请联系 Databricks 帐户团队。 有关详细信息,请参阅上传文件

受信任资产

可信资产为空间用户的结果准确性增加一层保障。 当参数化示例查询或 SQL 函数的确切文本用于生成响应时,Genie 会将响应标记为 “受信任”。 请参阅在 AI/BI Genie 空间中使用受信任的资产

与 Genie 聊天

Genie 空间中的大多数交互发生在聊天窗口中或使用 Genie API(公共预览版)。 在 Genie 空间 UI 中,每个用户都可以访问会话的线程记录。 每个对话都会保留该线程中以前交互的上下文,这有助于 Genie 了解后续问题,并帮助用户优化或探索其结果。

至少对空间具有 CAN VIEW 访问权限的用户可以查看自己的聊天历史记录。 具有至少 CAN EDIT 权限的用户可以查看空间的 “监视 ”选项卡中的所有问题和答案。

查看响应

大多数响应包括自然语言说明和显示相关结果集的表。 源表显示在说明下方,用于生成结果的 SQL 查询在响应详细信息中可用。 当需要可视化效果来提高清晰度时,Genie 会包含一个可视化效果。 每个响应的结构取决于问题。

空间用户和作者可以查看其问题的回复。 他们可以对响应进行评分和故障排除,或要求评审响应。 空间编辑器和作者可以使用 Genie 空间中的 “监视 ”选项卡查看此反馈。

使用基准评估响应

你可以通过基准测试来扩大 Genie 空间中单个响应的测试和评估。 与指令不同,基准测试旨在评估你的 Genie 空间,而不是向你发出通知。 Genie 不使用基准问题或示例 SQL 来改进 Genie 的上下文。

使用基准测试,可以运行一系列测试问题,并使用响应来衡量 Genie 的准确性。 (可选)可以包含返回预期结果的 SQL 语句。 基准问题运行时,Genie 的响应与 SQL 语句提供的结果进行比较,并针对准确性评分。 如果未提供 SQL 答案,则会标记问题以供评审。

请参阅在 Genie 空间中使用基准

隐私和安全

问:Genie 使用什么模型?

Genie 是 Databricks AI 支持的一项功能。 它使用复合 AI 系统,它结合 AI 模型、检索、排名和个性化系统来了解组织的数据和使用模式。 若要了解详细信息,请参阅 Databricks AI 提供支持的功能

问:正在向模型发送哪些数据?

Genie 在生成响应时使用给定的提示、相关的表元数据和值、错误以及输入的代码或查询。

为了处理响应,Genie 使用以下方法:

  • 用户提交的自然语言提示
  • 表名称和说明
  • 列标题、说明和示例值
  • 一般指引
  • 示例 SQL 查询
  • SQL 函数

问:Azure OpenAI 是否存储我的数据?

否。 通过 Databricks 使用 Azure OpenAI 模型时,Microsoft不会在任何级别存储提示或响应,甚至不会存储在网络日志中。 这包括通常用于滥用监视的数据。 Databricks 已选择退出 Azure OpenAI 的滥用监视和人工评审,因此Microsoft不会保留或检查 Genie 发送的任何数据。 有关详细信息,请参阅 Microsoft的文档

问:Genie 响应存储在何处?

Genie 响应存储在 Azure Databricks 控制平面中。

问:Genie 空间是否支持行级筛选?

是的,Unity 目录授予的权限控制哪些用户可以访问特定数据对象。 如果行筛选器或列掩码应用于数据对象,则它们控制结果集中返回的值。 请参阅使用行筛选器和列掩码过滤敏感表数据

问:我的流量是如何通过 Geos 路由的?

  • Genie 部署在美国、欧盟、澳大利亚和印度。

  • 流量路由取决于你的区域,以及是否启用了跨地理位置处理指定服务的工作区地理位置内的数据处理禁用):

    • 欧盟:无论异地处理如何,流量始终通过欧盟。
    • 美国:无论异地处理如何,流量始终通过美国路由。
    • 印度和 AUS
      • 如果禁用跨地理处理:流量保证留在您的区域内。
      • 如果 启用了跨地理位置处理:流量始终通过美国路由。
    • 所有其他区域
      • 如果 禁用跨地理处理:Genie 将不起作用。
      • 如果启用跨区域处理,流量将通过美国进行路由。