Ubuntu和Windows系统之Mamba_ssm安装

Mamba的论文:https://arxiv.org/abs/2312.00752

Mamba的github:https://github.com/state-spaces/mamba

一、Ubuntu安装

直接新建一个环境是最好的,不然很容易产生各种冲突

bash 复制代码
# 创建环境和相关包
conda create -n mamba python=3.10.13
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

# 安装conv1d和mamba
git clone https://github.com/Dao-AILab/causal-conv1d.git 
cd causal-conv1d 
git checkout v1.2.0 # 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.2.0 # current latest version tag
MAMBA_FORCE_BUILD=TRUE pip install .

中间只是需要等待一些时间,结束完就可以测试使用啦,官方提供的测试代码如下:

python 复制代码
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

二、Windows安装

  • 相关包下载

Mamba主要涉及到四个包,packaging、triton、conv1d、mamba,其中第一个是windows可用的,直接安装就行,后三个是linux版本,但是有大佬们提供了编译好的文件。

triton:https://hf-mirror.com/r4ziel/xformers_pre_built/blob/main/triton-2.0.0-cp310-cp310-win_amd64.whl

conv1d和mamba:Mamba-Packages,这里面也包括了triton。

下载好三个.whl文件后,就可以开始一路安装了

  • 安装
bash 复制代码
# 环境创建和基础安装
conda create -n your_env_name python=3.10.13
conda activate your_env_name
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

# 包安装,记得先进入whl对应的目录
pip install triton-2.0.0-cp310-cp310-win_amd64.whl
pip install causal_conv1d-1.1.1-cp310-cp310-win_amd64.whl
pip install mamba_ssm-1.2.0.post1-py3-none-any.whl

接下来就是等待安装完毕

参考链接

Windows和Linux系统上的Mamba_ssm环境配置

(Windows傻瓜教程)Mamba安装以及问题汇总(Causal-Conv1d & Mamba-ssm)

Mamba 环境安装踩坑问题汇总及解决方法

相关推荐
AI逐月14 小时前
tmux 常用命令总结:从入门到稳定使用的一篇实战博客
linux·服务器·ssh·php
小白跃升坊15 小时前
基于1Panel的AI运维
linux·运维·人工智能·ai大模型·教学·ai agent
跃渊Yuey15 小时前
【Linux】线程同步与互斥
linux·笔记
舰长11515 小时前
linux 实现文件共享的实现方式比较
linux·服务器·网络
热爱生活的五柒15 小时前
WebDAV如何使用?
windows
zmjjdank1ng15 小时前
Linux 输出重定向
linux·运维
路由侠内网穿透.16 小时前
本地部署智能家居集成解决方案 ESPHome 并实现外部访问( Linux 版本)
linux·运维·服务器·网络协议·智能家居
VekiSon16 小时前
Linux内核驱动——基础概念与开发环境搭建
linux·运维·服务器·c语言·arm开发
zl_dfq16 小时前
Linux 之 【进程信号】(signal、kill、raise、abort、alarm、Core Dump核心转储机制)
linux
Ankie Wan16 小时前
cgroup(Control Group)是 Linux 内核提供的一种机制,用来“控制、限制、隔离、统计”进程对系统资源的使用。
linux·容器·cgroup·lxc