(超详细)解决在conda环境种Mamba库无法安装的问题:causal-conv1d和mamba-ssm安装踩坑+解决
代码需要使用到Mamba的一些块,涉及到安装
causal-conv1d和mamba-ssm这两个库(我是在恒源云租的服务器为Linux系统)
先总结正确的安装步骤,再具体说明我遇到的各种报错,小宝们可以对号解决
我安装并运行成功的正确步骤
- 正确创建并配置新的conda环境
conda create -n Mamba(这里是你新环境的名称,我直接起了Mamba) python=3.10
conda activate Mamba(就是创建的新环境)
conda install cudatoolkit==11.8 -c nvidia
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc
conda install packaging
-
在GitHub上下载正确的、版本都匹配的whl文件(注意!容易踩坑看错,千万检查仔细版本)
causal-conv1d:https://github.com/Dao-AILab/causal-conv1d/releases
参考我的版本:
causal-conv1d 1.1.1
mamba-ssm 1.2.0.post1
- 把文件上传到服务器上,之后到对应的文件夹进行安装(不是服务器的话直接安装就行,记得在自己的conda环境里面装哈)
pip install causal_conv1d-1.1.1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
pip install mamba_ssm-1.2.0.post1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
报错
报错1:CUDA版本号不匹配
一开始我就直接在自己的conda环境下面使用了pip口令进行安装
pip install causal-conv1d
pip install mamba-ssm
(注意causal-con1d一定要在mamba-ssm之前进行安装,不然会报错)
发现会出现诸如此类的报错,总是会说CUDA版本要高于11.6 但是我自己的CUDA都是12.1的了不知道为什么会报错
于是我直接新建了conda环境,在新环境里面重新配置CUDA版本和安装对应的pytorch(服务器网慢就这个足足等了仨小时)
报错2:
卡在半截不动了……
之后那我按照一个帖子的教程,直接去GitHub上下载whl文件,再进行安装……
参考地址:https://blog.csdn.net/qq_43767886/article/details/138681486
报错3:
ImportError: /usr/local/miniconda3/envs/Mamba/lib/python3.10/site-packages/selective_scan_cuda.cpython-310-x86_64-linux-gnu.so: undefined symbol: _ZN3c107WarningC1ENS_7variantIJNS0_11UserWarningENS0_18DeprecationWarningEEEERKNS_14SourceLocationENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb
好不容易都安装好了,居然还是无法运行!!!此时我真的……要崩溃了
undefined symbol:未定义参数,寻思可能是版本问题,然后就找了比较新的版本
结果还是没解决……
- 之后在GitHub上的讨论区发现 abi的那个参数得是FALSE 又重新下载安装 终于成功了