问题描述
在一个容器中部署项目环境中,遇到的flash-attn
库总是安装失败,报错信息大致是:FileNotFoundError: [Errno 2] No such file or directory: ':/usr/local/cuda/bin/nvcc
,以及后来可能会提示’torch’未安装,却不知道对应cuda版本的torch安装方式。
这有一份问题讨论帖,它虽不能解决我的问题,但可能会对你的问题有所帮助, 传送门
解决
我的做法
-
重新创建新的虚拟环境,
-
找到
/usr/local
下的含有nvcc文件的cuda目录,将它写入bashrc
文件末尾cd ~/.bashrc
具体写入内容
export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
通过打开一个新终端并运行以下命令来验证设置是否生效
nvcc --version
输出参考
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2023 NVIDIA Corporation Built on Mon_Apr__3_17:16:06_PDT_2023 Cuda compilation tools, release 12.1, V12.1.105 Build cuda_12.1.r12.1/compiler.32688072_0
-
PyTorch 官方提供了一个方便的工具来生成合适的安装命令。可以访问 PyTorch 官方网站并选择配置,例如操作系统、PyTorch 版本、CUDA 版本等。随后,网站会生成对应的安装命令。传送门
结果
未报错
Collecting flash-attn==2.3.6 (from -r requirements.txt (line 17))
Downloading https://pypi.tuna.tsinghua.edu.cn/packages/3c/49/95b86adfc0d90676dcb07fcbef47c71997e6e7c9e71fda51598a962d9148/flash_attn-2.3.6.tar.gz (2.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 2.4 MB/s eta 0:00:00
Preparing metadata (setup.py) ... done
好了,本马喽要去打二郎神去了~(筋斗云)