Windows系统下安装运行YOLOv12所需的flash_attn 包教程

        刚刚又发现其实不用安装flash_attn包也能运行YOLOv12。

方法一:不安装flash_attn包

1.将D:\personalFiles\objectDetection\comparativeExperiment\yolov12\ultralytics\nn\modules\block.py里的代码

try:
    from flash_attn.flash_attn_interface import flash_attn_func
except Exception:
    assert False, "import FlashAttention error! Please install FlashAttention first."

删去或注释掉。

2.再将里面的if x.is_cuda:替换为if False:即可

方法二:安装flash_attn包

给出本人运行成功的参考版本

0.python版本:3.11

1.CUDA版本:12.2

2.torch版本:2.3.1+cu121 ,安装此版本代码:

①从官网安装(应该慢些):pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 --index-url https://download.pytorch.org/whl/cu121

②更快的网站:pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 -f https://mirrors.aliyun.com/pytorch-wheels/cu121

3.下载有关flash_attn包的whl文件至桌面,下载网站为https://github.com/kingbri1/flash-attention/releases/download/v2.5.9.post1/flash_attn-2.5.9.post1+cu122torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl,然后在桌面desktop文件夹里输入cmd打开命令行窗口或通过cd desktop进入桌面文件夹安装此包,最后输入命令

pip install flash_attn-2.5.9.post1+cu122torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl

安装就成功了,完整示例:

(yolov12) C:\Users\15231\Desktop>pip install flash_attn-2.5.9.post1+cu122torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl

PS:运行时可能还会有有关其他包的2处警告,觉得碍眼可进行如下修改:

1.将D:\personalFiles\objectDetection\comparativeExperiment\yolov12\ultralytics\nn\modules\block.py里的from timm.models.layers import trunc_normal_换为from timm.layers import trunc_normal_。

2.将D:\personalFiles\objectDetection\comparativeExperiment\yolov12\ultralytics\data\augment.py里的A.ImageCompression(quality_lower=75, p=0.0),换为A.ImageCompression(p=0.0),

经实验验证改动后对训练结果无影响,OJBK了,终于能跑通了,这flash包太他M挑环境了,试了N次才找到这个合适的,规律就是CUDA为12.2,那么torch就应该为12.1版而不是11.8版的,python为3.11那么就要下载3.11对应的whl文件,反正尽可能各版本一致对应起来

### 解决 YOLOv12 安装依赖时可能出现的错误 在安装 YOLOv12 及其相关依赖项的过程中,可能会遇到多种类型的错误。以下是针对常见问题及其解决方案的详细说明。 #### 1. CUDA 和 PyTorch 版本不匹配 如果使用的 `flash_attn` 库与当前环境中配置的 CUDA 或 PyTorch 版本不符,则可能导致兼容性问题。例如,在引用中提到的文件名 `[flash_attn-2.7.3+cu11torch2.2cxx11abiFALSE-cp311-cp311-win_x86_64.whl]` 明确指定了该库适用于 CUDA 11、PyTorch 2.2 和 Python 3.11 的环境[^1]。因此,需确认本地环境满足这些条件: - **检查 CUDA 版本**: 使用命令 `nvcc --version` 查看已安装的 CUDA 版本。 - **验证 PyTorch 配置**: 运行以下代码片段以获取当前 PyTorch 所支持的 CUDA 版本: ```python import torch print(torch.version.cuda) ``` 如果不符,请重新安装适合的 PyTorch 软件。推荐通过官方指令完成更新操作: ```bash pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 ``` #### 2. 文件路径或命名冲突 将下载好的 `.whl` 文件放入指定目录(如 `yolov12-main` 文件夹)后,应确保路径无误并执行安装命令。若未成功加载模块,可能是因为文件位置不对或者名称拼写有误。建议手动导航至对应文件夹并通过显式调用来解决问题: ```bash cd yolov12-main pip install ./flash_attn-*.whl ``` #### 3. 开发模式下的依赖管理 当采用开发模式 (`pip install -e .`) 来安装项目时,某些子依赖关系可能未能正确解析。此时可以尝试清理旧版缓存再重试整个流程: ```bash pip uninstall -y . pip install -r requirements.txt pip install -e . ``` 此外,还需注意 `requirements.txt` 中列出的各项版本号是否合理以及是否存在过期组件提示。 --- ### 提升性能和调试技巧 考虑到 YOLOv12 设计上提供了多款变体供不同应用场景选用[^2],可以根据实际需求挑选最合适的模型尺寸来优化资源利用率。对于复杂数据集训练期间产生的异常情况,也可以借助可视化工具分析特征分布特性变化趋势[^3],从而进一步调整超参数设定达到最佳效果。 ---
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值