gpt4 book ai didi

python - 在 Azure Batch 上运行 python 脚本

转载 作者:行者123 更新时间:2023-12-01 08:00:37 24 4
gpt4 key购买 nike

我尝试在azure批处理(Linux dsvm)上执行python脚本,以便该脚本可以安装python包,然后执行python脚本。

下面是我使用的代码:

try:
from pip import main as pipmain
except ImportError:
from pip._internal import main as pipmain

try:
import pandas as pd
except:

pipmain(['install', 'pandas',"])

import pandas

当我在 azure Batch 命令行上运行 python 脚本时,池任务在最后一个语句(导入 pandas)处出错,尽管我可以在 stdout 日志文件中看到 pandas、numpy 等软件包已安装。

这些软件包似乎安装在其他位置,并且在尝试导入时正在尝试从其他位置导入。它给出错误 ImportError: 在 azure 批处理池任务的 stderr.txt 文件中没有名为 pandas 的模块。

我尝试安装 python 包并导入相同脚本的原因是因为 azure 批处理命令行不允许我编写 2 个命令,例如

pip install pandas
python test.py

首先安装软件包,然后调用脚本,仅导入 pandas 库。

我还在启动任务的 pip install pandaspip install --install-option="--prefix=$AZ_BATCH_TASK_WORKING_DIR"pandas 中使用了该命令批处理池的。根据我的理解,AZ_BATCH_TASK_WORKING_DIR是任务批处理运行时任务和脚本可以访问的工作目录

有没有办法在 Azure Batch 上成功运行 python 脚本。目前我只运行一个命令:import pandas

最佳答案

您需要提供内联 shell 脚本来运行多个命令并利用 shell 扩展。请看这个doc 。您需要运行两个命令,例如:

/bin/bash -c "pip install pandas && python test.py"

此外,任务在上下文特定的目录下运行(即,启动任务在启动任务目录中运行,而普通任务将在不同的目录中运行,尽管 $AZ_BATCH_TASK_WORKING_DIR 的名称相同)和user identities还可以修改运行任务的用户上下文。

关于python - 在 Azure Batch 上运行 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55749786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com