久趣下载站

当前位置: 首页 » 游戏攻略 » 部署SyncTalk虚拟数字人项目时的PyTorch3D安装问题解决方案

部署SyncTalk虚拟数字人项目时的PyTorch3D安装问题解决方案

最近在部署SyncTalk虚拟数字人项目时,需要安装很多依赖项。在执行到以下命令时,安装PyTorch3D失败,输出如下信息:

(synctalk) C:\SyncTalk>pip install --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py38_cu113_pyt1121/download.html
Looking in indexes: https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple, https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
ERROR: Could not find a version that satisfies the requirement pytorch3d (from versions: none)
ERROR: No matching distribution found for pytorch3d

为解决这一问题,我决定克隆facebookresearch/pytorch3d官方仓库源码,自行通过本地编译的方式进行安装。

SyncTalk虚拟数字人项目依赖的PyTorch版本是1.12.1,CUDA版本是11.3,PyTorch3D版本是0.7.2。

编译PyTorch3D除了依赖CUDA之外,还需要依赖CUB和Visual Studio 2017或Visual Studio 2019。

根据CUB官方建议,CUDA 11.3对应的CUB版本是1.11.0,对照表地址:

https://github.com/NVIDIA/cub

我从CUB官方仓库下载了1.11.0版本压缩包:
https://github.com/NVIDIA/cub/archive/refs/tags/1.11.0.zip
,将其解压到任意路径,例如:

C:\Program Files\cub-1.11.0

。然后配置CUB_HOME系统环境变量,填写该路径,不需要额外添加到PATH系统环境变量。

另外,我还配置了CUDA_HOME系统环境变量,指向CUDA Toolkits 11.3的安装路径:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3

,并向系统环境变量PATH追加了

%CUDA_HOME%\bin;%CUDA_HOME%\libnvvp;

需要再次强调的是,这里配的是系统环境变量,不是用户环境变量。系统全局范围生效,而不是当前用户生效。

至于Visual Studio 2017或Visual Studio 2019,我电脑只安装了Visual Studio 2022。而VS官方下载页已经不开放VS2019及更早版本的下载,即便是登录Microsoft账号跳转到订阅服务页面,普通订阅也获取不到可用的下载地址。

经过一番搜索,发现这几个永久下载链接还没失效,大家可以下载收藏:

  • 最新版本Microsoft C++生成工具-Visual Studio:
    https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/
  • Visual Studio 2022 Build Tools下载:
    https://aka.ms/vs/17/release/vs_BuildTools.exe
  • Visual Studio 2019 Build Tools下载:
    https://aka.ms/vs/16/release/vs_BuildTools.exe
  • Visual Studio 2017 Build Tools下载:
    https://aka.ms/vs/15/release/vs_BuildTools.exe

Visual Studio生成工具安装后,需要重启电脑。

解决了前置依赖条件和编译环境后,打开

x64 Native Tools Command Prompt for VS 2017



x64 Native Tools Command Prompt for VS 2019

,执行以下命令,开始克隆PyTorch3D 0.7.2版本,同时进行编译和安装:

(synctalk) C:\SyncTalk>set DISTUTILS_USE_SDK=1
pip install "git+https://github.com/facebookresearch/pytorch3d.git@v0.7.2"

编译并且安装成功后,我们验证一下是否可用:

(synctalk) C:\SyncTalk>python -c "import torch; import pytorch3d; print('PyTorch version:', torch.__version__); print('PyTorch3D version:', pytorch3d.__version__)"
PyTorch version: 1.12.1+cu113
PyTorch3D version: 0.7.2

PS:

CUDA Toolkits 11.3

的下载地址为:
https://developer.nvidia.com/cuda-11.3.0-download-archive

如果要编译和安装PyTorch3D最新稳定版,可以把

@v0.7.2

改为

@stable

猜你喜欢
本类排行