8ffffc1449 | ||
---|---|---|
.. | ||
.attachments | ||
demo-environment | ||
setup | ||
FAQ.md | ||
README.md |
README.md
Verseagility NLP Toolkit
Verseagility is a Python-based toolkit for your custom Natural Language Processing (NLP) projects, covering following tasks:
- Classification
- Named Entity Recognition (NER)
- Question-Answering (QA, suggestion of possible answers for the input text)
This documentation helps you to get started with the toolkit from infrastructure setup over training to deployment of your custom demo.
- Requirements
- Software Architecture
- Verseagility-Setup
- Demo-Setup
- Code Repository
- Questions / FAQ / Problems / Contact
Requirements
Verseagility targets (product and field) data scientists, program managers and architects working within the field of NLP. Nevertheless, everyone who is interested in the field of NLP and can be deployed with no changes in the code. You will enjoy the most if you already bring some previous knowledge:
- Foundational proficiency in Python
- Understand the key principles of NLP tasks
- Experience in Azure Machine Learning
Following technical framework is recommended and will help you to succeed:
- An Azure subscription (including GPU-quota if you want to train your own models)
- Python 3.7 (64bit) and Virtual Environments
- We recommend using Python 3.7.9 as the solution has been fully tested on this version, both on Windows and Linux. You can get Python 3.7.9 following this link: here. On top of the Python base installation, some further packages are required to serve the purpose of the API collection. These are listed in the
requirements.txt
with the respective version numbers. When deploying the service, it will automatically be used for transferring and installing it.
- We recommend using Python 3.7.9 as the solution has been fully tested on this version, both on Windows and Linux. You can get Python 3.7.9 following this link: here. On top of the Python base installation, some further packages are required to serve the purpose of the API collection. These are listed in the
- Azure Command Line Interface (CLI), command line tools for Azure using PowerShell
- VSCode (recommended)
- Alternatively, you can also run the scripts using PowerShell, Windows CMD or Bash
Software Architecture
The toolkit is based on the following architecture. Basically, it is possible to run the toolkit locally to train models and create assets, yet we highly recommend you to use the Microsoft Azure ecosystem to leverage the full functionality and provisioning as a cloud service.
Verseagility-Setup
The step-by-step approach for getting started with the NLP toolkit can be found here. It helps you to set up your environment, guides you through the training process and gives you some advice for potential customizations.
Demo-Setup
A demo resulting from the toolkit deployment running at Microsoft Technology Center (MTC) can be found here:
The intended purpose is illustrated using Microsoft Forum data in English, German, Italian, Spanish and French. More languages might follow over time.
Verseagility also allows you to set up your own personal demo WebApp on Azure. This can be done with your logo/that of your customer or end-to-end with your own data. The different approaches are described here.
Questions / FAQ / Problems / Contact
Feel free to create an issue or pull request in GitHub if you find a bug, have a feature request or a questions. Alternatively, feel free to reach out to the main contributors to this project:
Also, see our FAQ page which is going to be continuously extended as needed.
Feel free to contribute!