离线安装 CUDA、torch、requirements.txt

By | 2024年9月15日

以下 Dockerfile 源代码截取自镜像项目:wang-stablesr。

离线安装 CUDA、torch

我们以开源项目 StableSR 为例来讲解,这是官方安装指导:

进入PyTorch 官网的历史版本页面,找到 CUDA==11.7,Pytorch==1.13.1(requirements.txt 里是 1.13.1)的版本:

pip3 install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117

国内直接执行上面的命令下载3个包超级慢(torch==1.13.1+cu117 有1.6G、torchvision==0.14.1+cu117 有24MB、torchaudio==0.13.1 有4MB)。好在控制台会打印下载地址,复制这三个地址,本地电脑开启代理后直接放浏览器里下载,很快就下载好了。因此我使用离线下载方式安装,参考:

Dockerfile:

RUN pip3 install --upgrade pip  -i https://pypi.tuna.tsinghua.edu.cn/simple && \
    #pip3 install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117 && \
    pip3 install /home/torch-1.13.1+cu117-cp310-cp310-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple && \
    pip3 install /home/torchvision-0.14.1+cu117-cp310-cp310-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple && \
    pip3 install /home/torch-1.13.1+cu117-cp310-cp310-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple && \

离线安装 requirements.txt 中的 git 源代码项目

安装 requirements.txt:

RUN cd ${STABLE_SR_HOME} && \
    pip3 install -r ./requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple --exists-action i

上面的命令有个 --exists-action i 参数,表示忽略已存在的项目,不用再去 git clone 了。我们看这个项目 requirements.txt 的结尾有这几行:

这会在安装时执行对这两个项目的 git clone,默认下载到当前目录的 src 目录下。由于国内网络无法访问,比较便捷的方式就是通过本地代理放浏览器去下载,下载好后解压到 src 目录下。但这个时候,安装时会有交互:What to do? (i)gnore, (w)ipe, (b)ackup。在做镜像时必须忽略,因此有了刚才的 --exists-action i 参数设置。离线安装子项目参考:

RUN set -e; \
    unzip -q /home/StableSR-main.zip -d /home && mv /home/StableSR-main ${STABLE_SR_HOME} && rm -rf /home/StableSR-main.zip && \
    # 根据执行 requirements.txt 时打印的 git clone 日志,离线下载源码后手动放置:Cloning https://github.com/CompVis/taming-transformers.git (to revision master) to ./src/taming-transformers
    mkdir ${STABLE_SR_HOME}/src && \
    unzip -q /home/taming-transformers-master.zip -d /home && mv /home/taming-transformers-master ${STABLE_SR_HOME}/src/taming-transformers && rm -rf /home/taming-transformers-master.zip && \
    unzip -q /home/CLIP-main.zip -d /home && mv /home/CLIP-main ${STABLE_SR_HOME}/src/clip && rm -rf /home/CLIP-main.zip
Category: AI

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注