mjun0812/flash-attention-prebuild-wheels
Provide with pre-build flash-attention 2 and 3 package wheels on Linux and Windows using GitHub Actions
flash-attention-prebuild-wheels
简介 – 一个托管即用型二进制轮子的GitHub仓库,适用于FlashAttention库(FlashAttention 1、2和3)。FlashAttention是大型语言模型中使用的注意力操作的高性能CUDA/ROCm实现。从源代码构建速度慢且需要强大的GPU,因此该项目为多种Python、CUDA(或ROCm)、PyTorch和平台(Linux x86_64、Linux ARM64、Windows)组合提供了预编译轮子。
重要性 – 研究人员和开发人员可以通过一条pip install命令将FlashAttention添加到他们的Python环境中,避免了数小时的编译和自定义构建环境的需求。该仓库覆盖了列出版本矩阵的100%(超过1,000个轮子),甚至为需要Hopper级GPU和CUDA 12.3+的更新的FlashAttention 3提供了轮子。
使用方法
- 选择所需的轮子名称,该名称包含FlashAttention版本、CUDA/ROCm版本、PyTorch版本和Python版本,例如:
flash_attn-2.6.3+cu124torch2.5-cp312-cp312-linux_x86_64.whl - 在有用搜索页面(https://mjunya.com/flash-attention-prebuild-wheels/)、`doc/packages.md`列表或GitHub发布页面上找到确切的URL。
- 直接从GitHub安装:
或先下载再本地安装。pip install https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/download/v0.0.0/flash_attn-2.6.3+cu124torch2.5-cp312-cp312-linux_x86_64.whl
支持的平台 – Linux x86_64、Linux ARM64、Windows以及带AMD ROCm的Linux。轮子基于GitHub托管的运行器、自托管机器和AWS CodeBuild的混合环境构建,使用many-linux_2_28容器以确保广泛的glibc兼容性。
何时需要自行构建 – 如果缺少特定的版本组合,您可以分叉仓库,编辑create_matrix.py添加所需的矩阵条目,标记新发布(例如v0.9.0),然后让CI构建轮子。对于超过GitHub托管作业限制的超大型构建,需要自托管运行器。
引用 – README提供了BibTeX条目,用于在学术工作中引用该轮子仓库。
所有信息直接取自仓库的README。
相关
- 项目
- 项目
- 项目
- 项目
- 项目