SAM2环境配置问题汇总:CUDA_HOME environment variable is not set;RuntimeError: No available kernel. Aborting

《------往期经典推荐------》

一、【100个深度学习实战项目】【链接】,持续更新~~

二、机器学习实战专栏【链接】,已更新31期,欢迎关注,持续更新中~~
三、深度学习【Pytorch】专栏【链接】
四、【Stable Diffusion绘画系列】专栏【链接】
五、YOLOv8改进专栏【链接】持续更新中~~
六、YOLO性能对比专栏【链接】,持续更新中~

《------正文------》

引言

这篇文章主要介绍自己在配置SAM2运行环境时碰到的一些坑,解决花了很长时间。记录一下,希望能够帮助小伙伴们解决同样的问题。

注意事项

1. 环境配置前需要先安装pytorch

pytorch官网:https://pytorch.org/get-started/locally/

在这里插入图片描述
命令如下:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

根据自己的CUDA情况安装指定torch版本。

注意torch与torchvision的安装版本需要满足:“torch>=2.3.1”, “torchvision>=0.18.1”

项目环境安装命令

官方给出的命令是:

pip install -e .

建议用:
pip install --no-build-isolation -e .

命令解释如下:
pip: Python的包管理器,用于安装和管理Python包。
install: 这是pip的一个子命令,用于安装包。
--no-build-isolation: 这个选项告诉pip在安装包时不要创建一个隔离的环境。通常,pip会为要安装的包创建一个隔离的构建环境,以确保构建过程不会受到其他包的影响。使用这个选项可以跳过这一步,这通常用于开发过程中,当开发者需要确保构建行为与系统中的其他包紧密相关时。
-e: 这个选项代表“editable”,即“可编辑模式”。它允许用户安装一个包,并且可以不重新安装就能编辑源代码。这意味着当你修改了源代码后,不需要重新安装包,改动就会立即生效。
.: 这个点代表当前目录。这个命令通常在包的根目录下运行,它告诉pip在当前目录下寻找setup.py文件,并以可编辑模式安装包。
综上所述,pip install --no-build-isolation -e . 这条命令的意思是:以可编辑模式安装当前目录下的Python包,并且在安装过程中不创建隔离的构建环境。

遇到的问题

1. 配置环境时报错:OSError: CUDA_HOME environment variable is not set. Please set it to your CUDA install root.

使用pip install --no-build-isolation -e .命令配置环境时,报如下错误:OSError: CUDA_HOME environment variable is not set. Please set it to your CUDA install root.

在这里插入图片描述
解决办法:
下载并安装CUDA。CUDA Toolkit - Free Tools and Training | NVIDIA Developer

地址:https://developer.nvidia.com/cuda-toolkit-archive

安装完成后在系统环境变量设置可以看到(路径为默认安装路径)
在这里插入图片描述

再添加一个与CUDA_PATH相同路径的CUDA_HOME,如下所示:
在这里插入图片描述
如果上面步骤无法解决,再继续下面内容。
在项目中的setup.py中箭头位置添加如下代码,我是通过这个解决的…

-allow-unsupported-compiler
在这里插入图片描述

2. 模型推理时报错:RuntimeError: No available kernel. Aborting execution.

在运行 predictor.predict时报错:RuntimeError: No available kernel. Aborting execution.

解决办法:
在项目中的sam2\modeling\sam\transformer.py文件里面22行后面加上如下代码:

USE_FLASH_ATTN = False
MATH_KERNEL_ON = True
OLD_GPU = True

在这里插入图片描述

3. 配置环境报错:ERROR: Could not build wheels for SAM-2, which is required to install pyproject.toml-based projects

运行环境配置命令pip install -e .报错:ERROR: Could not build wheels for SAM-2, which is required to install pyproject.toml-based projects

搜了很久原因,很多说是cuda需要12.1及以上版本,具体我也不太清楚具体原因。我根据要求切换到12.1版本,依然报同样的错误…没解决。
最终还是通过pip install --no-build-isolation -e .命令配置的环境。


SAM2的环境配置确实坑有点多,希望这篇文章能够帮助需要的小伙伴,减少排坑时间。
如果对你有帮助,感谢给个点赞支持一下~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿_旭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值