Skip to content

Latest commit

 

History

History
58 lines (43 loc) · 4.11 KB

README.md

File metadata and controls

58 lines (43 loc) · 4.11 KB

Verseagility

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.

  1. Requirements
  2. Software Architecture
  3. Verseagility-Setup
  4. Demo-Setup
  5. Code Repository
  6. 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.
  • 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.

Architecture diagram

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:

Verseagility Demo

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!