Skip to content

Water Quality Chatbot to answer decision questions about water sites around the United States.

Notifications You must be signed in to change notification settings

vnagpal25/Water-Quality-Chatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSCE580 Fall2023 Water Quality Decision Chatbot

To use the chatbot for yourself, follow these instructions:

Rasa Chatbot

How to Use

  1. Launch two shells (can be windows CMD, Ubuntu, etc.)

  2. Create a new virtual environment using conda(works with pip)

conda create --name water_chatbot_venv python=3.7
  1. Ensure that the virtual environment is activated
conda activate water_chatbot_venv
  1. In the terminal run the following command to install the required packages:
pip install -r requirements.txt
  1. Navigate to ./code and run the following command to train the rasa chatbot
rasa train
  1. In the same terminal navigate to ./code/actions and run the following command to start the actions server
rasa run actions
  1. In the other terminal, start the chatbot
rasa shell
  1. Start interacting with the Chatbot. Ask it questions regarding the safety of water data sites. a. See ./data/json/good_data_sites.json for example site names. b. Ask it questions like "fetch me the water data for {site_name}" or "is the water from {site name} safe to drink?". c. Other variations work as well due to the robustness of rasa.

Water Quality Project for CSCE 580: Artificial Intelligence

See ./docs for a detailed report on the project and instructions to reproduce results

See ./code for implementation of chatbot and decision maker in Python

- robust chatbot based on RASA with learning-based decision maker
- see rasa docs for more information

See ./data for all necessary data to run instance of chatbot

- ./data/csv: labeled dataset from Kaggle
- ./data/json: contains all parameter codes and site codes for USGS API
- ./data/model: contains saved SVC model that trained on Kaggle dataset
- ./data/npy: contains BERT vectorized embeddings for site names
- ./data/user_sessions: contains saved conversations from user

See ./test for some example tests of the system working.

About

Water Quality Chatbot to answer decision questions about water sites around the United States.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages