1.前言
Mamba是近年来在深度学习领域出现的一种新型结构,特别是在处理长序列数据方面表现优异。在本文中,我将介绍如何在 Linux 系统上安装并配置 mamba_ssm 虚拟环境。由于官方指定mamba_ssm适用于 PyTorch 版本高于 1.12 且 CUDA 版本大于 11.6 的环境。本示例中,我们使用的是 Python 3.8、PyTorch 2.2.2 和 CUDA 11.8,此外,我们还将安装 mamba_ssm 1.1.3 和 causal-conv 1.1.3。
由于官方给出的whl文件仅支持Linux系统,因此本文也是基于LInux系统的操作!!!
2.准备工作
-
操作系统:Linux 系统(以Ubuntu为例)
-
PyTorch 版本:2.2.2
-
CUDA 版本:11.8
-
Python 版本:3.8
-
mamba_ssm:1.1.3
-
causal-conv:1.1.3
3.安装流程
3.1. 创建虚拟环境
首先,我们需要创建一个虚拟环境来安装依赖包。我们将使用 Python 3.8 创建环境,并命名为 Mamba_py38。
conda create -n Mamba_py38 python=3.8
激活新创建的虚拟环境:
conda activate Mamba_py38
3.2. 安装 GPU 版本的 PyTorch
接下来,我们将安装适用于 CUDA 11.8 的 PyTorch 2.2.2 版本。可以去Pytorch官方网站中复制安装指令。(过程可能有点慢,安装不成功可以多尝试几次)
conda install pytorch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 pytorch-cuda=11.8 -c pytorch -c nvidia
3.3. 安装 mamba_ssm 和 causal-conv
由于这两个包直接pip install安装不能实现,我们将下载它们的 .whl 文件,并使用 pip 离线安装。
步骤:
3.3.1.下载 mamba_ssm 和 causal-conv 的 .whl 文件(不想下载的也可以私信我,直接发你whl文件)。
-
访问 mamba_ssm release page 和 causal-conv release page,这里我选择的都是1.1.3的版本,注意一定要保证这两个包的版本一致!!!

-
选择与你的环境兼容的 .whl 文件,这里我的环境中装的是Python 3.8、PyTorch 2.2.2 和 CUDA 11.8。


3.3.2.使用 pip 离线安装这两个包:
首先要在终端进入到两个whl文件所在的路径,比如现在两文件的目录是:/home/zp/mfb/app_app/。
我需要在终端输入:cd mfb/app_app/

接着就分别安装:pip install +文件名
pip install causal_conv1d-1.1.3+cu118torch2.2cxx11abiFALSE-cp38-cp38-linux_x86_64.whl
和
pip install mamba_ssm-1.1.3+cu118torch2.2cxx11abiFALSE-cp38-cp38-linux_x86_64.whl
4. 安装必要的包
我们还需要安装一些常用的 Python 库,确保我们的开发环境中具备绘图、数据处理等功能。以下是所需包及其版本(都已经验证过与环境适配):
pip install matplotlib==3.7.0
pip install numpy==1.24.3
pip install pandas==1.2.0
pip install tensorboard==2.14.0
pip install einops==0.8.1
5.总结
通过上述步骤,已经成功创建了一个可以使用Mamba的虚拟环境。
# 测试
from causal_conv1d import causal_conv1d_fn, causal_conv1d_update
from mamba_ssm.ops.triton.selective_state_update import selective_state_update
有时间会更新安装视频,敬请期待!
撰写不易,喜欢的话,赞同收藏点赞支持下吧!
有问题私信或评论,看到会第一时间回复!
关注我,持续更新科研学习过程中遇到的问题!