Skip to content

prashantkodali/NLP-toolkit-as-a-service

Repository files navigation

CSE 461 Software Engineering
Spring 2020
IIIT Hyderabad

Course Project: NLP toolkit as a service

GNU General Purpose License v3.0



Team 8
Saumitra Yadav | Neha Motlani | Sunil Gundapu
Ananya Mukherjee | Prashant Kodali | Hiranmai Sri Adibhatla

Project Abstract | Project High Level Design

Project Overview:

Due to the inherent nature of the field of NLP, any application development or research projects, involves trying out multiple algorithms / models. Trying out these algorithms can involve lots of work, and if everybody is doing it, it is lot of double work. And, if someone is low on compute resources, it restricts a programmer from exploring those models or algorithms.

To address this problem, our team set out on developing a platform which enables users to share and acess this knowledge within an institution and across teams.

Components:

  • Frontend:

    • for hosting details regarding all the services available.
    • for developers to try a particular service
    • A place to gather details of the APIs that developer can hit to access these services, if he/she intends to use these services in their application.
    • Allows developers to publish their applications/services.
    • Flask, a python based web framework, is used for implementing the frontend, and for acessing each of the implemented service.
  • Individual services:

    • developed and published by developers.

    • individual services are run and hosted by the individuals. the frontend doesn't involve hosting a service.

    • Flask is used to exposing APIs of each of the services listed below. However, that is not a limitation, as long as the service implemnted can take input as json and send a json as a response.

    • Following services have been implemented and integrated with frontend by our Team

      Please access these individual pages for more details on each of these pages.

alt text

System Architecture

UML Class Diagram

UML class diagram for giving an abstract idea and describing static structure of 'NLP toolkit as a service' project is given below. It shows classes, their attributes, operations and relationships among objects.

alt text

Normal User and Admin are inherited from class USER. whichService() method of Normal User is used to call objects of services as APIs to do certain jobs and these services have an association relationship with Normal User.

About

CSE 461 Software Engineering Spring 2020 Course Project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published