A Natural Language AI chatbot that accepts an input problem, categorizes it and solves it by invoking the relevant custom ML model.
Short project demo on YouTube - https://www.youtube.com/watch?v=KSu2YexyuYQ
- Project Documentation is available here
- Project Poster
- The motivation for our project is to enhance the usability of NLP-based AI chatbots by enabling a plug-and-play mechanism to add user-defined models for custom problems.
- Currently, most chatbots are designed to handle specific use cases and have limited functionality.
- They lack the ability to handle more generic use cases and require significant effort to modify or add functionality.
- Our goal is to create a chatbot with a flexible and extensible architecture that can handle a wide range of use cases and be easily customized to add new models.
- Switcher Model
- Data Collection: A synthetic dataset with 1500 sentences and 5 labels (Audio to Text, Resume Parsing, Blog Summary, Sudoku Solving and Regular Chat) was created by generating 300 variations of each label using GPT.
- Model Training: Model is an ensemble of three ML models: Naive Bayes, basic Neural Network, and Neural Network with LSTM layer. It redirects user requests based on predictions from the models and requests more information if the models are uncertain.
- Model Deployment: The model was then saved to disk and imported in the switcher model as a route for resume parsing problems.
- The data fields are as follow
{ "prompt": "I'm stuck on this Sudoku puzzle. Can you help me out of it?", "category": "suduko" }
- Similarly we have built models for different use cases such as
- Suduko Solver
- Resume Parser
- For Article Summary use-case we have used scraping techniques and passed each subsection to GPT3.5 API that returned a summary of that section. Using these summarized sections, we created a summarized article.
- Move to UI folder
- run
npm i
npm start
- Currently the backend server is deployed on an EC2 instance at this IP - 3.14.131.137
- To prevent high costs, we are not keeping the instance active at all time. In case you need to run the demo, please send us an email and we will spin up the backend instance for you
- Resume Summary
- Suduko Solver
- Article Summary
- Audio To Text
All the files used for testing in present in the "files" folder