Mamba环境配置教程【自用】

1. 新建一个Conda虚拟环境

conda create -n mamba python=3.10

在这里插入图片描述

2. 进入该环境

conda activate mamba

在这里插入图片描述

3. 安装torch(建议2.3.1版本)以及相应的 torchvison、torchaudio
直接进入pytorch离线包下载网址,在里面寻找对应的pytorch以及torchvison、torchaudio
CSDN资源
在这里插入图片描述

下载完成后,进入这些文件的目录下,直接使用下面三个指令进行安装即可

pip install torch-2.3.1+cu118-cp310-cp310-linux_x86_64.whl 
pip install torchvision-0.18.1+cu118-cp310-cp310-linux_x86_64.whl 
pip install torchaudio-2.3.1+cu118-cp310-cp310-linux_x86_64.whl

4. 安装triton和transformers库

pip install triton==2.3.1
pip install transformers==4.43.3

5. 安装完这些我们最基本Pytorch环境以及配置完成,接下来就是Mamba所需的一些依赖了,由于Mamba需要底层的C++进行编译,所以还需要手动安装一下cuda-nvcc这个库,直接使用conda命令即可

conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc

6. 最后就是下载最重要的 causal-conv1d 和mamba-ssm库。在这里我们同样选择离线安装的方式,来避免大量奇葩的编译bug。首先进入下面各自的github网址种进行下载对应版本
causal-conv1d —— 1.4.0
在这里插入图片描述
mamba-ssm —— 2.2.2
在这里插入图片描述
和安装pytorch一样,进入下载的.whl文件所在文件夹,直接使用以下指令进行安装

pip install causal_conv1d-1.4.0+cu118torch2.3cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
pip install mamba_ssm-2.2.2+cu118torch2.3cxx11abiFALSE-cp310-cp310-linux_x86_64.whl

7. 安装好环境后,验证一下Mamba块能否成功运行,直接复制下面代码保存问mamba2_test.py,并运行

# Copyright (c) 2024, Tri Dao, Albert Gu.

import math
import torch
import torch.nn as nn
import torch.nn.functional as F

from einops import rearrange, repeat

try:
    from causal_conv1d import causal_conv1d_fn
except ImportError:
    causal_conv1d_fn = None

try:
    from mamba_ssm.ops.triton.layernorm_gated import RMSNorm as RMSNormGated, LayerNorm
except ImportError:
    RMSNormGated, LayerNorm = None, None

from mamba_ssm.ops.triton.ssd_combined import mamba_chunk_scan_combined
from mamba_ssm.ops.triton.ssd_combined import mamba_split_conv1d_scan_combined


class Mamba2Simple(nn.Module):
    def __init__(
        self,
        d_model,
        d_state=128,
        d_conv=4,
        conv_init=None,
        expand=2,
        headdim=64,
        ngroups=1,
        A_init_range=(1, 16),
        dt_min=
<think>好的,用户想了解如何配置Vision Mamba环境。首先,我需要回忆之前提供的引用内容,看看有没有相关的步骤。引用[1]提到了在Linux服务器上安装Vision Mamba虚拟环境的全面教程,而引用[2]则是在Windows系统下使用Anaconda配置环境的步骤。用户可能是在不同的操作系统下操作,所以需要分别说明两种情况。 首先,我应该概述一下Vision Mamba的应用场景,说明为什么需要配置这个环境,比如用于高效视觉表示学习。接着,分步骤讲解Linux和Windows的安装方法。对于Linux部分,根据引用[1],需要安装CUDA、PyTorch,然后创建虚拟环境,安装依赖库如triton、causal-conv1d,最后从GitHub克隆仓库并安装。而Windows部分,引用[2]提到使用Anaconda,安装特定版本的CUDA工具包,创建环境,安装PyTorch,然后处理mamba-ssm的编译安装,修改源码中的配置,再进行安装。 需要特别注意版本兼容性问题,比如PyTorch和CUDA的对应版本,以及mamba-ssm的特定版本要求,比如v1.1.1支持CUDA 11.8。此外,编译安装时可能需要修改源码中的参数,如设置FORCE_BUILD和SKIP_CUDA_BUILD,避免环境变量问题导致编译失败。还要提醒用户安装完成后进行测试,确保环境配置正确。 可能的问题点包括依赖项安装顺序、CUDA版本是否正确、编译过程中的错误处理,以及不同操作系统的路径差异。需要详细说明每个步骤,并给出具体的命令,方便用户复制粘贴。同时,生成的相关问题要围绕环境配置的常见问题,比如版本冲突、依赖安装失败、测试方法等,帮助用户进一步解决可能遇到的困难。</think>### Vision Mamba环境配置教程 Vision Mamba是基于双向状态空间模型的高效视觉表示学习框架,其环境配置需根据操作系统选择不同方案。以下是Linux和Windows系统的详细配置步骤: #### 一、Linux服务器配置(基于CUDA 11.8) 1. **安装CUDA工具包** ```bash wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run sudo sh cuda_11.8.0_520.61.05_linux.run ``` 2. **创建Python虚拟环境** ```bash conda create -n vim_env python=3.9 conda activate vim_env ``` 3. **安装PyTorch 2.0.1** ```bash pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 ``` 4. **安装核心依赖库 ```bash pip install triton==2.0.0 causal-conv1d==1.1.1 ``` 5. **从GitHub克隆仓库** ```bash git clone https://github.com/hustvl/Vim.git cd Vim pip install -e .[^1] ``` #### 二、Windows系统配置(使用Anaconda) 1. **创建conda环境** ```powershell conda create -n mamba_env python=3.8 conda activate mamba_env ``` 2. **安装PyTorch 1.13.1** ```powershell conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 -c pytorch ``` 3. **编译安装mamba-ssm** ```powershell git clone https://github.com/state-spaces/mamba.git cd mamba # 修改setup.py配置参数 SET FORCE_BUILD=FALSE SET SKIP_CUDA_BUILD=FALSE python setup.py install[^2] ``` 4. **安装Vision Mamba扩展** ```powershell pip install vision-mamba==1.1.1 ``` #### 三、环境验证 ```python import torch from mamba_ssm import Mamba model = Mamba( d_model=128, d_state=16, d_conv=4, expand=2 ) print(model(torch.randn(2, 64, 128)).shape) # 应输出torch.Size([2, 64, 256]) ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值