1. 19 May, 2020 5 commits
    • Patrick von Platen's avatar
      [Tests, GPU, SLOW] fix a bunch of GPU hardcoded tests in Pytorch (#4468) · aa925a52
      Patrick von Platen authored
      * fix gpu slow tests in pytorch
      
      * change model to device syntax
      aa925a52
    • Sam Shleifer's avatar
      07dd7c2f
    • Iz Beltagy's avatar
      Longformer (#4352) · 8f1d0471
      Iz Beltagy authored
      * first commit
      
      * bug fixes
      
      * better examples
      
      * undo padding
      
      * remove wrong VOCAB_FILES_NAMES
      
      * License
      
      * make style
      
      * make isort happy
      
      * unit tests
      
      * integration test
      
      * make `black` happy by undoing `isort` changes!!
      
      * lint
      
      * no need for the padding value
      
      * batch_size not bsz
      
      * remove unused type casting
      
      * seqlen not seq_len
      
      * staticmethod
      
      * `bert` selfattention instead of `n2`
      
      * uint8 instead of bool + lints
      
      * pad inputs_embeds using embeddings not a constant
      
      * black
      
      * unit test with padding
      
      * fix unit tests
      
      * remove redundant unit test
      
      * upload model weights
      
      * resolve todo
      
      * simpler _mask_invalid_locations without lru_cache + backward compatible masked_fill_
      
      * increase unittest coverage
      8f1d0471
    • Julien Chaumond's avatar
      Distributed eval: SequentialDistributedSampler + gather all results (#4243) · 5e7fe8b5
      Julien Chaumond authored
      * Distributed eval: SequentialDistributedSampler + gather all results
      
      * For consistency only write to disk from world_master
      
      Close https://github.com/huggingface/transformers/issues/4272
      
      * Working distributed eval
      
      * Hook into scripts
      
      * Fix #3721 again
      
      * TPU.mesh_reduce: stay in tensor space
      
      Thanks @jysohn23
      
      * Just a small comment
      
      * whitespace
      
      * torch.hub: pip install packaging
      
      * Add test scenarii
      5e7fe8b5
    • Julien Chaumond's avatar
      Fix nn.DataParallel compatibility in PyTorch 1.5 (#4300) · 4c068936
      Julien Chaumond authored
      * Test case for #3936
      
      * multigpu tests pass on pytorch 1.4.0
      
      * Fixup
      
      * multigpu tests pass on pytorch 1.5.0
      
      * Update src/transformers/modeling_utils.py
      
      * Update src/transformers/modeling_utils.py
      
      * rename multigpu to require_multigpu
      
      * mode doc
      4c068936
  2. 18 May, 2020 3 commits
  3. 17 May, 2020 1 commit
    • Lorenzo Ampil's avatar
      Allow the creation of "entity groups" for NerPipeline #3548 (#3957) · 18d233d5
      Lorenzo Ampil authored
      * Add index to be returned by NerPipeline to allow for the creation of
      
      * Add entity groups
      
      * Convert entity list to dict
      
      * Add entity to entity_group_disagg atfter updating entity gorups
      
      * Change 'group' parameter to 'grouped_entities'
      
      * Add unit tests for grouped NER pipeline case
      
      * Correct variable name typo for NER_FINETUNED_MODELS
      
      * Sync grouped tests to recent test updates
      18d233d5
  4. 14 May, 2020 3 commits
    • Funtowicz Morgan's avatar
      Conversion script to export transformers models to ONNX IR. (#4253) · db0076a9
      Funtowicz Morgan authored
      * Added generic ONNX conversion script for PyTorch model.
      
      * WIP initial TF support.
      
      * TensorFlow/Keras ONNX export working.
      
      * Print framework version info
      
      * Add possibility to check the model is correctly loading on ONNX runtime.
      
      * Remove quantization option.
      
      * Specify ONNX opset version when exporting.
      
      * Formatting.
      
      * Remove unused imports.
      
      * Make functions more generally reusable from other part of the code.
      
      * isort happy.
      
      * flake happy
      
      * Export only feature-extraction for now
      
      * Correctly check inputs order / filter before export.
      
      * Removed task variable
      
      * Fix invalid args call in load_graph_from_args.
      
      * Fix invalid args call in convert.
      
      * Fix invalid args call in infer_shapes.
      
      * Raise exception and catch in caller function instead of exit.
      
      * Add 04-onnx-export.ipynb notebook
      
      * More WIP on the notebook
      
      * Remove unused imports
      
      * Simplify & remove unused constants.
      
      * Export with constant_folding in PyTorch
      
      * Let's try to put function args in the right order this time ...
      
      * Disable external_data_format temporary
      
      * ONNX notebook draft ready.
      
      * Updated notebooks charts + wording
      
      * Correct error while exporting last chart in notebook.
      
      * Adressing @LysandreJik comment.
      
      * Set ONNX opset to 11 as default value.
      
      * Set opset param mandatory
      
      * Added ONNX export unittests
      
      * Quality.
      
      * flake8 happy
      
      * Add keras2onnx dependency on extras["tf"]
      
      * Pin keras2onnx on github master to v1.6.5
      
      * Second attempt.
      
      * Third attempt.
      
      * Use the right repo URL this time ...
      
      * Do the same for onnxconverter-common
      
      * Added keras2onnx and onnxconveter-common to 1.7.0 to supports TF2.2
      
      * Correct commit hash.
      
      * Addressing PR review: Optimization are enabled by default.
      
      * Addressing PR review: small changes in the notebook
      
      * setup.py comment about keras2onnx versioning.
      db0076a9
    • Sam Shleifer's avatar
      [tests] make pipelines tests faster with smaller models (#4238) · 7822cd38
      Sam Shleifer authored
      covers torch and tf. Also fixes a failing @slow test
      7822cd38
    • Julien Chaumond's avatar
      Fix: unpin flake8 and fix cs errors (#4367) · 448c4672
      Julien Chaumond authored
      * Fix: unpin flake8 and fix cs errors
      
      * Ok we still need to quote those
      448c4672
  5. 13 May, 2020 2 commits
  6. 12 May, 2020 1 commit
  7. 10 May, 2020 1 commit
  8. 08 May, 2020 1 commit
  9. 07 May, 2020 4 commits
    • Jared T Nielsen's avatar
      Add AlbertForPreTraining and TFAlbertForPreTraining models. (#4057) · 8bf73126
      Jared T Nielsen authored
      
      
      * Add AlbertForPreTraining and TFAlbertForPreTraining models.
      
      * PyTorch conversion
      
      * TensorFlow conversion
      
      * style
      Co-authored-by: default avatarLysandre <lysandre.debut@reseau.eseo.fr>
      8bf73126
    • Julien Chaumond's avatar
      BIG Reorganize examples (#4213) · 0ae96ff8
      Julien Chaumond authored
      * Created using Colaboratory
      
      * [examples] reorganize files
      
      * remove run_tpu_glue.py as superseded by TPU support in Trainer
      
      * Bugfix: int, not tuple
      
      * move files around
      0ae96ff8
    • Funtowicz Morgan's avatar
      Rewritten batch support in pipelines. (#4154) · 0a6cbea0
      Funtowicz Morgan authored
      
      
      * Rewritten batch support in pipelines.
      Signed-off-by: default avatarMorgan Funtowicz <morgan@huggingface.co>
      
      * Fix imports sorting 馃敡
      
      Signed-off-by: default avatarMorgan Funtowicz <morgan@huggingface.co>
      
      * Set pad_to_max_length=True by default on Pipeline.
      
      * Set pad_to_max_length=False for generation pipelines.
      
      Most of generation models doesn't have padding token.
      
      * Address @joeddav review comment: Uniformized *args.
      Signed-off-by: default avatarMorgan Funtowicz <morgan@huggingface.co>
      
      * Address @joeddav review comment: Uniformized *args (second).
      Signed-off-by: default avatarMorgan Funtowicz <morgan@huggingface.co>
      0a6cbea0
    • Patrick von Platen's avatar
      Reformer (#3351) · dca34695
      Patrick von Platen authored
      * first copy & past commit from Bert and morgans LSH code
      
      * add easy way to compare to trax original code
      
      * translate most of function
      
      * make trax lsh self attention deterministic with numpy seed + copy paste code
      
      * add same config
      
      * add same config
      
      * make layer init work
      
      * implemented hash_vectors function for lsh attention
      
      * continue reformer translation
      
      * hf LSHSelfAttentionLayer gives same output as trax layer
      
      * refactor code
      
      * refactor code
      
      * refactor code
      
      * refactor
      
      * refactor + add reformer config
      
      * delete bogus file
      
      * split reformer attention layer into two layers
      
      * save intermediate step
      
      * save intermediate step
      
      * make test work
      
      * add complete reformer block layer
      
      * finish reformer layer
      
      * implement causal and self mask
      
      * clean reformer test and refactor code
      
      * fix merge conflicts
      
      * fix merge conflicts
      
      * update init
      
      * fix device for GPU
      
      * fix chunk length init for tests
      
      * include morgans optimization
      
      * improve memory a bit
      
      * improve comment
      
      * factorize num_buckets
      
      * better testing parameters
      
      * make whole model work
      
      * make lm model work
      
      * add t5 copy paste tokenizer
      
      * add chunking feed forward
      
      * clean config
      
      * add improved assert statements
      
      * make tokenizer work
      
      * improve test
      
      * correct typo
      
      * extend config
      
      * add complexer test
      
      * add new axial position embeddings
      
      * add local block attention layer
      
      * clean tests
      
      * refactor
      
      * better testing
      
      * save intermediate progress
      
      * clean test file
      
      * make shorter input length work for model
      
      * allow variable input length
      
      * refactor
      
      * make forward pass for pretrained model work
      
      * add generation possibility
      
      * finish dropout and init
      
      * make style
      
      * refactor
      
      * add first version of RevNet Layers
      
      * make forward pass work and add convert file
      
      * make uploaded model forward pass work
      
      * make uploaded model forward pass work
      
      * refactor code
      
      * add namedtuples and cache buckets
      
      * correct head masks
      
      * refactor
      
      * made reformer more flexible
      
      * make style
      
      * remove set max length
      
      * add attention masks
      
      * fix up tests
      
      * fix lsh attention mask
      
      * make random seed optional for the moment
      
      * improve memory in reformer
      
      * add tests
      
      * make style
      
      * make sure masks work correctly
      
      * detach gradients
      
      * save intermediate
      
      * correct backprob through gather
      
      * make style
      
      * change back num hashes
      
      * rename to labels
      
      * fix rotation shape
      
      * fix detach
      
      * update
      
      * fix trainer
      
      * fix backward dropout
      
      * make reformer more flexible
      
      * fix conflict
      
      * fix
      
      * fix
      
      * add tests for fixed seed in reformer layer
      
      * fix trainer typo
      
      * fix typo in activations
      
      * add fp16 tests
      
      * add fp16 training
      
      * support fp16
      
      * correct gradient bug in reformer
      
      * add fast gelu
      
      * re-add dropout for embedding dropout
      
      * better naming
      
      * better naming
      
      * renaming
      
      * finalize test branch
      
      * finalize tests
      
      * add more tests
      
      * finish tests
      
      * fix
      
      * fix type trainer
      
      * fix fp16 tests
      
      * fix tests
      
      * fix tests
      
      * fix tests
      
      * fix issue with dropout
      
      * fix dropout seeds
      
      * correct random seed on gpu
      
      * finalize random seed for dropout
      
      * finalize random seed for dropout
      
      * remove duplicate line
      
      * correct half precision bug
      
      * make style
      
      * refactor
      
      * refactor
      
      * docstring
      
      * remove sinusoidal position encodings for reformer
      
      * move chunking to modeling_utils
      
      * make style
      
      * clean config
      
      * make style
      
      * fix tests
      
      * fix auto tests
      
      * pretrained models
      
      * fix docstring
      
      * update conversion file
      
      * Update pretrained_models.rst
      
      * fix rst
      
      * fix rst
      
      * update copyright
      
      * fix test path
      
      * fix test path
      
      * fix small issue in test
      
      * include reformer in generation tests
      
      * add docs for axial position encoding
      
      * finish docs
      
      * Update convert_reformer_trax_checkpoint_to_pytorch.py
      
      * remove isort
      
      * include sams comments
      
      * remove wrong comment in utils
      
      * correct typos
      
      * fix typo
      
      * Update reformer.rst
      
      * applied morgans optimization
      
      * make style
      
      * make gpu compatible
      
      * remove bogus file
      
      * big test refactor
      
      * add example for chunking
      
      * fix typo
      
      * add to README
      dca34695
  10. 06 May, 2020 1 commit
    • Julien Plu's avatar
      TF version of the trainer (#4017) · aad50151
      Julien Plu authored
      * First commit to add a TF version of the trainer.
      
      * Make the TF trainer closer to what looks the PT trainer
      
      * Refactoring common code between the PT and TF trainer into an util file.
      
      * Some bugfix + better similarity with the PT trainer
      
      * Add missing class in transformers init
      
      * Bugfix over prediction + use classification report instead of simple metrics
      
      * Fix name error
      
      * Fix optimization tests + style
      
      * Apply style
      
      * Several bugfix for multi-gpu training
      
      * Apply style
      
      * Apply style
      
      * Add glue example for the TF trainer
      
      * Several bugix + address the reviews
      
      * Fix on the TF training args file
      
      * Add a debug mode
      
      * Bugfix in utils_ner.py when segment_ids is None
      
      * Apply style
      
      * Apply style
      
      * Add TPU strategy
      
      * Fix selection strategy
      aad50151
  11. 05 May, 2020 1 commit
    • Lysandre Debut's avatar
      Pytorch 1.5.0 (#3973) · 79b1c696
      Lysandre Debut authored
      * Standard deviation can no longer be set to 0
      
      * Remove torch pinned version
      
      * 9th instead of 10th, silly me
      79b1c696
  12. 04 May, 2020 1 commit
  13. 01 May, 2020 3 commits
  14. 30 Apr, 2020 2 commits
  15. 29 Apr, 2020 1 commit
  16. 28 Apr, 2020 2 commits
  17. 22 Apr, 2020 2 commits
    • Lorenzo Ampil's avatar
      Pipeline for Text Generation: GenerationPipeline (#3758) · f16540fc
      Lorenzo Ampil authored
      
      
      * Add GenerationPipeline
      
      * Fix parameter names
      
      * Correct parameter __call__ parameters
      
      * Add model type attribute and correct function calls for prepare_input
      
      * Take out trailing commas from init attributes
      
      * Remove unnecessary tokenization line
      
      * Implement support for multiple text inputs
      
      * Apply generation support for multiple input text prompts
      
      * Take out tensor coersion
      
      * Take out batch index
      
      * Add text prompt to return sequence
      
      * Squeeze token tensore before decoding
      
      * Return only a single list of sequences if only one prompt was used
      
      * Correct results variable name
      
      * Add GenerationPipeline to SUPPORTED_TASKS with the alias , initalized w GPT2
      
      * Registedred AutoModelWithLMHead for both pt and t
      
      * Update docstring for GenerationPipeline
      
      * Add kwargs parameter to mode.generate
      
      * Take out kwargs parameter after all
      
      * Add generation pipeline example in pipeline docstring
      
      * Fix max length by squeezing tokens tensor
      
      * Apply ensure_tensor_on_device to pytorch tensor
      
      * Include generation step in torch.no_grad
      
      * Take out input from prepare_xlm_input and set 'en' as default xlm_language
      
      * Apply framework specific encoding during prepare_input
      
      * Format w make style
      
      * Move GenerationPipeline import to follow proper import sorting
      
      * Take out training comma from generation dict
      
      * Apply requested changes
      
      * Change name to TextGenerationPipeline
      
      * Apply TextGenerationPipeline rename to __init___
      
      * Changing alias to
      
      * Set input mapping as input to ensure_tensor_on_device
      
      * Fix assertion placement
      
      * Add test_text_generation
      
      * Add TextGenerationPipeline to PipelineCommonTests
      
      * Take out whitespace
      
      * Format __init__ w black
      
      * Fix __init__ style
      
      * Forman __init___
      
      * Add line to end of __init__
      
      * Correct model tokenizer set for test_text_generation
      
      * Ensure to return list of list, not list of string (to pass test)
      
      * Limit test models to only 3 to limit runtime to address circleCI timeout error
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update tests/test_pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Remove argument docstring, __init__, add additional __call__ arguments, and reformat results to list of dict
      
      * Fix blank result list
      
      * Add TextGenerationPipeline to pipelines.rst
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Fix typos from adding PADDING_TEXT_TOKEN_LENGTH
      
      * Fix incorrectly moved result list
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      
      * Update src/transformers/pipelines.py
      Co-Authored-By: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Add back generation line and make style
      
      * Take out blank whitespace
      
      * Apply new alis, text-generation, to test_pipelines
      
      * Fix text generation alias in test
      
      * Update src/transformers/pipelines.py
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      Co-authored-by: default avatarJulien Chaumond <chaumond@gmail.com>
      f16540fc
    • Julien Chaumond's avatar
      Trainer (#3800) · dd9d483d
      Julien Chaumond authored
      * doc
      
      * [tests] Add sample files for a regression task
      
      * [HUGE] Trainer
      
      * Feedback from @sshleifer
      
      * Feedback from @thomwolf + logging tweak
      
      * [file_utils] when downloading concurrently, get_from_cache will use the cached file for subsequent processes
      
      * [glue] Use default max_seq_length of 128 like before
      
      * [glue] move DataTrainingArguments around
      
      * [ner] Change interface of InputExample, and align run_{tf,pl}
      
      * Re-align the pl scripts a little bit
      
      * ner
      
      * [ner] Add integration test
      
      * Fix language_modeling with API tweak
      
      * [ci] Tweak loss target
      
      * Don't break console output
      
      * amp.initialize: model must be on right device before
      
      * [multiple-choice] update for Trainer
      
      * Re-align to 827d6d6e
      dd9d483d
  18. 18 Apr, 2020 1 commit
    • Thomas Wolf's avatar
      Cleanup fast tokenizers integration (#3706) · 827d6d6e
      Thomas Wolf authored
      
      
      * First pass on utility classes and python tokenizers
      
      * finishing cleanup pass
      
      * style and quality
      
      * Fix tests
      
      * Updating following @mfuntowicz comment
      
      * style and quality
      
      * Fix Roberta
      
      * fix batch_size/seq_length inBatchEncoding
      
      * add alignement methods + tests
      
      * Fix OpenAI and Transfo-XL tokenizers
      
      * adding trim_offsets=True default for GPT2 et RoBERTa
      
      * style and quality
      
      * fix tests
      
      * add_prefix_space in roberta
      
      * bump up tokenizers to rc7
      
      * style
      
      * unfortunately tensorfow does like these - removing shape/seq_len for now
      
      * Update src/transformers/tokenization_utils.py
      Co-Authored-By: default avatarStefan Schweter <stefan@schweter.it>
      
      * Adding doc and docstrings
      
      * making flake8 happy
      Co-authored-by: default avatarStefan Schweter <stefan@schweter.it>
      827d6d6e
  19. 17 Apr, 2020 4 commits
  20. 16 Apr, 2020 1 commit