Metadata-Version: 2.1
Name: fairseq
Version: 0.8.0
Summary: Facebook AI Research Sequence-to-Sequence Toolkit
Home-page: https://github.com/pytorch/fairseq
License: UNKNOWN
Description: # <img src="fairseq_logo.png" width="30"> Introduction
        
        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.
        
        ### What's New:
        
        - July 2019: fairseq relicensed under MIT license
        - July 2019: [RoBERTa models and code release](examples/roberta/README.md)
        - June 2019: [wav2vec models and code release](examples/wav2vec/README.md)
        - April 2019: [fairseq demo paper @ NAACL 2019](https://arxiv.org/abs/1904.01038)
        
        ### Features:
        
        Fairseq provides reference implementations of various sequence-to-sequence models, including:
        - **Convolutional Neural Networks (CNN)**
          - [Language Modeling with Gated Convolutional Networks (Dauphin et al., 2017)](examples/language_model/conv_lm/README.md)
          - [Convolutional Sequence to Sequence Learning (Gehring et al., 2017)](examples/conv_seq2seq/README.md)
          - [Classical Structured Prediction Losses for Sequence to Sequence Learning (Edunov et al., 2018)](https://github.com/pytorch/fairseq/tree/classic_seqlevel)
          - [Hierarchical Neural Story Generation (Fan et al., 2018)](examples/stories/README.md)
          - [wav2vec: Unsupervised Pre-training for Speech Recognition (Schneider et al., 2019)](examples/wav2vec/README.md)
        - **LightConv and DynamicConv models**
          - [Pay Less Attention with Lightweight and Dynamic Convolutions (Wu et al., 2019)](examples/pay_less_attention_paper/README.md)
        - **Long Short-Term Memory (LSTM) networks**
          - Effective Approaches to Attention-based Neural Machine Translation (Luong et al., 2015)
        - **Transformer (self-attention) networks**
          - Attention Is All You Need (Vaswani et al., 2017)
          - [Scaling Neural Machine Translation (Ott et al., 2018)](examples/scaling_nmt/README.md)
          - [Understanding Back-Translation at Scale (Edunov et al., 2018)](examples/backtranslation/README.md)
          - [Adaptive Input Representations for Neural Language Modeling (Baevski and Auli, 2018)](examples/language_model/transformer_lm/README.md)
          - [Mixture Models for Diverse Machine Translation: Tricks of the Trade (Shen et al., 2019)](examples/translation_moe/README.md)
          - [RoBERTa: A Robustly Optimized BERT Pretraining Approach (Liu et al., 2019)](examples/roberta/README.md)
        
        **Additionally:**
        - multi-GPU (distributed) training on one machine or across multiple machines
        - fast generation on both CPU and GPU with multiple search algorithms implemented:
          - beam search
          - Diverse Beam Search ([Vijayakumar et al., 2016](https://arxiv.org/abs/1610.02424))
          - sampling (unconstrained, top-k and top-p/nucleus)
        - large mini-batch training even on a single GPU via delayed updates
        - mixed precision training (trains faster with less GPU memory on [NVIDIA tensor cores](https://developer.nvidia.com/tensor-cores))
        - extensible: easily register new models, criterions, tasks, optimizers and learning rate schedulers
        
        We also provide [pre-trained models](#pre-trained-models-and-examples) for several benchmark
        translation and language modeling datasets.
        
        ![Model](fairseq.gif)
        
        # Requirements and Installation
        
        * [PyTorch](http://pytorch.org/) version >= 1.0.0
        * Python version >= 3.5
        * For training new models, you'll also need an NVIDIA GPU and [NCCL](https://github.com/NVIDIA/nccl)
        
        Please follow the instructions here to install PyTorch: https://github.com/pytorch/pytorch#installation.
        
        If you use Docker make sure to increase the shared memory size either with
        `--ipc=host` or `--shm-size` as command line options to `nvidia-docker run`.
        
        After PyTorch is installed, you can install fairseq with `pip`:
        ```
        pip install fairseq
        ```
        On MacOS,
        ```
        CFLAGS="-stdlib=libc++" pip install fairseq
        ```
        **Installing from source**
        
        To install fairseq from source and develop locally:
        ```
        git clone https://github.com/pytorch/fairseq
        cd fairseq
        pip install --editable .
        ```
        
        **Improved training speed**
        
        Training speed can be further improved by installing NVIDIA's
        [apex](https://github.com/NVIDIA/apex) library with the `--cuda_ext` option.
        fairseq will automatically switch to the faster modules provided by apex.
        
        # Getting Started
        
        The [full documentation](https://fairseq.readthedocs.io/) 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.
        
        - [Translation](examples/translation/README.md): convolutional and transformer models are available
        - [Language Modeling](examples/language_model/README.md): convolutional models are available
        
        We also have more detailed READMEs to reproduce results from specific papers:
        - [RoBERTa: A Robustly Optimized BERT Pretraining Approach (Liu et al., 2019)](examples/roberta/README.md)
        - [wav2vec: Unsupervised Pre-training for Speech Recognition (Schneider et al., 2019)](examples/wav2vec/README.md)
        - [Mixture Models for Diverse Machine Translation: Tricks of the Trade (Shen et al., 2019)](examples/translation_moe/README.md)
        - [Pay Less Attention with Lightweight and Dynamic Convolutions (Wu et al., 2019)](examples/pay_less_attention_paper/README.md)
        - [Understanding Back-Translation at Scale (Edunov et al., 2018)](examples/backtranslation/README.md)
        - [Classical Structured Prediction Losses for Sequence to Sequence Learning (Edunov et al., 2018)](https://github.com/pytorch/fairseq/tree/classic_seqlevel)
        - [Hierarchical Neural Story Generation (Fan et al., 2018)](examples/stories/README.md)
        - [Scaling Neural Machine Translation (Ott et al., 2018)](examples/scaling_nmt/README.md)
        - [Convolutional Sequence to Sequence Learning (Gehring et al., 2017)](examples/conv_seq2seq/README.md)
        - [Language Modeling with Gated Convolutional Networks (Dauphin et al., 2017)](examples/language_model/conv_lm/README.md)
        
        # Join the fairseq community
        
        * Facebook page: https://www.facebook.com/groups/fairseq.users
        * Google group: https://groups.google.com/forum/#!forum/fairseq-users
        
        # License
        fairseq(-py) is MIT-licensed.
        The license applies to the pre-trained models as well.
        
        # Citation
        
        Please cite as:
        
        ```bibtex
        @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},
        }
        ```
        
Platform: UNKNOWN
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Description-Content-Type: text/markdown
