我想在未连接到外部世界的群集上安装python3软件包(在这种情况下为torch和torchvision)。我尝试执行pip3 download <package>
,然后将文件移至群集并运行pip3 install <downloaded-file> -t /custom/folder
(因为我是在个人帐户中的一个文件夹中安装,而不是在整个群集中安装)。
[当我运行install
命令时,pip3
正在尝试下载numpy
软件包-出于某种原因(它实际上已经安装并正在ipython3上运行,我不知道为什么它试图下载该软件包) 。
当然,安装失败是因为没有与外界的连接。我可以强迫python下载带有任何标志的所有内容吗?
此外,我想确定自己正在下载正确的东西:我从中下载文件的位置与我要安装的位置不同,第一个是常规CPU,第二个是GPU,已安装CUDA。
正式答案在这里。 Pip尝试安装您的软件包要求中指定的numpy的其他版本。您可以轻松地将pip freeze
的版本与其尝试下载的版本进行比较(失败之前)。
为了使下载和安装变得万无一失,您可能应该创建一个requirements.txt
文件,然后在连接到Internet的环境中运行pip download -r requirements.txt
,然后转移到非连接环境并继续进行安装。
关于软件包之间的GPU / CPU差异,很难在不实际知道这是哪个软件包的情况下分辨出来,但是如果它类似于tensorflow,在使用pip时您具有完全不同的软件包名称,则缺少GPU不会影响下载处理。有关更多信息,请参见pip download
documentation。