mamba_ssm和causal-conv1d詳細安裝教程

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文件
點擊藍色鏈接就會自動下載whl文件
  • 選擇與你的環境兼容的 .whl 文件,這里我的環境中裝的是Python 3.8、PyTorch 2.2.2 和 CUDA 11.8。

cu118表示cuda11.8,torch2.2表示pytorch2.2,cp38表示python3.8

下載好的兩個whl文件

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_updatefrom mamba_ssm.ops.triton.selective_state_update import selective_state_update

有時間會更新安裝視頻,敬請期待!

撰寫不易,喜歡的話,贊同收藏點贊支持下吧!

有問題私信或評論,看到會第一時間回復!

關注我,持續更新科研學習過程中遇到的問題!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/70962.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/70962.shtml
英文地址,請注明出處:http://en.pswp.cn/web/70962.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

c++中初始化列表的使用

在 C 中,初始化列表是在構造函數的定義中,用于對類的成員變量進行初始化的一種方式。它緊跟在構造函數的參數列表之后,使用冒號 : 分隔,各成員變量的初始化用逗號 , 分隔。下面詳細介紹初始化列表及其參數的含義。 基本語法 clas…

《Linux系統編程篇》System V信號量實現生產者與消費者問題(Linux 進程間通信(IPC))——基礎篇(拓展思維)

文章目錄 📚 **生產者-消費者問題**🔑 **問題分析**🛠? **詳細實現:生產者-消費者****步驟 1:定義信號量和緩沖區****步驟 2:創建信號量****步驟 3:生產者進程****步驟 4:消費者進程…

利用 Python 爬蟲進行跨境電商數據采集

1 引言2 代理IP的優勢3 獲取代理IP賬號4 爬取實戰案例---(某電商網站爬取)4.1 網站分析4.2 編寫代碼4.3 優化代碼 5 總結 1 引言 在數字化時代,數據作為核心資源蘊含重要價值,網絡爬蟲成為企業洞察市場趨勢、學術研究探索未知領域…

HONOR榮耀MagicBook 15 2021款 獨顯(BOD-WXX9,BDR-WFH9HN)原廠Win10系統

適用型號:【BOD-WXX9】 MagicBook 15 2021款 i7 獨顯 MX450 16GB512GB (BDR-WFE9HN) MagicBook 15 2021款 i5 獨顯 MX450 16GB512GB (BDR-WFH9HN) MagicBook 15 2021款 i5 集顯 16GB512GB (BDR-WFH9HN) 鏈接:https://pan.baidu.com/s/1S6L57ADS18fnJZ1…

c語言實現三子棋小游戲(涉及二維數組、函數、循環、常量、動態取地址等知識點)

使用C語言實現一個三子棋小游戲 涉及知識點&#xff1a;二維數組、自定義函數、自帶函數庫、循環、常量、動態取地址等等 一些細節點&#xff1a; 1、引入自定義頭文件&#xff0c;需要用""雙引號包裹文件名&#xff0c;目的是為了和官方頭文件的<>區分開。…

C語言數據類型及其使用 (帶示例)

目錄 1. 基本數據類型 整型 浮點型 字符型 2. 構造數據類型 數組 結構體 聯合體&#xff08;共用體&#xff09; 枚舉類型 3. 指針類型 4. 空類型 在 C 語言中&#xff0c;數據類型是非常重要的概念&#xff0c;它決定了數據在內存中的存儲方式、占用空間大小以及可…

Web自動化之Selenium添加網站Cookies實現免登錄

在使用Selenium進行Web自動化時&#xff0c;添加網站Cookies是實現免登錄的一種高效方法。通過模擬瀏覽器行為&#xff0c;我們可以將已登錄狀態的Cookies存儲起來&#xff0c;并在下次自動化測試或爬蟲任務中直接加載這些Cookies&#xff0c;從而跳過登錄步驟。 Cookies簡介 …

NAT 技術:網絡中的 “地址魔術師”

目錄 一、性能瓶頸&#xff1a;NAT 的 “阿喀琉斯之踵” &#xff08;一&#xff09;數據包處理延遲 &#xff08;二&#xff09;高并發下的性能損耗 二、應用兼容性&#xff1a;NAT 帶來的 “適配難題” &#xff08;一&#xff09;端到端通信的困境 &#xff08;二&…

php序列化與反序列化

文章目錄 基礎知識魔術方法&#xff1a;在序列化和反序列化過程中自動調用的方法什么是 __destruct() 方法&#xff1f;何時觸發 __destruct() 方法&#xff1f;用途&#xff1a;語法示例&#xff1a; 反序列化漏洞利用前提條件一些繞過策略繞過__wakeup函數繞過正則匹配繞過相…

