安装笔记本依赖项
可以使用“环境”侧面板为无服务器笔记本安装 Python 依赖项。 此面板提供了一个用于编辑、查看和导出笔记本库要求的位置。 可以使用基本环境或单独添加这些依赖项。
对于非笔记本任务,请参阅为非笔记本任务配置环境和依赖项。
重要
请勿安装 PySpark 或任何将 PySpark 作为依赖项安装在无服务器笔记本上的库。 这样做会停止会话并导致出现错误。 如果发生这种情况,请重置环境。
配置基本环境
基本环境是存储为工作区文件的 YAML 文件,或存储在指定其他环境依赖项的 Unity Catalog 卷上。 可以在笔记本之间共享基本环境。 若要配置基本环境,请执行以下操作:
创建一个 YAML 文件,该文件定义 Python 虚拟环境的设置。 以下示例 YAML 基于 MLflow 项目环境规范,它定义了一个具有几个库依赖项的基本环境:
client: "1" dependencies: - --index-url https://pypi.org/simple - -r "/Workspace/Shared/requirements.txt" - my-library==6.1 - "/Workspace/Shared/Path/To/simplejson-3.19.3-py3-none-any.whl" - git+https://github.com/databricks/databricks-cli
将 YAML 文件作为工作区文件上传或上传到 Unity Catalog 卷。 请参阅导入文件或将文件上传到 Unity Catalog 卷。
在笔记本右侧,单击 按钮以展开“环境”面板。 仅当笔记本连接到无服务器计算时,才会显示此按钮。
在“基本环境”字段中,输入上传的 YAML 文件的路径,或导航到该文件并选择它。
单击“应用”。 这会在笔记本虚拟环境中安装依赖项,并重启 Python 进程。
用户可以通过单独安装依赖项来替代基本环境中指定的依赖项。
配置笔记本环境
还可以使用“环境”面板的“依赖项”选项卡在连接到无服务器计算的笔记本上安装依赖项:
- 在笔记本右侧,单击 按钮以展开“环境”面板。 仅当笔记本连接到无服务器计算时,才会显示此按钮。
- 从“客户端版本”下拉列表中选择客户端映像。 请参阅 无服务器客户端映像。 Databricks 建议选择最新版本以获取最新的笔记本功能。
- 在“依赖项”部分中,单击“添加依赖项”,并在字段中输入库依赖项的路径。 可以在 requirements.txt 文件中指定有效的任何格式的依赖项。
- 单击“应用”。 这会在笔记本虚拟环境中安装依赖项,并重启 Python 进程。
注意
使用无服务器计算的作业在执行笔记本代码之前将安装笔记本的环境规范。 这意味着在将笔记本安排为作业时无需添加依赖项。 请参阅配置环境和依赖项。
查看已安装的依赖项和 pip 日志
若要查看已安装的依赖项,请单击笔记本的“环境”侧面板中的“已安装”。 还可以通过单击面板底部的“Pip 日志”来获取笔记本环境的 Pip 安装日志。
重置环境
如果笔记本连接到了无服务器计算,Databricks 会自动缓存笔记本虚拟环境的内容。 这意味着打开现有笔记本时,通常不需要重新安装“环境”面板中指定的 Python 依赖项,即使由于不活动而断开连接也是如此。
Python 虚拟环境缓存也适用于作业。 这意味着,后续的作业运行速度更快,因为所需的依赖项已经可用。
注意
如果更改无服务器作业中使用的自定义 Python 包的实现,则还必须更新其版本号,以便作业能够选取最新的实现。
若要清除环境缓存并执行附加到无服务器计算的笔记本的“环境”面板中指定的依赖项的全新安装,请单击“应用”旁边的箭头,然后单击“重置环境”。
注意
如果安装会中断或更改核心笔记本或 Apache Spark 环境的包,请重置虚拟环境。 从无服务器计算中拆离笔记本并重新附加它不一定会清除整个环境缓存。
为非笔记本任务配置环境和依赖项
对于其他受支持的任务类型(如 Python 脚本、Python wheel 或 dbt 任务),默认环境包括已安装的 Python 库。 若要查看已安装库的列表,请参阅 正在使用的客户端版本的“已安装的 Python 库 ”部分。 请参阅 无服务器客户端映像。 如果任务需要的 Python 库尚未安装,可以从工作区文件、Unity Catalog 卷或公共包存储库安装该库。 创建或编辑任务时添加库:
在“环境和库”下拉菜单中,单击“默认”环境旁边的 ,或单击“+添加新环境”。
从“客户端版本”下拉列表中选择客户端映像。 请参阅 无服务器客户端映像。 Databricks 建议选择最新版本以获取最新功能。
在“配置环境”对话框中,单击“+添加库”。
从“库”下的下拉菜单中选择依赖项的类型。
在“文件路径”文本框中,输入库的路径。
对于工作区文件中的 Python Wheel,路径应该是绝对路径,以
/Workspace/
开头。对于 Unity 目录卷中的 Python Wheel,路径应为
/Volumes/<catalog>/<schema>/<volume>/<path>.whl
。对于
requirements.txt
文件,请选择 PyPi 并输入-r /path/to/requirements.txt
。
- 单击“确认”或“+添加库”以添加其他库。
- 如要添加任务,请单击“创建任务”。 如要编辑任务,请单击“保存任务”。