fairseq2: FAIR 序列建模工具包 2
文档: 稳定版, 每日构建版 | 安装: Linux, macOS, Windows, 从源码安装 | 贡献: 指南
fairseq2 是一个序列建模工具包,允许研究人员和开发者为翻译、摘要、语言建模和其他内容生成任务训练自定义模型。它也是 fairseq 的后继者。
入门指南
即将推出...
有关最近的变更,您可以查看我们的更新日志。
模型
截至目前,fairseq2 中提供以下模型:
- LLaMA
- LLaMA 2
- LLaMA 3
- LLaMA 3.1
- Mistral 7B
- NLLB-200
- S2T Transformer + Conformer
- w2v-BERT
- wav2vec 2.0
- wav2vec 2.0 ASR
fairseq2 也被各种外部项目使用,例如:
在 Linux 上安装
系统依赖
fairseq2 依赖于 libsndfile,在大多数 Linux 发行版上可以通过系统包管理器安装。对于基于 Ubuntu 的系统,运行:
sudo apt install libsndfile1
同样,在 Fedora 上,运行:
sudo dnf install libsndfile
对于其他 Linux 发行版,请查阅其文档了解如何安装软件包。
pip
要在 Linux x86-64 上安装 fairseq2,运行:
pip install fairseq2
此命令将安装与 PyPI 上托管的 PyTorch 兼容的 fairseq2 版本。
目前,我们不为基于 ARM 的系统(如 Raspberry Pi 或 NVIDIA Jetson)提供预构建包。请参考从源码安装了解如何在这些系统上构建和安装 fairseq2。
变体
除了 PyPI,fairseq2 还在 FAIR 的软件包仓库中提供了适用于不同 PyTorch 和 CUDA 版本的预构建包。以下矩阵显示了支持的组合。
fairseq2 | PyTorch | Python | 变体* | 架构 |
---|---|---|---|---|
HEAD | 2.4.0 | >=3.10 , <=3.12 | cpu , cu118 , cu121 | x86_64 |
2.3.0 , 2.3.1 | >=3.10 , <=3.12 | cpu , cu118 , cu121 | x86_64 | |
2.2.0 , 2.2.1 , 2.2.2 | >=3.10 , <=3.12 | cpu , cu118 , cu121 | x86_64 | |
0.2.0 | 2.1.1 | >=3.8 , <=3.11 | cpu , cu118 , cu121 | x86_64 |
2.0.1 | >=3.8 , <=3.11 | cpu , cu117 , cu118 | x86_64 | |
1.13.1 | >=3.8 , <=3.10 | cpu , cu116 | x86_64 |
* cuXYZ 指 CUDA XY.Z(例如 cu118 表示 CUDA 11.8)
要安装特定组合,首先按照 pytorch.org 上的安装说明安装所需的 PyTorch 版本,然后使用以下命令(以 PyTorch 2.4.0
和变体 cu121
为例):
pip install fairseq2\
--extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/pt2.4.0/cu121
[!警告] fairseq2 依赖于 PyTorch 的 C++ API,该 API 在不同版本之间不具有 API/ABI 兼容性。 这意味着您必须安装与您的 PyTorch 版本完全匹配的 fairseq2 变体。否则,您可能 会遇到诸如进程立即崩溃或莫名其妙的段错误等问题。出于同样的原因,如果您升级了 PyTorch 版本,也必须同时升级 fairseq2 安装。
每日构建版本
对于 Linux,我们还在 FAIR 的软件包仓库上提供每日构建版本。支持的变体与上面"变体"
部分列出的相同。在安装所需的 PyTorch 版本后,您可以使用以下命令安装相应的每日构建
包(以 PyTorch 2.4.0
和变体 cu121
为例):
pip install fairseq2\
--pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.4.0/cu121
在 macOS 上安装
系统依赖
fairseq2 依赖于 libsndfile, 可以通过 Homebrew 安装:
brew install libsndfile
pip
要在基于 ARM64(即 Apple 芯片)的 Mac 电脑上安装 fairseq2,请运行:
pip install fairseq2
此命令将安装与 PyPI 上托管的 PyTorch 兼容的 fairseq2 版本。
目前,我们不为基于 Intel 的 Mac 电脑提供预构建包。请参阅从源代码安装 了解如何在 Intel 机器上构建和安装 fairseq2。
变体
除了 PyPI 外,fairseq2 还为不同的 PyTorch 版本提供预构建包,这些包托管在 FAIR 的 软件包仓库上。以下矩阵显示了支持的组合。
fairseq2 | PyTorch | Python | 架构 |
---|---|---|---|
HEAD | 2.4.0 | >=3.9 , <=3.12 | arm64 |
要安装特定组合,首先按照 pytorch.org
上的安装说明安装所需的 PyTorch 版本,然后使用以下命令(以 PyTorch 2.4.0
为例):
pip install fairseq2\
--extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/pt2.4.0/cpu
[!警告] fairseq2 依赖于 PyTorch 的 C++ API,该 API 在不同版本之间不具有 API/ABI 兼容性。 这意味着您必须安装与您的 PyTorch 版本完全匹配的 fairseq2 变体。否则,您可能 会遇到诸如进程立即崩溃或莫名其妙的段错误等问题。出于同样的原因,如果您升级了 PyTorch 版本,也必须同时升级 fairseq2 安装。
每日构建版本
对于 macOS,我们还在 FAIR 的软件包仓库上提供每日构建版本。支持的变体与上面"变体"
部分列出的相同。在安装所需的 PyTorch 版本后,您可以使用以下命令安装相应的每日构建
包(以 PyTorch 2.4.0
为例):
pip install fairseq2\
--pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.4.0/cpu
在 Windows 上安装
fairseq2 不原生支持 Windows,并且在可预见的未来也没有支持计划。但是,您可以通过 Windows Subsystem for Linux (简称 WSL)使用 fairseq2,并且可以使用 WSL 2 中引入的完整 CUDA 支持。请按照 在 Linux 上安装 部分的说明进行基于 WSL 的安装。
从源代码安装
请参阅此处。
贡献
我们始终欢迎对 fairseq2 的贡献!请参阅贡献指南了解如何格式化、 测试和提交您的工作。
引用 fairseq2
如果您在研究中使用 fairseq2 并希望引用它,请使用以下 BibTeX 条目。
@software{balioglu2023fairseq2,
author = {Can Balioglu},
title = {fairseq2},
url = {http://github.com/facebookresearch/fairseq2},
year = {2023},
}
许可证
本项目采用 MIT 许可证,详见 LICENSE 文件。