jsq*_*sqs 2 download conda data-science
我想使用数据科学库 NumPy、Pandas、Pytorch 和 Hugging Face 转换器创建一个 Python 环境。我用来miniconda创建环境并下载和安装库。中有一个标志conda install,--download-only用于下载所需的软件包而不安装它们,然后从本地目录安装它们。即使只是conda下载软件包而不安装它们,它也会提取它们。
是否可以下载软件包而不解压它们并在安装前解压它们?
CLI 中没有简单的命令来阻止提取步骤。提取被视为在运行将包传输到指定环境的操作FETCH之前填充包缓存的操作的一部分。LINK
另一种选择是手动执行某些操作。天真地,人们可以搜索 Anaconda Cloud 并手动下载,但是,最好通过求解器来确保包兼容性。可以通过包含该标志来查看要运行的操作的所有信息--json。可以将其过滤为仅 tarball URL,然后直接下载。这是一个类似这样的脚本(假设是 Linux/Unix):
文件:conda-download.sh
#!/bin/bash -l
conda create -dn null --json "$@" |\
grep '"url"' | grep -oE 'https[^"]+' |\
xargs wget -c
Run Code Online (Sandbox Code Playgroud)
可以用作
./conda-download.sh -c conda-forge -c pytorch numpy pandas pytorch transformers
Run Code Online (Sandbox Code Playgroud)
也就是说,它接受所有参数,并将在本地conda create下载所有 tarball 。
如果您已经缓存了一些包,那么上述内容将不会重新下载它们。相反,如果您希望下载环境所需的所有 tarball,那么您可以使用此替代版本,它使用空的临时目录覆盖包缓存:
文件:conda-download-all.sh
#!/bin/bash -l
tmp_dir=$(mktemp -d)
CONDA_PKGS_DIRS=$tmp_dir conda create -dn null --json "$@" |\
grep '"url"' | grep -oE 'https[^"]+' |\
xargs wget -c
rm -r $tmp_dir
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1782 次 |
| 最近记录: |