使用 Databricks 助手
Databricks 助手是一种上下文感知 AI 助手,可帮助你使用 Databricks 笔记本、SQL 编辑器、作业、AI/BI 仪表板和文件编辑器。 使用对话界面寻求帮助时,Databricks 助手可帮助处理数据和代码。
对于帐户:禁用或启用 Databricks 助手功能
默认启用 Azure AI 支持的 Databricks 助手功能。 但是,帐户管理员可以为帐户中的所有工作区禁用 Azure AI 支持的助手功能。 帐户管理员还可以为整个帐户强制启用 Databricks 助手:
提示
系统会以帐户事件的形式,在你的审核日志中记录为帐户启用或禁用 Azure AI 支持的 Databricks 助手功能的操作,请参阅帐户事件。
作为帐户管理员,登录到帐户控制台。
重要
如果 Microsoft Entra ID 租户中没有用户登录到帐户控制台,则你或租户中的其他用户必须作为第一个帐户管理员登录。为此,你必须成为 Microsoft Entra ID 全局管理员,但仅当你首次登录到 Azure Databricks 帐户控制台时才需要这样做。 首次登录时,你将成为 Azure Databricks 帐户管理员,并且不再需要使用 Microsoft Entra ID 全局管理员角色来访问 Azure Databricks 帐户。 第一个帐户管理员可以将 Microsoft Entra ID 租户中的用户分配为其他帐户管理员(这些管理员可以分配更多的帐户管理员)。 其他帐户管理员不需要 Microsoft Entra ID 中的特定角色。 请参阅管理用户、服务主体和组。
单击“设置”。
单击“功能启用”选项卡。
对于“启用 Azure AI 支持的功能”选项,请选择“关闭”或“开启”。
使用“强制”设置阻止工作区替代:
若要了解用于 Azure AI 支持的 Databricks 助手功能的服务,请参阅受合作伙伴支持的 AI 辅助功能设置管理的功能。
对于工作区:禁用或启用助手功能
如果你的帐户管理员启用了助手,则它默认在工作区中启用。 除非帐户管理员已选择强制实施该设置,否则工作区管理员可以为其工作区禁用该设置。
若要在工作区中禁用 Databricks 助手,请执行以下操作:
- 单击 Databricks 工作区顶部栏中的用户名 >设置。
- 在左侧窗格中的“工作区管理员”下,单击“高级”选项卡。
- 若要禁用助手,请单击“Azure AI 支持的 AI 助手功能”的“关闭”开关。
助手窗格导览
本部分介绍“助手”窗格的默认体验。
若要打开“助手”窗格,请单击左侧栏中的 。
在“助手”窗格底部的文本框中键入问题,然后按 Enter 或单击文本框右侧的 。 助手会显示其答案。 以下屏幕截图显示了助手在“助手”窗格中生成代码后你可以执行的操作。
可以再次运行同一查询以生成另一个答案。 为此,请将光标悬停在答案上,然后单击 。
若要关闭窗格,请再次单击该图标,或单击单元格右上角的 。 可以通过单击 将窗格展开为全宽;单击 可将窗格返回到默认宽度。
即使关闭窗格或笔记本,“助手”窗格也会跟踪对话。 若要清除以前的对话,请单击“助手”窗格右上角的 。
线程和提示历史记录
对话线程将保存在可以使用 Databricks 助手的不同上下文中。 在“助手”窗格中,可以创建新的对话线程、查看问题和提示历史记录和管理 Databricks 助手体验。
Databricks 助手根据提示的上下文为线程命名,以便可以浏览助手对话的历史记录。 以下示例来自一个有关笔记本的问题。
在笔记本单元格中使用 Databricks 助手
在笔记本中,Databricks 助手可在“助手”窗格中使用,也可在代码单元格中内联使用。
要直接在代码单元格中使用 Databricks 助手,请按 MacOS 上的 Cmd + i 或 Windows 上的 Ctrl + i。 单元格中将显示一个文本框。 可以用英语键入问题或注释,然后按 Enter(而不是像运行单元格一样按 Shift+Enter),以要求助手生成响应。
对提示使用斜杠命令
斜杠命令是创建常用提示的快捷方式。
提示文本 | 助手的作用 |
---|---|
/ |
显示常见命令 |
/doc |
注释差异视图中的代码 |
/explain |
提供单元格中代码的说明 |
/fix |
建议修复差异视图中的任何代码错误 |
/findTables |
基于 Unity Catalog 元数据搜索相关表。 |
/findQueries |
基于 Unity Catalog 元数据搜索相关查询。 |
/optimize |
改进低效的 SQL 查询。 |
/prettify |
设置代码的格式以提高可读性。 |
/rename |
根据上下文,建议笔记本单元格和其他元素的更新名称。 |
/settings |
直接从助手调整笔记本设置。 |
使用 /fix
或 /doc
时,在差异窗口中,选择“接受”以接受建议的更改,或选择“拒绝”以保留原始代码。 如果接受建议的代码,则代码不会自动运行。 可以在运行代码之前查看代码。 如果生成的代码不是所需代码,请重新尝试,在注释中添加更多详细信息或信息。 请参阅有关使用 Databricks 助手的提示。
获取代码片段的详细说明。 使用 /explain
提示并包含“简洁”或“逐行解释代码”等术语,以请求所需的详细信息级别。 还可以要求 Databricks 助手向代码添加注释。
对于代码自动完成,使用“助手”窗格可能比在笔记本单元格中性能更好。
如果“接受”或“拒绝”生成的代码,助手会自动关闭。
使用 @
在提示中引用表
若要快速引用助手提示中的表,请使用 @
(at) 符号。
获取有关代码的帮助
Databricks 助手可以帮助处理 SQL 和 Python 代码:
- 在 Databricks 笔记本、SQL 编辑器和文件编辑器中基于 AI 自动完成。
- 使用自然语言提示语筛选数据。
- 使用 诊断错误 (公共预览版)进行代码调试。
注意
内联代码建议在 Azure 政府区域或符合 FedRAMP 的工作区中不可用。
使用自然语言提示筛选数据
使用 Databricks 助手通过自然语言提示筛选数据输出。
若要使用自然语言筛选输出,请单击输出表中的“筛选”图标并输入提示。 例如,如以下动画示例所示,可以提示“仅显示 70 岁以上的男性”。
获取内联代码建议:Python 和 SQL 示例
当你键入时,建议会自动出现。 按 Tab 接受建议。 要手动触发建议,请按 Option + Shift + 空格键(在 macOS 上)或 Control + Shift + 空格键(在 Windows 上)。
基于 AI 的自动完成功能还可以从注释生成代码:
调试代码:Python 和 SQL 示例
重要
此功能目前以公共预览版提供。
要使用 Databricks 助手修复代码,请执行下列操作之一:
- 在“助手”窗格中提问。
- 发生错误时,单击单元格结果中显示的“诊断错误”按钮。
- 单击“调试”以交互方式逐行执行代码、设置断点、检查变量和分析程序的执行情况。
下面的选项卡显示了 Python 和 SQL 代码中的示例:
Python
SQL
单击“诊断错误”时,助手会自动运行 /fix
。
快速修复
当代码返回错误时,快速修复会自动对可通过单行更改修复的基本错误建议修复。
单击“接受并运行”以进行建议的修复并继续运行代码:
诊断作业中的错误(公共预览版)
重要
此功能目前以公共预览版提供。
Databricks 助手可帮助诊断作业中的错误。
若要使用助手来诊断作业,请执行以下操作:
- 从“作业”UI 中打开一个失败的作业。
- 选择“诊断错误”。
从 Azure Databricks 文档中获取答案
在笔记本编辑器中,Databricks 助手可以根据 Databricks 文档回答问题。 在提示框中输入问题或提示。
有关使用 Databricks 助手的提示
本部分包括使用 Databricks 助手时的一些常规提示和最佳做法。
Databricks 助手使用上下文来提供更好的答案
Databricks 助手可访问表和列架构以及元数据。 可让你使用自然语言并生成更准确的查询。 例如,如果表包含名为“州”的列,则可以要求 Databricks 助手生成居住在密歇根州的用户列表。
Databricks 助手使用以下上下文:
- 当前笔记本单元格或 Databricks SQL 编辑器选项卡中的代码或查询。
- 表和列的名称和说明。
- 以前的提示问题。
- 收藏和活动表。
- 对于“诊断错误”功能,堆栈跟踪来自错误输出。
从 DataFrame 中选择列时,可以通过提供起始查询来获取更准确的结果。 例如,提供类似于 SELECT * FROM <table_name>
的语句。 这样 Databricks 助手就可以获取列名,而无需猜测。
由于 Databricks 助手使用对话历史记录来提供更好、更准确的答案,因此可以要求 Databricks 助手更改先前响应的输出,而无需重写整个提示。 使用助手的聊天历史记录在“助手”窗格中对数据帧进行反复清理、探索、筛选和切片。
更具体些
Databricks 助手提供的结构和详细程度不时变化,即使相同的提示也是如此。 尝试为助手提供尽可能多的指导,帮助它以所需格式、详细程度等返回所需信息。 例如:
- “用几个句子解释此代码”或“逐行解释此代码”。
- “使用 MatPlotLib 创建可视化效果”或“使用 Seaborn 创建可视化效果”。
提供行级数据值的示例
由于 Databricks 助手不使用行级数据,因此你可能需要向提示提供更多详细信息以获取最准确的答案。 使用 Catalog Explorer 中的表或列注释添加一行示例数据。 例如,假设你的高度列采用格式 feet
-inches
。 为了帮助助手解释数据,请添加注释,例如“高度列采用字符串格式,并用连字符分隔。 示例:'6-2'。” 有关表格和列注释的信息,请参阅为数据和 AI 资产添加注释。
如果需要使用列数据类型转换来运行操作,可能需要提供详细信息。 例如:“将此代码从 pandas 转换为 PySpark,包括将 pandas DataFrame 转换为 PySpark DataFrame 所需的代码,以及将列变动的数据类型从布尔值更改为整数”。
使用 Shift+Enter 在聊天文本框中添加新行
使用 Shift+Enter 在助手聊天文本框中添加新行。 这样可以轻松地设置消息格式并将消息组织到 Databricks 助手。
在 Databricks 助手聊天窗格中编辑和运行代码
在“助手”窗格中运行代码以进行验证,或将其用作暂存板。 若要运行代码,请单击“助理”窗格中代码框左上角的 。
下面的选项卡显示了 Python 和 SQL 代码的示例:
Python
SQL
在“助手”窗格中运行代码时,将显示输出,变量在笔记本中变得可用。
还可以编辑 Databricks 助手在将代码移动到笔记本之前直接在助手聊天框中生成的代码。
其他信息
以下文章包含有关使用 Databricks 助手的其他信息: