AllenNLP is an Apache 2.0 NLP research library, built on PyTorch, for developing state-of-the-art deep learning models on a wide variety of linguistic tasks.
AllenNLP is designed to support researchers who want to build novel language understanding models quickly and easily. It is built on top of PyTorch, allowing for dynamic computation graphs, and provides (1) a flexible data API that handles intelligent batching and padding, (2) highlevel abstractions for common operations in working with text, and (3) a modular and extensible experiment framework that makes doing good science easy.
It also includes reference implementations of high quality approaches for both core semantic problems (e.g. semantic role labeling (Palmer et al., 2005)) and language understanding applications (e.g. machine comprehension (Rajpurkar et al., 2016)).
AllenNLP was an open-source effort maintained by engineers and researchers at the Allen Institute for Artificial Intelligence. AllenNLP requires Python 3.6.1 or later.
AllenNLP was designed with the following principles:
- Hyper-modular and lightweight. Use the parts which you like seamlessly with PyTorch.
- Extensively tested and easy to extend. Test coverage is above 90% and the example models provide a template for contributions.
- Take padding and masking seriously, making it easy to implement correct models without the pain.
- Experiment friendly. Run reproducible experiments from a json specification with comprehensive logging.
Website: github.com/allenai/allennlp
Support:
Developer: Allen Institute for Artificial Intelligence
License: Apache License 2.0
AllenNLP is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Python Natural Language Processing Tools | |
|---|---|
| PyTorch-Transformers | Library of state-of-the-art pre-trained models for NLP |
| NLTK | Natural Language Toolkit |
| spaCy | Industrial strength natural language processing |
| scikit-learn | Machine learning library |
| Haystack | AI orchestration framework |
| Gensim | Vector space modeling and topic modeling toolkit |
| flair | Simple framework for state-of-the-art NLP |
| TextBlob | Python (2 and 3) library for processing textual data |
| doccano | Data labelling and text annotation platform |
| BERTopic | Topic modeling |
| textacy | Python library for performing NLP tasks |
| Presidio | Data protection and de-identification SDK |
| polyglot | Multilingual text (NLP) processing toolkit |
| AllenNLP | Apache 2.0 NLP research library |
| Snips NLU | Natural Language Understanding Python library |
| PyNLPI | Various modules useful for common, and less common, NLP tasks |
| nlpnet | Natural Language Processing with neural networks |
| Pattern | Web mining module |
| GluonNLP | Deep Learning for NLP |
| PyTorch-NLP | Neural network layers, text processing modules and datasets |
| NLP Architect | Deep Learning NLP/NLU library |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.