Skip to content

karndeb/Fastapi-Streamlit-NLP-Microservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NLP As A Microservice

NLP As A Microservice Demo

This project is a sample demo of NLP as a service mono-repo microservice platform built using FastAPI, Streamlit and Hugging Face. The use cases are related to chatbot automation services.

Use Cases

  • Next Query Recommendation
  • Query Expansion
  • Fallback Reduction

Features

  • Files Upload and Download integrated with s3
  • Services are in a mono repo microservice pattern
  • Temporary and secured access to users for downloading processed files from s3 using presigned urls
  • Dockerized application. Indiviual docker containers for each microservice
  • Nginx Reverse Proxy to ensure security, scalability, flexibilty and web acceleration
  • Microservice specific CI/CD using AWS Codecommit, CodePipeline
  • AWS ECR to store the microservice images in the image repositories
  • AWS EKS Fargate serverless deployment. Microservice specific deployment, service and ingress manifests provided
  • Multipage streamlit application. Easy to add microservice specific streamlit frontend

Requirement

Please add AWS_SECRET_ACCESS_KEY and AWS_ACCESS_KEY_ID in the helpers.py in each indiviual microservice

Installation & Usage

$ git clone  https://github.com/karndeb/Fastapi-Streamlit-NLPService.git
# Use docker compose to start the services
$ docker-compose up
# Start the Streamlit server
$ streamlit run app.py

License

This project is licensed under the GPL-3.0 License - see the LICENSE.md file for details

About

NLP Platform Cookie Cutter Template

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors