fairseq README

The project's README from github.com/facebookresearch/fairseq. As one markdown file: README.md.



Support Ukraine MIT License Latest Release Build Status Documentation Status CicleCI Status


Fairseq(-py) is a sequence modeling toolkit that allows researchers and developers to train custom models for translation, summarization, language modeling and other text generation tasks.

We provide reference implementations of various sequence modeling papers:

List of implemented papers

What's New:

Previous updates

Features:

We also provide pre-trained models for translation and language modeling with a convenient torch.hub interface:

en2de = torch.hub.load('pytorch/fairseq', 'transformer.wmt19.en-de.single_model')
en2de.translate('Hello world', beam=5)
# 'Hallo Welt'

See the PyTorch Hub tutorials for translation and RoBERTa for more examples.

Requirements and Installation

git clone https://github.com/pytorch/fairseq
cd fairseq
pip install --editable ./

# on MacOS:
# CFLAGS="-stdlib=libc++" pip install --editable ./

# to install the latest stable release (0.10.x)
# pip install fairseq
git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" \
  --global-option="--deprecated_fused_adam" --global-option="--xentropy" \
  --global-option="--fast_multihead_attn" ./

Getting Started

The full documentation contains instructions for getting started, training new models and extending fairseq with new model types and tasks.

Pre-trained models and examples

We provide pre-trained models and pre-processed, binarized test sets for several tasks listed below, as well as example training and evaluation commands.

We also have more detailed READMEs to reproduce results from specific papers:

Join the fairseq community

License

fairseq(-py) is MIT-licensed. The license applies to the pre-trained models as well.

Citation

Please cite as:

@inproceedings{ott2019fairseq,
  title = {fairseq: A Fast, Extensible Toolkit for Sequence Modeling},
  author = {Myle Ott and Sergey Edunov and Alexei Baevski and Angela Fan and Sam Gross and Nathan Ng and David Grangier and Michael Auli},
  booktitle = {Proceedings of NAACL-HLT 2019: Demonstrations},
  year = {2019},
}

fairseq (facebookresearch/fairseq)

Searching Database…

32.2K ·GitHub
archived
Что это такое?Fairseq — это инструментарий от Facebook AI Research для моделирования последовательностей, который позволяет обучать собственные модели для перевода, суммаризации, языкового моделирования и других задач генерации текста. Построен на PyTorch.
Это готовое приложение или набор инструментов, на основе которого я что-то строю?Это исследовательский инструментарий/библиотека на Python поверх PyTorch. Им пользуются через инструменты командной строки для обучения и генерации или регистрируя собственные модели, критерии, задачи и оптимизаторы.
Как установить это и запустить модель?Клонируйте репозиторий и установите его локально через pip (режим editable), затем используйте предоставляемый интерфейс torch.hub или готовые предобученные модели, перечисленные для перевода и языкового моделирования.
Что нужно before обучением модели?Нужны PyTorch 1.10.0+ и Python 3.8+; для обучения новых моделей также понадобится GPU NVIDIA с NCCL, а опционально — библиотека NVIDIA apex или PyArrow для больших датасетов.
Проект всё ещё активно поддерживается?Нет, репозиторий заархивирован: он доступен только для чтения и больше не получает обновлений, хотя код, статьи и предобученные модели по-прежнему доступны для использования.
Нужен ли мне GPU NVIDIA, чтобы это использовать?Да, для обучения новых моделей нужен GPU NVIDIA + NCCL. Генерация же может работать и на CPU, а смешанная точность обучения на тензорных ядрах NVIDIA ускоряет процесс ещё сильнее.
Какие задачи могут решать модели fairseq?Перевод, языковое моделирование, суммаризацию, распознавание речи (через wav2vec) и другие задачи генерации текста и речи, для каждой из которых есть эталонные реализации.
Какие известные модели впервые вышли через fairseq?RoBERTa, BART, mBART, wav2vec/wav2vec 2.0, XLM-R и модели перевода на основе Transformer для WMT были выпущены как эталонные реализации в составе fairseq.
Можно ли использовать предобученные модели, не обучая свои?Да, fairseq предоставляет предобученные контрольные точки для перевода и языкового моделирования, доступные через удобный интерфейс torch.hub.
Какие стратегии поиска и декодирования поддерживает генерация?Лучевой поиск (beam search), Diverse Beam Search, сэмплирование без ограничений, top-k и top-p, а также декодирование с лексическими ограничениями встроены для быстрой генерации на CPU или GPU.
Size
25.5 MB
Stars
32.2K
Age
9y
Commits · 90 Days