Python - 在 AzureML 上使用 setuptools (setup.py) 安装包

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

我目前正在开发一个项目,尝试在 AzureML 上实现 DINO:DETR (https://github.com/IDEA-Research/DINO) 来训练模型。我已经成功创建了一个包含 CUDA 11.3 和 torch 1.12.0 的环境,并且该环境已成功编译。安装指南的第 4 步是使用 setup.py 文件安装软件包(以安装 MultiScaleDeformableAttention):

python setup.py build install 

第一个问题:是否可以直接在环境(stc-cuda-env)中安装这个setup.py?

我现在使用的方法是在 main.py 文件中使用 subprocess 将此 setup.py 直接安装到计算中。

subprocess.run(["python", "setup.py", "build", "install"])

我可以在我的日志文件中找到以下信息,这表明安装成功:

Installed /opt/conda/envs/ptca/lib/python3.8/site-packages/MultiScaleDeformableAttention-1.0-py3.8-linux-x86_64.egg
Processing dependencies for MultiScaleDeformableAttention==1.0
Finished processing dependencies for MultiScaleDeformableAttention==1.0

导入 MultiScaleDeformableAttention 时(手动或在代码函数 build_model_main() 中),出现以下错误: ModuleNotFoundError: No module named 'MultiScaleDeformableAttention'

第二个问题:如何在AzureML上成功导入/安装包?

顺便说一句:我检查了 GPU 是否可用,输出是 True

print(torch.cuda.is_available())
python package environment azure-machine-learning-service
1个回答
0
投票

对于模块问题,您应该能够直接安装特定版本的模块,因为 setup.py 已经被识别:

pip3 install multiscaledeformableattention==1.0

至于直接安装它,我发现的唯一方法在here中有描述,但它依赖于使用docker部署整个自定义镜像,这并不理想。

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