配置MambaIRv2: Attentive State Space Restoration的环境

github上代码的地址:

csguoh/MambaIR: [ECCV2024, CVPR2025] MambaIR and MambaIRv2!

一开始直接输入命令

复制代码
conda env create -f environment.yaml

安装了半天爆出来好几个错误,其中一个是没有nvcc

输入以下命令:

复制代码
module avail

发现没有对应的cuda11.7的版本

就安装cuda11.7的

然后输入以下命令激活环境:

复制代码
 source /data/home/sczc338/run/soft/cuda11.7/env.sh

把这个问题解决了

具体的可以看一下这篇文章:

.whl文件-CSDN博客

里面有如何在超算上安装相应cuda版本的详细步骤

还有一个是什么包找不到好像是。

因为这里默认安装包从defaults通道,但这里的包实际上更新比较慢,所以我使用了如下命令让conda-forge通道为优先级最高的通道(conda-forge是社区驱动的,更新包较快)(conda-forge is a community effort that provides conda packages for a wide range of software.)

  • Make sure you have conda >=4.9:

    复制代码
    conda --version
    conda update conda
  • Add conda-forge as the highest priority channel:

    复制代码
    conda config --add channels conda-forge
  • Activate strict channel priority (strict will be activated by default in conda 5.0):

    复制代码
    conda config --set channel_priority strict

具体的可以看一下这一篇文章:

conda和pip的区别-CSDN博客

然后还爆出了一堆的问题,解决着解决着,发现我这个mambair环境竟然用的是python3.8的版本,但是安装的东西都是基于python3.9的。(包括the mamba_ssm library)

我想输入以下命令来更改环境的python版本,但是报错啦,不知道什么原因

复制代码
conda install python=3.9

输入以下命令查看python版本:

复制代码
python --version

所以我把现有的mambair环境删了,再重新创一个

复制代码
conda create -n mambair python=3.9

此时如果再运行命令:

复制代码
conda env create -f environment.yaml

就会报出mambair环境已存在的错误,所以使用以下命令:

复制代码
(mambair) sczc338@ln01:~/run/MambaIR$ conda env update -f environment.yaml

报出如下错误:

复制代码
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'

Pip subprocess error:
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-ct238nq5/mamba-ssm_3efcc205c45c42afaa3b469462840fa1/setup.py", line 8, in <module>
          from packaging.version import parse, Version
      ModuleNotFoundError: No module named 'packaging'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

failed

CondaEnvException: Pip failed

主要注意这句话: ModuleNotFoundError: No module named 'packaging'

所以:

复制代码
conda install packaging

再输入命令:

复制代码
conda env update -f environment.yaml

报错啦

复制代码
Building wheels for collected packages: mamba-ssm
  Building wheel for mamba-ssm (setup.py): started
  Building wheel for mamba-ssm (setup.py): still running...
  Building wheel for mamba-ssm (setup.py): finished with status 'error'
  Running setup.py clean for mamba-ssm
Failed to build mamba-ssm

Pip subprocess error:
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [9 lines of output]
      No CUDA runtime is found, using CUDA_HOME='/data/home/sczc338/run/soft/cuda11.7'


      torch.__version__  = 2.0.1


      running bdist_wheel
      Guessing wheel URL:  https://github.com/state-spaces/mamba/releases/download/v1.0.1/mamba_ssm-1.0.1+cu118torch2.0cxx11abiFALSE-cp38-cp38-linux_x86_64.whl
      error: <urlopen error retrieval incomplete: got only 115343360 out of 146629955 bytes>
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for mamba-ssm
ERROR: Could not build wheels for mamba-ssm, which is required to install pyproject.toml-based projects

failed

CondaEnvException: Pip failed

hh应该是因为我没有启动cuda环境回去再弄。

输入:

复制代码
 source /data/home/sczc338/run/soft/cuda11.7/env.sh

再输入:

复制代码
conda env update -f environment.yaml

然后就成功了!!!

相关推荐
naruto_lnq9 小时前
泛型编程与STL设计思想
开发语言·c++·算法
2301_821369619 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
:Concerto10 小时前
JavaSE 注解
java·开发语言·sprint
机 _ 长10 小时前
YOLO26 改进 | 基于特征蒸馏 | 知识蒸馏 (Response & Feature-based Distillation)
python·深度学习·机器学习
m0_7487080510 小时前
C++中的观察者模式实战
开发语言·c++·算法
qq_5375626710 小时前
跨语言调用C++接口
开发语言·c++·算法
wjs202410 小时前
DOM CDATA
开发语言
Tingjct10 小时前
【初阶数据结构-二叉树】
c语言·开发语言·数据结构·算法
2401_8321319510 小时前
Python单元测试(unittest)实战指南
jvm·数据库·python
猷咪11 小时前
C++基础
开发语言·c++