无法在Databricks中导入上传的Python轮

问题描述 投票:0回答:3

也发布在官方论坛上,在这里重新发布以提高可见度。

完成了此处中的所有步骤,将自定义 Python 轮上传到 Databricks。我构建了一个名为

somelongexamplename
的简单测试轮,并使用 Pyhton 3.5.2 将其编译为
.whl
。它非常简单,只有一个模块和一种打印
"Hello world"
的方法。

我在 Databricks 工作区的共享文件夹中创建了一个库,然后创建了一个自定义集群 (v5.5) 并在该集群上安装了轮子。下面的屏幕截图显示了集群上安装的库以及安装了库的集群。

它在 databricks-cli 上同样可见,如下所示。

在连接到测试集群的笔记本中运行以下命令也会显示轮子安装正确。

%sh
/databricks/python/bin/pip freeze

但当我跑步时:

import somelongexamplename

我得到:

ImportError                               Traceback (most recent call last)
<command-194690> in <module>()
----> 1 import somelongexamplename

ImportError: No module named 'somelongexamplename'

有人知道可能是什么原因造成的吗?我似乎找不到任何其他提供解决方案的在线资源。

python databricks python-wheel
3个回答
2
投票

事实证明问题一直在我的

setup.py
文件中。我在
packages
方法中配置了错误的
setup
值。

最初是这样的:

setup(
    ...
    packages=find_packages(where='somelongexamplename'),
    package_dir={'': 'somelongexamplename'},
    ...
)

将其更改为这个对我来说修复了它:

setup(
    ...
    packages=['somelongexamplename'],
    ...
)

如果您遇到此问题,请确保您的方向盘配置正确。


0
投票

工作正常。我安装了一个轮子包并尝试导入。已经成功导入了。只需尝试卸下并重新连接笔记本电脑即可。


0
投票

现在您可以使用 Databricks Asset Bundles 工具来完成此任务。

在那里你可以看到一个带有Python Wheel任务的完整模板项目。按照部署说明进行操作。

https://github.com/andre-salvati/databricks-template

© www.soinside.com 2019 - 2024. All rights reserved.