Skip to main content

A augmentation library based on SpaCy for joint augmentation of text and labels.

Project description

Augmenty: The cherry on top of your NLP pipeline

PyPI version python version Code style: black spacy github actions pytest github actions docs github coverage CodeFactor

Augmenty is an augmentation library based on spaCy for augmenting texts. Besides a wide array of highly flexible augmenters, Augmenty provides a series of tools for working with augmenters, including combining and moderating augmenters. Augmenty differs from other augmentation libraries in that it corrects (as far as possible) the assigned labels under the augmentation, thus making many of the augmenters valid for training more than simply sentence classification.

🔧 Installation

To get started using augmenty simply install it using pip by running the following line in your terminal:

pip install augmenty

Do note that this is a minimal installation. As some augmenters requires additional packages please the following line to install all dependencies.

pip install augmenty[all]

For more detailed instructions on installing augmenty, including specific language support, see the installation instructions.

📖 Documentation


Documentation
📚 Usage Guides Guides and instruction on how to use augmenty and its features.
🍒 Augmenters Contains a full list of current and planned augmenters in augmenty.
📰 News and changelog New additions, changes and version history.
🎛 API Reference The detailed reference for augmenty's API. Including function documentation

💬 Where to ask questions


Type
🚨 Bug Reports GitHub Issue Tracker
🎁 Feature Requests & Ideas GitHub Issue Tracker
👩‍💻 Usage Questions GitHub Discussions
🗯 General Discussion GitHub Discussions
🍒 Adding an Augmenter Adding an augmenter

🤔 FAQ

How do I test the code and run the test suite?

augmenty comes with an extensive test suite. In order to run the tests, you'll usually want to clone the repository and build augmenty from the source. This will also install the required development dependencies and test utilities defined in the requirements.txt.

pip install -r requirements.txt
pip install pytest

python -m pytest

which will run all the test in the augmenty/tests folder.

Specific tests can be run using:

python -m pytest augmenty/tests/test_readability.py

Code Coverage If you want to check code coverage you can run the following:

pip install pytest-cov

python -m pytest--cov=.

Does augmenty run on X?

augmenty is intended to run on all major OS, this includes Windows (latest version), MacOS (Catalina) and the latest version of Linux (Ubuntu). Below you can see if augmenty passes its test suite for the system of interest. Please note these are only the systems augmenty is being actively tested on, if you run on a similar system (e.g. an earlier version of Linux) augmenty will likely run there as well, if not please create an issue.

Operating System Status
Ubuntu/Linux (Latest) github actions pytest ubuntu
MacOS (Catalina) github actions pytest catalina
Windows (Latest) github actions pytest windows

How is the documentation generated?

augmenty uses sphinx to generate documentation. It uses the Furo theme with a custom styling.

To make the documentation you can run:

# install sphinx, themes and extensions
pip install sphinx furo sphinx-copybutton sphinxext-opengraph

# generate html from documentations

make -C docs html

Many of these augmenters are completely useless for training?

That is true, some of the augmenters are rarely something you would augment with during training. For instance randomly adding or removing spacing. However, augmentation can just as well be used to test whether a model is robust to certain variations.



Can I use augmenty without using spacy?

Indeed augmenty contains convenience functions for applying augmentation directly to raw texts. Check out the getting started guide to learn how.


🎓 Citing this work

If you use this library in your research, please cite:

@inproceedings{augmenty2021,
    title={Augmenty, the cherry on top of your NLP pipeline},
    author={Enevoldsen, Kenneth and Hansen, Lasse},
    year={2021}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

augmenty-0.0.2.tar.gz (34.8 kB view details)

Uploaded Source

Built Distribution

augmenty-0.0.2-py3-none-any.whl (48.2 kB view details)

Uploaded Python 3

File details

Details for the file augmenty-0.0.2.tar.gz.

File metadata

  • Download URL: augmenty-0.0.2.tar.gz
  • Upload date:
  • Size: 34.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for augmenty-0.0.2.tar.gz
Algorithm Hash digest
SHA256 a8d2fccec5ac2c7cdb3acdb32185ab212be5522d736b7ad9942da1d3451eb4fb
MD5 da5eb2b5bc5210975249981f292258eb
BLAKE2b-256 8b27eabef05bf8849eb059b4da387fcc72f4cc2a8a0e0ecf7602ba4d3806ffef

See more details on using hashes here.

File details

Details for the file augmenty-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: augmenty-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 48.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for augmenty-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5cd873919b0ffe4a00fc2d3ee7c36d4568ec834b3bb1a459aeaf90b95515857e
MD5 b8f10b7f070de207c131970b07ac680c
BLAKE2b-256 ebbf77052e1a6fc408e5a8e62fe4f2792e693f228ec9a296c1141a1033ed9766

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page