Linux 下 Vim 环境安装踩坑问题汇总及解决方法(重置版)

embedded/2025/1/13 18:30:56/

导航

安装教程导航

  • Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(初版)
  • Linux 下Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(重置版)
  • Windows 下 Mamba 的安装参看本人博客:Window 下Mamba 环境安装踩坑问题汇总及解决方法 (无需绕过selective_scan_cuda)
  • Linux 下 Vim 安装问题参看本人博客:Linux 下 Vim 环境安装踩坑问题汇总及解决方法(重置版)
  • Windows 下 Vim 安装问题参看本人博客:Window 下 Vim 环境安装踩坑问题汇总及解决方法
  • Linux 下Vmamba 安装教程参看本人博客:Vmamba 安装教程(无需更改base环境中的cuda版本)
  • Windows 下 VMamba的安装参看本人博客:Windows 下 VMamba 安装教程(无需更改base环境中的cuda版本且可加速)
  • Windows下 Mamba2及高版本 causal_conv1d 安装参考本人博客:Windows 下Mamba2 环境安装问题记录及解决方法(causal_conv1d=1.4.0)
  • Windows 下 Mamba / Vim / Vmamba 环境安装终极版参考本人博客:Windows 下Mamba2 / Vim / Vmamba 环境安装问题记录及解决方法终极版(无需绕过triton)

目录

  • 导航
    • 安装教程导航
  • 前言
  • Vim 环境准备
  • 出现的问题
    • 1. 出现 `TypeError: 'bimamba_type'`
    • 2. pip install 之后卡住不动
    • 3. 出现 `fatal error: xxx.h: No such file or directory`
  • 关于whl付费的说明

前言

由于本人第一篇博客Mamba 环境安装踩坑问题汇总及解决方法(初版) Linux和Windows的问题夹杂,vimmamba 夹杂不易查询,重新整理在Linux下Vim所有安装过程中可能出现的问题。

Vim (Vision Mamba) 官方代码链接为:https://github.com/hustvl/Vim。注意,Vim (Vision Mamba)和 Vmamba (VMamba: Visual State Space Model)虽然都是基于mamba,但是它们不是同一篇!

如果遇到其他问题,都可以参考本系列博客。

Vim 环境准备

  1. 前期环境准备,同原来博客 “Mamba 环境安装踩坑问题汇总及解决方法” ,具体为:
conda create -n vim python=3.10.13
conda activate vim
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
# 国内版-上交镜像
pip install torch==2.1.1+cu118 torchvision==0.16.1+cu118 torchaudio==2.1.1+cu118 -f https://mirror.sjtu.edu.cn/pytorch-wheels/torch_stable.html
# 国内版-阿里镜像
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 -f https://mirrors.aliyun.com/pytorch-wheels/cu118conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc
conda install packaging
  1. 下载 Vim 的官方代码,然后切换到 Vim :
# 魔法版
git clone https://github.com/hustvl/Vim.git# 镜像版
git clone https://githubfast.com/hustvl/Vim.git
  1. 安装 causal-conv1d,可以直接安装 1.1.1 版本,不从 Vim 安装
pip install causal-conv1d==1.1.1

或者从 causal-conv1d 官方下载 whl 直接安装,在我的配置下:

pip install causal_conv1d-1.1.1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
  1. Vim 的 mamba-ssm 的编译:
cd Vim/mamba-1p1p1# 以下根据报错可省略
conda install nvidia/label/cuda-11.8.0::cuda-cudart-dev  # 根据CUDA版本
conda install nvidia/label/cuda-11.8.0::libcusparse-dev
conda install nvidia/label/cuda-11.8.0::libcublas-devMAMBA_FORCE_BUILD=TRUE pip install .
cd ../

或者利用编译好的 whl 直接进行安装:

pip install mamba_ssm-1.1.1-cp310-cp310-linux_x86_64.whl

本人编译好的 whl 下载地址为:

(Vim Linux)mamba-ssm-1.1.1-cp310-cp310-linux-x86-64.whl

  1. 其他环境的安装: pip install -r vim/vim_requirements.txt

出现的问题

mamba_type_84">1. 出现 TypeError: 'bimamba_type'

有小伙伴在跑 Vision Mamba 时遭遇以下报错(Linux):

TypeError: Mamba.__init__() got an unexpected keyword argument 'bimamba_type'

因为 Vision Mamba 修改了 Mamba 的源代码,从 Mamba 官方途径安装的包中是没有这个函数的,所以需要先卸载原版 Mamba ,再从 Vision Mamba 代码里的 Mamba 源码手动安装,而不是从 Mamba 官方途径安装。
不过实测也可以直接进行文件替换,用 Vision Mamba 的 selective_scan_interface.py 替换 selective_scan_interface.py,替换 causal_conv1d_interface.pymamba_simple.py

