Linux下VMamba 环境复现+环境测试(解决causal_conv1d和mamba_ssm无法安装)本人亲测有用

本文详细记录了作者如何在虚拟环境中配置CUDA11.8、安装PyTorch及其相关库(如Torchvision、Torchaudio)、mamba-ssm和causal-conv1d的步骤,以及遇到的问题和解决方案,对开发人员搭建深度学习开发环境具有参考价值。
摘要由CSDN通过智能技术生成

直接上本人的环境代码

# 1. 创建自己的虚拟环境
conda create -n VMamba python=3.10.13
conda activate VMamba
# 2. cuda-11.8
conda install cudatoolkit==11.8 -c nvidia
# 3. torch torchvision torchaudio 与 官网命令一致
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
# 4. nvcc
conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc
# 5. packaging
conda install packaging
# 6.openlab环境
pip install mmcv==2.1.0 -f https://download.openmmlab.com/mmcv/dist/cu118/torch2.1/index.html
pip install mmengine==0.10.1
pip install mmdet==3.3.0 mmsegmentation==1.2.2 mmpretrain==1.2.0
# 7. causal-conv1d== & mamba-ssm==1.1.1
pip install causal-conv1d==1.1.1
pip install mamba-ssm==1.1.3.post1
# 8. Vim
git clone https://github.com/hustvl/Vim.git
# 9. Vim 环境依赖
pip install -r vim/vim_requirements.txt
# 10. 更换mamaba1p1p/mamba/ 至 mamba-ssm
##  删除原环境里的mamba_ssm文件夹
rm -rf "/home/[usr_name]/miniconda/envs/VMamba/lib/python3.10/site-packages/mamba_ssm/"
## Vim下mamba_ssm文件夹替换进去
cp -r "/home/[usr_name]/Vim/mamba-1p1p1/mamba_ssm" "/home/[usr_name]/miniconda/envs/VMamba/lib/python3.10/site-packages/" 

其中 causal-conv1d 和 mamba-ssm我是pip安装成功了,不过失败的可以进行源码安装

git clone https://github.com/Dao-AILab/causal-conv1d.git
cd causal-conv1d
git checkout v1.1.1 # current latest version tag
CAUSAL_CONV1D_FORCE_BUILD=TRUE pip install .
cd ..
git clone https://github.com/state-spaces/mamba.git
cd mamba
git checkout v1.1.1 # current latest version tag
pip install . # 方式一,下载whl安装,两种方式选择一个即可
MAMBA_FORCE_BUILD=TRUE pip install . # 方式二,强制在本地编译安装,Win 下无法识别此命令

不行的话可以看看这篇文章Mamba 环境安装踩坑问题汇总及解决方法找找自己的错误,或许有帮助

        我查看我的mamba-ssm version是1.2.1 post,会报错,而vim中mamba-ssm是1.1.1,这样包是兼容的,所以一定要把虚拟环境中的mamba-ssm替换成vim中的mamba-ssm,否则运行测试代码会报如下错误:

TypeError: causal_conv1d_fwd(): incompatible function arguments.

测试代码

import torch
from mamba_ssm import Mamba

batch, length, dim = 2, 64, 16
x = torch.randn(batch, length, dim).to("cuda")
model = Mamba(
    # This module uses roughly 3 * expand * d_model^2 parameters
    d_model=dim, # Model dimension d_model
    d_state=16,  # SSM state expansion factor
    d_conv=4,    # Local convolution width
    expand=2,    # Block expansion factor
).to("cuda")
y = model(x)
assert y.shape == x.shape
print("VMamba install successful!!!")

控制台打印VMamba install successful!!!

表示环境安装成功!

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值