docker 占用系統空間太大了,整體遷移到掛載的其他磁盤|【當前普通用戶使用docker時,無法指定鏡像、容器安裝位置【無法指定】】

文章目錄 前言【核心步驟皆為 大模型生成的方案】總結步驟應該是&#xff1a;詳細步驟如下1. **停止 Docker 服務**2. **備份原數據&#xff08;防止遷移失敗&#xff09;**3. **遷移數據到新磁盤**4. **修改 Docker 配置文件**5. **重啟 Docker 服務**6. **驗證容器和鏡像**7.…

設計后端返回給前端的返回體

目錄 1、為什么要設計返回體&#xff1f; 2、返回體包含哪些內容&#xff08;如何設計&#xff09;&#xff1f; 舉例 3、總結 1、為什么要設計返回體&#xff1f; 在設計后端返回給前端的返回體時&#xff0c;通常需要遵循一定的規范&#xff0c;以確保前后端交互的清晰性…

Springboot 自動化裝配的原理

Springboot 自動化裝配的原理 SpringBoot 主要作用為&#xff1a;起步依賴、自動裝配。而為了實現這種功能&#xff0c;SpringBoot 底層主要使用了 SpringBootApplication 注解。 首先&#xff0c;SpringBootApplication 是一個復合注解&#xff0c;它結合了 Configuration、…

基于vue框架的游戲博客網站設計iw282(程序+源碼+數據庫+調試部署+開發環境)帶論文文檔1萬字以上,文末可獲取,系統界面在最后面。

系統程序文件列表 項目功能&#xff1a;用戶,博客信息,資源共享,游戲視頻,游戲照片 開題報告內容 基于FlaskVue框架的游戲博客網站設計開題報告 一、項目背景與意義 隨著互聯網技術的飛速發展和游戲產業的不斷壯大&#xff0c;游戲玩家對游戲資訊、攻略、評測等內容的需求日…

算法-二叉樹篇13-路徑總和

路徑總和 力扣題目鏈接 題目描述 給你二叉樹的根節點 root 和一個表示目標和的整數 targetSum 。判斷該樹中是否存在 根節點到葉子節點 的路徑&#xff0c;這條路徑上所有節點值相加等于目標和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否則&#xff0c;返回…

8. 示例:對32位數據總線實現位寬和值域覆蓋

文章目錄 前言示例一&#xff1a;示例二&#xff1a;示例三&#xff1a;仿真與覆蓋率分析覆蓋點詳細說明覆蓋率提升技巧常見錯誤排查 示例四&#xff1a;仿真步驟 前言 針對32位數據總線實現位寬和值域的覆蓋&#xff0c;并且能夠用xrun運行&#xff0c;查看日志和波形。cover…

TDengine 中的數據庫

數據庫概念 時序數據庫 TDengine 中數據庫概念&#xff0c;等同于關系型數據庫 MYSQL PostgreSQL 中的數據庫&#xff0c;都是對資源進行分割管理的單位。 TDengine 數據庫與關系型數據庫最大區別是跨庫操作&#xff0c;TDengine 數據庫跨庫操作除了少量幾個SQL 能支持外&…

開源電商項目、物聯網項目、銷售系統項目和社區團購項目

以下是推薦的開源電商項目、物聯網項目、銷售系統項目和社區團購項目&#xff0c;均使用Java開發&#xff0c;且無需付費&#xff0c;GitHub地址如下&#xff1a; ### 開源電商項目 1. **mall** GitHub地址&#xff1a;[https://github.com/macrozheng/mall](https://git…

如何設計一個短鏈系統?

短鏈系統設計的關鍵要點: 系統功能實現 短鏈生成:接收長鏈接,先檢查是否已有對應短鏈,存在則直接返回。否則,使用分布式 ID 生成器(如號段模式、SnowFlake 算法、數據庫自增 ID、Redis 自增等)生成唯一 ID,或通過哈希算法(如 MurmurHash)處理長鏈接得到哈希值。再將生…

數據結構(初階)(三)----單鏈表

單鏈表 概念 概念&#xff1a;鏈表是?種物理存儲結構上?連續、?順序的存儲結構&#xff0c;數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。 結點 與順序表不同的是&#xff0c;鏈表的結構類似于帶車頭的火車車廂&#xff0c;&#xff0c;鏈表的每個車廂都是獨立…

游戲引擎學習第129天

倉庫:https://gitee.com/mrxiao_com/2d_game_3 小妙招: vscode:定位錯誤行 一頓狂按F8 重構快捷鍵:F2 重構相關的變量 回顧并為今天的內容做準備 今天的工作主要集中在渲染器的改進上&#xff0c;渲染器現在運行得相當不錯&#xff0c;得益于一些優化和組織上的改進。我們計…