2. pip install 之后卡住不动

在Linux下卡住不动是因为它在下载对应的 *.whl 文件,需要科学上网,可以等它下载失败输出正确的网址,然后手动下载再pip install 这个 whl 文件。可以直接下载whl安装
在我的配置下面:
causal_conv1d 下载链接为:https://github.com/Dao-AILab/causal-conv1d/releases/download/v1.1.1/causal_conv1d-1.1.1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl

3. 出现 fatal error: xxx.h: No such file or directory

此问题参考本人之前博客:VMamba 安装教程(无需更改base环境中的cuda版本)。安装相应的包即可。包括:

  • fatal error: cuda_runtime.h: No such file or directory
  • fatal error: cusparse.h: No such file or directory
  • fatal error: cublas_v2.h: No such file or directory

关于whl付费的说明

  1. 无论是Linux还是Win,在这些平台下面的Mamba,Vim 以及Vmamba 编译过程以及所有可能遇到的问题已经在本系列博客中全程开源并写明,不少同学按照本博客自己编译成功。
  2. 资金紧张但学有余力的同学请自己按照本教程自己动手编译,出现问题请查阅本系列所有博客,不鼓励从任何渠道购买!!!
  3. 为时间紧张的同学提供优惠通道:【(Vim Linux)mamba-ssm-1.1.1-cp310-cp310-linux-x86-64.whl】。或vx私信。
  4. 由于精力有限,只对【付费同学】全程售后,安装包本身没有价值,指导安装挤占了本人大量时间,所以付费其实是咨询费,其他同学随缘。
  5. 使用本人提供的whl请保证python、torch及cuda版本与博客里一致。否则会出现 linux-gnu.so undefined symbol 问题。有环境版本定制化需求请私信结尾vx。
  6. 网上有大量人抄袭本系列博客的教程,连本人当时随手建的环境都变成了这些教程的基础配置,还是请关注本系列博客的权威解答,除前述渠道外的其他渠道均需理性看待,谨防诈骗。

http://www.ppmy.cn/embedded/153626.html

相关文章

[人工智能自学] Python包学习-numpy

由于我并非该专业,我在学习之前google了几个比较靠前的人工智能学习路径: https://github.com/tangyudi/Ai-Learn https://github.com/apachecn/ai-roadmap/blob/master/ai-union-201904/README.md https://marlous.github.io/2019/01/18/%E4%BA%BA%E5%B…

Kotlin语言的数据结构

Kotlin语言的数据结构 Kotlin是一种现代化的编程语言,它为开发者提供了许多便利的功能和工具,帮助他们更高效地开发应用程序。在Kotlin的生态中,数据结构是一个至关重要的部分,它影响着程序的性能、可维护性和可读性。本文将深入…

用JAVA实现人工智能:采用框架Spring AI Java

Spring AI 集成人工智能,为Java项目添加AI功能指南 本文主旨是用实际的可操作的代码,介绍Java怎么通过spring ai 接入大模型。 例子使用spring ai alibaba QWen千问api完成,你可以跑通以后换自己的实现。QWen目前有100万免费Token额度&…

opencv的NLM去噪算法

NLM(Non-Local Means)去噪算法是一种基于图像块(patch)相似性的去噪方法。其基本原理是: 图像块相似性:算法首先定义了一个搜索窗口(search window),然后在该窗口内寻找…

zookeeper监听机制(Watcher机制)

文章目录 引言I zookeeper监听机制Watcher机制实现分布式的通知功能触发事件种类Watcher的三个过程II watch机制特点一次性触发事件封装event异步发送先注册再触发常见的通知状态和事件类型III 应用案例(Kafka)Kafka的消息模型Kafka在Zookeeper中保存的元数据Kafka 基于Contr…

cJson——序列化格式json和protobuf对比

cJson——序列化格式json和protobuf对比 1. 更小的消息体积2. 更快的序列化与反序列化速度3. 类型安全4. 向后和向前兼容性5. 更低的带宽消耗6. 高效的编码方式7. 易于跨语言支持8. 支持复杂的数据结构9. 更好的支持大型数据交换总结 Protocol Buffers (Protobuf) 和 JSON 都是…

vue2+electron项目搭建

一、vue2搭建 官方链接:https://cli.vuejs.org/zh/guide/installation.html 1、安装vue-cli npm install -g vue/cli # OR yarn global add vue/cli2、vue项目创建 vue create electron-vue-demo二、vue项目添加electron 安装插件 vue-cli-plugin-electron-bui…

机器翻译优缺点

随着科技的飞速发展,机器翻译是近年来翻译行业的热门话题,在人们的生活和工作中日益普及,使用机器能够提高翻译效率,降低成本。尽管关于机器翻译为跨语言交流带来了诸多便利,但在译文的正确率和局限性方面存在一定争议…